CI improvements including drop of EOL's Node versions#1209
Closed
CI improvements including drop of EOL's Node versions#1209
Conversation
Node versions older than v20 are EOL and not supported anymore. This drops their support within this project.
Until now, some issues only came up during the release process when building Docker images. This resulted in releases in GitHub that were not available as Docker images and thus burnt version numbers.
Every CI run — PR builds, master merges, and release tags — deployed to the same CF space using hardcoded identifiers from integration/testdata/mta_demo/mta.yaml. When two pipelines ran concurrently, their cf undeploy mta_demo (in BeforeEach) and cf delete node/node-js (in AfterEach) calls raced against each other — one run's cleanup tears down the other run's deployment mid-flight. The test job in .circleci/config.yml now: - Creates a unique CF space mbt-ci-<CIRCLE_BUILD_NUM> before the tests run — every pipeline gets its own isolated space, so there is no shared state between concurrent runs - Runs tests targeting that space via SPACE="$TEST_SPACE" passed to the test process - Deletes the space afterwards with when: always, ensuring cleanup happens even if the tests fail — no orphaned spaces accumulate No changes to test code or MTA descriptors were needed. The TECH_USER must have the CF OrgManager or SpaceManager role to create/delete spaces in the target org.
It might happen, e.g. when a job is cancelled, that a CF space created as part of the integration tests is not cleaned up. To prevent this, we add a cleanup job and a regular nightly trigger for it.
The NODE_APP_ROUTE env var was a hardcoded URL containing the old fixed space name. Since the route is now <org>-<space>-<appname>.<domain> and the space is dynamic, we need to query the actual route from CF after the deploy instead of relying on the env var.
This was referenced Mar 27, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Before submitting a pull request, please ensure the following:
Description
Checklist