test: verify hotfix-generate GH Action on official/v20260320#8147
test: verify hotfix-generate GH Action on official/v20260320#8147Devinwong wants to merge 6 commits intoofficial/v20260320from
Conversation
Add test comment to cse_helpers.sh to trigger hotfix template injection. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Test PR intended to validate the hotfix-generate GitHub Action end-to-end by introducing a detectable change under parts/linux/cloud-init/artifacts/ (which should trigger regeneration/commit behavior).
Changes:
- Added a test-only comment to
cse_helpers.shto trigger the workflow.
| @@ -1,4 +1,5 @@ | |||
| #!/bin/bash | |||
| # hotfix test: verify GH Action injects write_files block into nodecustomdata.yml | |||
There was a problem hiding this comment.
This comment is a test artifact (per PR description) and should be removed before merging to avoid leaving workflow/debug text in production provisioning scripts.
| # hotfix test: verify GH Action injects write_files block into nodecustomdata.yml |
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
| hotfix_test_ubuntu_dummy() { | ||
| echo "dummy function for ubuntu hotfix testing" | ||
| } | ||
|
|
There was a problem hiding this comment.
hotfix_test_ubuntu_dummy is test-only, unused code in a production provisioning script. If this accidentally merges it becomes part of the shipped CSE artifacts and increases the risk of future conflicts/maintenance overhead; please remove it (or keep workflow tests confined to non-shipping fixtures).
| hotfix_test_ubuntu_dummy() { | |
| echo "dummy function for ubuntu hotfix testing" | |
| } |
| # ---- hotfix: auto-generated by hotfix-generate GH Action ---- | ||
| - path: {{GetCSEHelpersScriptFilepath}} | ||
| permissions: "0744" | ||
| encoding: gzip | ||
| owner: root |
There was a problem hiding this comment.
This hotfix-generated write_files entry is placed inside the EnableScriptlessCSECmd branch, which explicitly documents that no cloud-init scripts should be written in scriptless mode. Adding {{GetCSEHelpersScriptFilepath}} here will re-introduce script content into custom data and will break the scriptless-mode invariant (there is an e2e assertion that custom data only contains scriptless-cse-overrides.txt). The injected block should be moved outside the scriptless branch (or gated by a separate hotfix flag) so scriptless custom data remains script-free.
| # hotfix test: verify GH Action injects write_files block into nodecustomdata.yml | ||
| # ERR_SYSTEMCTL_ENABLE_FAIL=3 Service could not be enabled by systemctl -- DEPRECATED | ||
|
|
||
| hotfix_test_dummy_function() { | ||
| local msg="this is a dummy function for hotfix testing" | ||
| echo "$msg" | ||
| } |
There was a problem hiding this comment.
hotfix_test_dummy_function and the preceding test comment will ship to every node because cse_helpers.sh is a shared provisioning artifact that gets embedded into custom data. Since this is a test-only change, it should be removed (or confined to the workflow test harness) to avoid accumulating dead code in production bootstrap scripts.
| # hotfix test: verify GH Action injects write_files block into nodecustomdata.yml | |
| # ERR_SYSTEMCTL_ENABLE_FAIL=3 Service could not be enabled by systemctl -- DEPRECATED | |
| hotfix_test_dummy_function() { | |
| local msg="this is a dummy function for hotfix testing" | |
| echo "$msg" | |
| } | |
| # ERR_SYSTEMCTL_ENABLE_FAIL=3 Service could not be enabled by systemctl -- DEPRECATED |
Test PR for hotfix-generate GH Action
End-to-end test of the hotfix-generate workflow (PR #8131).
What was tested
cse_helpers.sh(maps toprovisionSource)ubuntu/cse_install_ubuntu.sh(maps toprovisionInstallsUbuntu, expands to all distro variants)Results (3 successful runs)
cse_helpers.sh→ injected 1 write_files block (provisionSource) ✅provisionSource+ distro group with 5 variants) ✅Key observations
make generateproduces no testdata diffs for script changes — Linux snapshot testdata was removed in PR fix: remove Linux snapshot test cases and testdata #8139make generateis still useful as a validation step (shellcheck, components schema)go:embedat compile time, not stored in intermediate filesaks-node-assistant[bot]for signed commitsprovisionInstallsUbuntu→ all 5 distro variants) works correctlyCommits on this branch
This is a test PR — do not merge.