Skip to content

Migrate full-run integration tests from CircleCI to GH Actions except docker push and push of all artifacts #12545

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

Merged
merged 18 commits into from
May 2, 2025

Conversation

k-a-il
Copy link
Contributor

@k-a-il k-a-il commented Apr 22, 2025

Motivation

This PR is part of initiative to migrate from CircleCI to GithubActions. It migrates part of full-run tests to GithubActions. This PR does not include merged artifact uploads or Docker push to registry jobs; they will be added in a separate PR.

Changes

  • Removed parallel coverage runs from service tests that execute on a single runner
  • re-uses Github Action to build community image
  • introduces Github Action to prepare test environment and load docker image from artifacts
  • caching of pip dependencies is done using actions/setup-python@v5

Testing

@k-a-il k-a-il changed the title Install and build jobs for integration tests from CircleCI Full-run integration tests from CircleCI Apr 22, 2025
@k-a-il k-a-il requested a review from silv-io April 22, 2025 13:25
@k-a-il k-a-il added the semver: patch Non-breaking changes which can be included in patch releases label Apr 22, 2025
@k-a-il k-a-il self-assigned this Apr 22, 2025
@k-a-il k-a-il added this to the 4.4 milestone Apr 25, 2025
Copy link

github-actions bot commented Apr 25, 2025

S3 Image Test Results (AMD64 / ARM64)

  2 files  ±0    2 suites  ±0   8m 16s ⏱️ +11s
488 tests ±0  438 ✅ ±0   50 💤 ±0  0 ❌ ±0 
976 runs  ±0  876 ✅ ±0  100 💤 ±0  0 ❌ ±0 

Results for commit c39dbbd. ± Comparison against base commit 4ea4102.

♻️ This comment has been updated with latest results.

Copy link

github-actions bot commented Apr 25, 2025

LocalStack Community integration with Pro

    2 files  ± 0      2 suites  ±0   1h 43m 5s ⏱️ - 11m 15s
4 399 tests +26  4 037 ✅ +21  362 💤 +5  0 ❌ ±0 
4 401 runs  +26  4 037 ✅ +21  364 💤 +5  0 ❌ ±0 

Results for commit 20d7e05. ± Comparison against base commit 4ea4102.

This pull request removes 16 and adds 42 tests. Note that renamed tests count towards both.
tests.aws.services.apigateway.test_apigateway_api.TestApiGatewayApiRestApi ‑ test_create_rest_api_with_custom_id_tag
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_dynamic]
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_parameter_for_condition_create_resource]
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_unrelated_property]
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_unrelated_property_not_create_only]
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_base_mapping_scenarios[update_string_referencing_resource]
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_conditions
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_direct_update
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_dynamic_update
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_execute_with_ref
…
tests.aws.services.apigateway.test_apigateway_common.TestApigatewayRouting ‑ test_routing_with_custom_api_id
tests.aws.services.cloudformation.v2.test_change_set_parameters.TestChangeSetParameters ‑ test_update_parameter_default_value
tests.aws.services.cloudformation.v2.test_change_set_parameters.TestChangeSetParameters ‑ test_update_parameter_default_value_with_dynamic_overrides
tests.aws.services.cloudformation.v2.test_change_set_parameters.TestChangeSetParameters ‑ test_update_parameter_with_added_default_value
tests.aws.services.cloudformation.v2.test_change_set_parameters.TestChangeSetParameters ‑ test_update_parameter_with_removed_default_value
tests.aws.services.cloudformation.v2.test_change_sets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_dynamic]
tests.aws.services.cloudformation.v2.test_change_sets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_parameter_for_condition_create_resource]
tests.aws.services.cloudformation.v2.test_change_sets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_unrelated_property]
tests.aws.services.cloudformation.v2.test_change_sets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_unrelated_property_not_create_only]
tests.aws.services.cloudformation.v2.test_change_sets.TestCaptureUpdateProcess ‑ test_base_mapping_scenarios[update_string_referencing_resource]
…
This pull request removes 14 skipped tests and adds 18 skipped tests. Note that renamed tests count towards both.
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_dynamic]
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_parameter_for_condition_create_resource]
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_unrelated_property]
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_unrelated_property_not_create_only]
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_base_mapping_scenarios[update_string_referencing_resource]
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_conditions
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_direct_update
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_dynamic_update
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_execute_with_ref
tests.aws.services.cloudformation.api.test_changesets.TestCaptureUpdateProcess ‑ test_mappings_with_parameter_lookup
…
tests.aws.services.cloudformation.v2.test_change_set_parameters.TestChangeSetParameters ‑ test_update_parameter_default_value
tests.aws.services.cloudformation.v2.test_change_set_parameters.TestChangeSetParameters ‑ test_update_parameter_default_value_with_dynamic_overrides
tests.aws.services.cloudformation.v2.test_change_set_parameters.TestChangeSetParameters ‑ test_update_parameter_with_added_default_value
tests.aws.services.cloudformation.v2.test_change_set_parameters.TestChangeSetParameters ‑ test_update_parameter_with_removed_default_value
tests.aws.services.cloudformation.v2.test_change_sets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_dynamic]
tests.aws.services.cloudformation.v2.test_change_sets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_parameter_for_condition_create_resource]
tests.aws.services.cloudformation.v2.test_change_sets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_unrelated_property]
tests.aws.services.cloudformation.v2.test_change_sets.TestCaptureUpdateProcess ‑ test_base_dynamic_parameter_scenarios[change_unrelated_property_not_create_only]
tests.aws.services.cloudformation.v2.test_change_sets.TestCaptureUpdateProcess ‑ test_base_mapping_scenarios[update_string_referencing_resource]
tests.aws.services.cloudformation.v2.test_change_sets.TestCaptureUpdateProcess ‑ test_conditions
…
This pull request skips 1 test.
tests.aws.services.cloudformation.v2.test_change_sets ‑ test_single_resource_static_update

♻️ This comment has been updated with latest results.

@k-a-il k-a-il marked this pull request as ready for review April 29, 2025 07:13
@k-a-il
Copy link
Contributor Author

k-a-il commented Apr 29, 2025

I will add a link to a successful run shortly, and then add other codeowners to this PR.

@k-a-il k-a-il changed the title Full-run integration tests from CircleCI Migrate full-run integration tests from CircleCI to GH Actions except docker push and push of all artifacts Apr 29, 2025
Copy link
Member

@silv-io silv-io left a comment

Choose a reason for hiding this comment

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

LGTM in principle! Some awesome ideas in there with the composite actions and more 🥳

I will give the final approval after having looked at the full test runs.

@k-a-il k-a-il requested review from alexrashed and silv-io and removed request for alexrashed May 2, 2025 13:46
Copy link
Member

@silv-io silv-io left a comment

Choose a reason for hiding this comment

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

LGTM! It's very easily readable which I think is very important for pipelines like these 🚀

Only the publishing of the results to the GHA summary would be left now. (Sorry that I came up with that just now :P) However, we can also add that in a follow up.

path: |
target/pytest-junit-integration-${{ env.PLATFORM }}-${{ matrix.group }}.xml
target/.coverage.integration-${{ env.PLATFORM }}-${{ matrix.group }}
retention-days: 30
Copy link
Member

Choose a reason for hiding this comment

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

nit: Just noticed that we will also need to add this here, like we have in ext: https://github.com/EnricoMi/publish-unit-test-result-action so that we can quickly browse the results in the Summary.

We can either add this now or in a follow-up PR. And we'll need that for all test jobs

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I will add this in the follow-up PR

@k-a-il k-a-il merged commit 940aa0a into master May 2, 2025
35 of 38 checks passed
@k-a-il k-a-il deleted the circleci-to-gh-actions-full-run branch May 2, 2025 14:11
simonrw pushed a commit that referenced this pull request May 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
semver: patch Non-breaking changes which can be included in patch releases
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants