Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature | Migrate CircleCI Terratest Pipeline to GitHub Actions #39

Open
exequielrafaela opened this issue Sep 12, 2023 · 0 comments
Open

Comments

@exequielrafaela
Copy link
Member

Describe the Feature:

  • Migrate our current CircleCI Terratest pipeline declared in this file to a GitHub Actions based pipeline.
  • This migration aims to leverage well-maintained GitHub actions for terratest and address issues related to outdated makefiles and docker images in our current CircleCI setup.

Expected Behavior:

A fully functional GitHub Actions based pipeline that runs terratest tests within the repo, replacing the current CircleCI pipeline.

Use Case:

The current CircleCI terratest pipeline has encountered issues, and some components are outdated like makefiles:

And docker images:

Migrating to GitHub Actions, which offers well-maintained actions for terratest, can provide a more robust and up-to-date testing environment.

Describe Ideal Solution:

  1. Integrate the cloudposse/github-action-terratest action into our repository.
  2. Replace all CircleCI specific configurations with GitHub Actions configurations.
  3. Ensure all tests run successfully in the new GitHub Actions pipeline.
  4. Update documentation to reflect the change from CircleCI to GitHub Actions.

Alternatives Considered:

  1. Fixing the current CircleCI terratest pipeline.
  2. Exploring other GitHub Actions for terratest or other CI/CD platforms.

Additional Context:

  • The cloudposse/github-action-terratest action was suggested as a potential solution. It's relatively new but could be a good alternative to our current CircleCI setup.
  • There's a need to evaluate this action thoroughly before full integration.
  • If complications arise in fixing our current CircleCI terratest pipeline, this migration could be a viable alternative.

Ref Material

Valuable Considerations from Articles:

  • Terratest should not just validate resource creation but should provide deeper insights into the functionality of our Terraform code.
  • It's essential to check the interconnectivity between separate resources within our module.
  • Custom conditional logic in Terraform modules can simplify module usage and ensure consistent behavior.
  • Terratest is vital for testing this custom logic, especially when the module undergoes updates or changes.
  • Efficient testing workflows are crucial. Building tests progressively can reduce the runtime of our Terratest stage.
  • Integrating Terratest into our testing pipeline ensures consistent scrutiny of our modules' functionality.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant