Skip to content

Improvements to act-based testing #397

@xnyo

Description

@xnyo

#389 switches the smoke test system from using GitHub Actions directly to running act inside GitHub Actions. This allows us to write Go tests and run assertions on the workflows that are normally not possible or complicated to achieve via yaml files.

We can further improve act-based testing with some additional features:

  • Parsing of GHA commands, annotations, outputs, etc, in order to run assertions on them
  • Stronger assertions in the smoke tests (e.g.: CI output) rather than just asserting on success/failure
  • Mock GCS for testing uploading to GCS (which is required for GCOM catalog publishing)
  • Mock GCOM for testing catalog publishing steps
  • Mock Vault access for testing accessing to Vault
  • Mock Argo workflow triggers for testing CD
  • Mock "Build and test" plugins in anything that doesn't test building or testing the plugin, to speed up act test runs ("Build and test" is the slowest job apart from Playwright)
  • Introduce caching mechanism for the nektos/act docker image and act tooling docker volume to speed up execution

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requestgithub_actionsPull requests that update GitHub Actions code

Type

No type

Projects

Status

🧑‍💻 In development

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions