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

test(modules): implement first tests of this repo #30

Merged
merged 93 commits into from
Apr 19, 2024

Conversation

leiicamundi
Copy link
Contributor

@leiicamundi leiicamundi commented Apr 10, 2024

Description

This pull request introduces testing for the modules, covering the following scenarios:

  • Standard EKS values
  • Upgrade of an EKS cluster
  • Integration of EKS and RDS with custom values

The tests are organized into dedicated test suites and can be run in parallel using a separate copy of the module folder. By default, resources are cleaned up at the end of the tests.

Automation:

  • A nightly cleanup of cloud resources is scheduled for 5 AM every day.
  • Tests are triggered in the CI pipeline upon pull request approval and on-demand. Additionally, they run every Tuesday at 2 AM.

Please note that tests may take a considerable amount of time and may occasionally fail depending on available AWS resources.

Note: To initiate tests, the pull request must be labeled with "testing-allowed". Otherwise, tests will not be launched and will be marked as failed. Either "testing-allowed" or "testing-ci-not-necessary" labels must be added, the last one allows to skip tests.

Known Limitations

  • Due to a maximum policy on Elastic IPs, tests cannot be run in parallel. (not for multiple workflows but works for a single workflow with multiple tests in //)
  • IRSA integration is not included in this PR. Proper setup of ServiceAccounts, etc., would be required. If deemed relevant, we can add it in subsequent iterations.

Also implement https://github.com/camunda/team-infrastructure-experience/issues/160

skip-tests:TestUpgradeEKSTestSuite,TestCustomEKSRDSTestSuite
skip-tests:TestUpgradeEKSTestSuite,TestCustomEKSRDSTestSuite
skip-tests:TestUpgradeEKSTestSuite,TestCustomEKSRDSTestSuite
@leiicamundi leiicamundi added the testing-ci-not-necessary Use this label when the PR should be merged without integration tests label Apr 17, 2024
@leiicamundi
Copy link
Contributor Author

Hello! Quick update from the last time:

  • The renovate configuration now handles correctly .tool-versions and justfile
  • The KMS test was failing due to the absence of pagination, this is now fixed
  • The labels are not used anymore for triggering tests, instead we use paths: list in the workflow definition.

The latest CI tests are available at : https://github.com/camunda/camunda-tf-eks-module/actions/runs/8711829425
The changes are now ready to be reviewed! Thank in advance ;)

PS: the renovate config is redundant across repositories, this is something we could consolidate in an single repo.

@leiicamundi leiicamundi removed the testing-ci-not-necessary Use this label when the PR should be merged without integration tests label Apr 17, 2024
README.md Outdated Show resolved Hide resolved
Copy link
Member

@Langleu Langleu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with the renovate config part but afaik you've created a ticket already 👍 .
Looks good from my side, tests are green! In case of failure a bit more detail is printed to actually debug it.
Renovate we had a look earlier and it captured all the versions 🚀.

For now I think it's fine to capture all renovate updates in a single PR. If we notice it makes sense to split, we can still do so later.

@leiicamundi leiicamundi added testing-ci-not-necessary Use this label when the PR should be merged without integration tests and removed testing-ci-not-necessary Use this label when the PR should be merged without integration tests labels Apr 17, 2024
Copy link
Member

@maxdanilov maxdanilov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thank you! Just one last comment about the .tool-versions sorting, but can be merged after that.

.tool-versions Show resolved Hide resolved
@leiicamundi leiicamundi added the testing-ci-not-necessary Use this label when the PR should be merged without integration tests label Apr 19, 2024
@leiicamundi leiicamundi removed the testing-ci-not-necessary Use this label when the PR should be merged without integration tests label Apr 19, 2024
@leiicamundi leiicamundi enabled auto-merge April 19, 2024 14:40
@leiicamundi
Copy link
Contributor Author

leiicamundi commented Apr 19, 2024

Thanks @maxdanilov and @Langleu for the final review, I've removed the autosort of .tool-versions and replaced it by a warning.
The CI is running again and then it will be merged!

Copy link
Member

@maxdanilov maxdanilov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thank you! 🚀

@leiicamundi leiicamundi disabled auto-merge April 19, 2024 15:03
@leiicamundi leiicamundi enabled auto-merge (squash) April 19, 2024 15:03
@leiicamundi leiicamundi merged commit df1693d into main Apr 19, 2024
7 checks passed
@leiicamundi leiicamundi deleted the feature/test-aurora branch April 19, 2024 15:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants