-
Notifications
You must be signed in to change notification settings - Fork 3.5k
Use logstash-versions.yml for observabilitySRE stack versions #18375
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
Use logstash-versions.yml for observabilitySRE stack versions #18375
Conversation
🤖 GitHub commentsExpand to view the GitHub comments
Just comment with:
|
|
This pull request does not have a backport label. Could you fix it @donoghuc? 🙏
|
mashhurs
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
ci/observabilitySREsmoke_tests.sh
Outdated
| export FILEBEAT_IMAGE_VERSION="${FILEBEAT_IMAGE_VERSION:-$QUALIFIED_VERSION}" | ||
| # Look up corresponding LOSTASH_STREAM to test against. MAKE SURE TO UDPATE this per branch for example the 9.2 branch in logstash would | ||
| # correspond to the '9.current' key in the logstash-versions.yml file | ||
| LOGSTASH_STREAM=main |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
With this initial step no concern and for the long term it would be great if we can dynamically resolve artifact version (eg: if branch 9.1, consider values of 9.prev or 9.current if matches 9.1)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think ultimately this is going to be a "moving target". IE just recently we had to update 9.1 -> 9.previous 9.2 -> 9.current so computing from branch name wont be possible without an external input. The other thought I had was to centralize this to look up programatically. Perhaps a new section in logstash-versions.yml:
logstash-streams:
"8.19": "8.previous"
"9.1": "9.previous"
"9.2": "9.current"
"main": "9.next"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
computing from branch name wont be possible without an external input
Agree! In the past I had a python script in elastic_integration plugin to check if stream value/artifact-version contains the branch we are running from, if it works for you. Then we moved to matrix because for the elastic_integration case it can be 1:N mapping.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thinking about this more, i actually think we want to track the stream information in the logstash repo (this would only require a single update when a new branch is created I added a commit 1985c4b showing an option for that. The main reason is that we should be able to run the scripts for executing the tests from any branch, there is not really a clean way to determine what the intended target stream is for the current branch. For example, if i raise a PR from a branch called patch-n there is not really any information to reliable determine what target branch/stream of logstash that should be targeted at.
versions.yml
Outdated
| logstash-core: 9.3.0 | ||
| logstash-core-plugin-api: 2.1.16 | ||
| # Logstash stream corresponding to keys in https://github.com/logstash-plugins/.ci/blob/1.x/logstash-versions.yml | ||
| logstash-stream: main |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If this is approved/agreen upon I will update https://github.com/elastic/logstash/blob/main/.github/workflows/bump-logstash.yml to manage this along with logstash version.
mashhurs
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Previously the version of logstash checked in to the logstash repo was used to determine stack version for smoke and acceptance testing of the observabilitySRE artifact. Given the ES/Filebeat containers are subject to a unified release the delay between a logstash version bump and those artifacts being available was causing failures when the smoke/acceptance tests were run. In plugin testing the way we deal with this is to ensure the logstash-versions.yml file is updated when stack components are ready. This commit introduces the use of that pattern to the observabilitySRE artifact testing. The important step will be to set the STACK_VERSION to correspond to the desired stack version. For example the 9.2 logstash branch should look up `9.current`.
1985c4b to
3001241
Compare
|
@jsvd You good with this approach/naming convention? |
jsvd
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor nitpick: please fix the commends that still mention "stream" instead of release track.
Otherwise LGTM
💚 Build Succeeded
History
|
* Use logstash-versions.yml for observabilitySRE stack versions Previously the version of logstash checked in to the logstash repo was used to determine stack version for smoke and acceptance testing of the observabilitySRE artifact. Given the ES/Filebeat containers are subject to a unified release the delay between a logstash version bump and those artifacts being available was causing failures when the smoke/acceptance tests were run. In plugin testing the way we deal with this is to ensure the logstash-versions.yml file is updated when stack components are ready. This commit introduces the use of that pattern to the observabilitySRE artifact testing. The important step will be to set the STACK_VERSION to correspond to the desired stack version. For example the 9.2 logstash branch should look up `9.current`. * track stream in versions.yml * Finalize name/location for versions.yml mapping * better comment (cherry picked from commit d9fda37)
* Use logstash-versions.yml for observabilitySRE stack versions Previously the version of logstash checked in to the logstash repo was used to determine stack version for smoke and acceptance testing of the observabilitySRE artifact. Given the ES/Filebeat containers are subject to a unified release the delay between a logstash version bump and those artifacts being available was causing failures when the smoke/acceptance tests were run. In plugin testing the way we deal with this is to ensure the logstash-versions.yml file is updated when stack components are ready. This commit introduces the use of that pattern to the observabilitySRE artifact testing. The important step will be to set the STACK_VERSION to correspond to the desired stack version. For example the 9.2 logstash branch should look up `9.current`. * track stream in versions.yml * Finalize name/location for versions.yml mapping * better comment (cherry picked from commit d9fda37) # Conflicts: # ci/observabilitySREacceptance_tests.sh # ci/observabilitySREsmoke_tests.sh
|
@Mergifyio backport 9.2 |
✅ Backports have been created
|
* Use logstash-versions.yml for observabilitySRE stack versions Previously the version of logstash checked in to the logstash repo was used to determine stack version for smoke and acceptance testing of the observabilitySRE artifact. Given the ES/Filebeat containers are subject to a unified release the delay between a logstash version bump and those artifacts being available was causing failures when the smoke/acceptance tests were run. In plugin testing the way we deal with this is to ensure the logstash-versions.yml file is updated when stack components are ready. This commit introduces the use of that pattern to the observabilitySRE artifact testing. The important step will be to set the STACK_VERSION to correspond to the desired stack version. For example the 9.2 logstash branch should look up `9.current`. * track stream in versions.yml * Finalize name/location for versions.yml mapping * better comment (cherry picked from commit d9fda37)
…E stack versions (#18401) * Use logstash-versions.yml for observabilitySRE stack versions (#18375) * Use logstash-versions.yml for observabilitySRE stack versions Previously the version of logstash checked in to the logstash repo was used to determine stack version for smoke and acceptance testing of the observabilitySRE artifact. Given the ES/Filebeat containers are subject to a unified release the delay between a logstash version bump and those artifacts being available was causing failures when the smoke/acceptance tests were run. In plugin testing the way we deal with this is to ensure the logstash-versions.yml file is updated when stack components are ready. This commit introduces the use of that pattern to the observabilitySRE artifact testing. The important step will be to set the STACK_VERSION to correspond to the desired stack version. For example the 9.2 logstash branch should look up `9.current`. * track stream in versions.yml * Finalize name/location for versions.yml mapping * better comment (cherry picked from commit d9fda37) # Conflicts: # ci/observabilitySREacceptance_tests.sh # ci/observabilitySREsmoke_tests.sh * Update versions.yml --------- Co-authored-by: Cas Donoghue <[email protected]>
…RE stack versions (#18400) * Use logstash-versions.yml for observabilitySRE stack versions (#18375) * Use logstash-versions.yml for observabilitySRE stack versions Previously the version of logstash checked in to the logstash repo was used to determine stack version for smoke and acceptance testing of the observabilitySRE artifact. Given the ES/Filebeat containers are subject to a unified release the delay between a logstash version bump and those artifacts being available was causing failures when the smoke/acceptance tests were run. In plugin testing the way we deal with this is to ensure the logstash-versions.yml file is updated when stack components are ready. This commit introduces the use of that pattern to the observabilitySRE artifact testing. The important step will be to set the STACK_VERSION to correspond to the desired stack version. For example the 9.2 logstash branch should look up `9.current`. * track stream in versions.yml * Finalize name/location for versions.yml mapping * better comment (cherry picked from commit d9fda37) * Update versions.yml --------- Co-authored-by: Cas Donoghue <[email protected]>
…E stack versions (#18402) * Use logstash-versions.yml for observabilitySRE stack versions (#18375) * Use logstash-versions.yml for observabilitySRE stack versions Previously the version of logstash checked in to the logstash repo was used to determine stack version for smoke and acceptance testing of the observabilitySRE artifact. Given the ES/Filebeat containers are subject to a unified release the delay between a logstash version bump and those artifacts being available was causing failures when the smoke/acceptance tests were run. In plugin testing the way we deal with this is to ensure the logstash-versions.yml file is updated when stack components are ready. This commit introduces the use of that pattern to the observabilitySRE artifact testing. The important step will be to set the STACK_VERSION to correspond to the desired stack version. For example the 9.2 logstash branch should look up `9.current`. * track stream in versions.yml * Finalize name/location for versions.yml mapping * better comment (cherry picked from commit d9fda37) * Update versions.yml --------- Co-authored-by: Cas Donoghue <[email protected]>
Previously the version of logstash checked in to the logstash repo was used to determine stack version for smoke and acceptance testing of the observabilitySRE artifact. Given the ES/Filebeat containers are subject to a unified release the delay between a logstash version bump and those artifacts being available was causing failures when the smoke/acceptance tests were run. In plugin testing the way we deal with this is to ensure the logstash-versions.yml file is updated when stack components are ready. This commit introduces the use of that pattern to the observabilitySRE artifact testing. The important step will be to set the STACK_VERSION to correspond to the desired stack version. For example the 9.2 logstash branch should look up
9.current.closes #18358