-
Notifications
You must be signed in to change notification settings - Fork 3
feat: automatic Splunk version discovery #214
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
Changes from all commits
Commits
Show all changes
18 commits
Select commit
Hold shift + click to select a range
301cb5e
docs: add design spec for automatic Splunk version discovery
mkolasinski-splunk 22a852e
docs: add implementation plan for Splunk auto-discovery
mkolasinski-splunk 79c3237
feat: add Splunk version discovery functions
mkolasinski-splunk c5df44c
feat: add lifecycle page scraper for SUPPORTED dates
mkolasinski-splunk 9658aa7
feat: add new Splunk version stanza creation
mkolasinski-splunk 9a90323
test: assert BUILD field and return value in add_new_version_stanza t…
mkolasinski-splunk 40172f8
feat: add version expiry pruning and GENERAL section sync
mkolasinski-splunk 069b62a
feat: wire auto-discovery into update_splunk_version orchestrator
mkolasinski-splunk 170684b
test: assert BUILD field updated in orchestration integration test
mkolasinski-splunk 15dcaef
fix: add version boundary to lifecycle regex and improve test coverage
mkolasinski-splunk 4ef1ac8
fix: correct lifecycle page parser to use table structure and abbrevi…
mkolasinski-splunk 81fa7bc
style: apply black formatting
mkolasinski-splunk a1a8a6e
fix: reject UNKNOWN EOL dates and prune on exact EOL day
mkolasinski-splunk d5d68fd
chore: remove plan and spec docs from branch
mkolasinski-splunk 0832c80
ci: add pytest job to main workflow
mkolasinski-splunk 30516e3
fix: require BUILD hash before writing new stanza; fix expiring test …
mkolasinski-splunk 1ae5672
fix: exit 1 when new Docker Hub version has no EOL date
mkolasinski-splunk ed1f57c
style: apply black formatting
mkolasinski-splunk File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| pytest |
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,2 +1,3 @@ | ||
| requests | ||
| packaging | ||
| urllib3>=1.26.0,<2.0.0 |
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
Oops, something went wrong.
Oops, something went wrong.
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.
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.
When
get_supported_date()returnsUNKNOWNfor a scrape/network failure or an unlisted version, this still commits a new stanza withSUPPORTED = UNKNOWN. The Docker action consumer does not accept that value:_generate_supported_splunk()inaddonfactory_test_matrix_action/main.pyunconditionally runsdatetime.strptime(supported_splunk_string, "%Y-%m-%d"), so any weekly auto-discovery PR that adds such a stanza will make the action crash for all workflows reading the matrix. This is especially likely because the current Splunk policy page uses dates likeMay 18 2028rather than the comma format the scraper expects.Useful? React with 👍 / 👎.
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.
Fixed in commit a1a8a6e.
add_new_version_stanzanow returnsFalseimmediately whenget_supported_datereturnsUNKNOWN— no stanza is written, so the consumer's unconditionalstrptimecan never receive an invalid value.The skip condition was also tightened to
eol_date <= today(i.e. reject on the EOL day itself) to align withmain.py'stoday >= eolcheck. The test that previously asserted the stanza was added withSUPPORTED = UNKNOWNhas been renamed and flipped to assert it is skipped; two new boundary-day tests were added.