Repository navigation
build: refresh 0.2 service versions and startup compatibility - #84
alexlovelltroy wants to merge 1 commit into
Conversation
Signed-off-by: Alex Lovell-Troy <alovelltroy@lanl.gov>
davidallendj
left a comment
There was a problem hiding this comment.
Here are some things I saw after testing:
- Keep TokenSmith’s signing key when it restarts
Testing showed that TokenSmith creates a new signing key on restart, even though its storage is preserved. This can cause previously issued tokens to stop working.
I think it would be better if the packaged setup creates a key on first installation and keeps using that key after restarts and upgrades.
- Explain the current known problems in the docs
I think it's worth explaining some the problems found during testing in the documentation, such as:
- Some boot/metadata APIs accept requests without a valid login token.
- Metadata’s WireGuard-only restriction can be bypassed using certain request headers.
- Reusing an old refresh token does not disable its replacement as documented.
- TokenSmith writes complete access tokens into its logs.
These problems don't have to be fixed in this PR, but I do think it's worth noting them with links to upstream issues where possible.
- Show what was tested with instructions and results
It's probably worth including clear instructions or results showing that the updated services start, work together, and keep their saved data after restarting.
Also I think we should say which tests need special configuration and which workflows are not tested. I don't think that tests that pass only with a workaround should be described as passing with the packaged defaults.
Confirmed. If you use --key-file, it doesn't do this. Adding issue on Tokensmith to get it addressed. OpenCHAMI/tokensmith#81 |
I don't know how much of this is still true. Do you have reproducers for them? |
|
/deploy |
|
Deployment queued for SHA: a3ee831. |
|
/deploy |
|
Deployment queued for SHA: a3ee831. |
|
For what it is worth, the above workflow deployment of this PR successfully deployed OpenCHAMI and booted 4 managed nodes, so there do not appear to be any obvious regressions. |
Do you have a link to the successful run? |
Description
This pull request updates the documentation, systemd container definitions, validation policies, and packaging to support new patch versions of several core services, including
boot-service,metadata-service,TokenSmith, andCoreSMD. It also introduces a new service update and upgrade guide to help with deployments. The changes ensure that the system uses the latest tested service versions and provides clear instructions for safe rollout and rollback.Service version updates and configuration:
boot-service(v0.3.3),metadata-service(v0.2.2),TokenSmith(v0.4.2), andCoreSMD(v0.7.2) in their respective systemd container files to reflect the latest tested releases. (systemd/containers/boot-service.container,systemd/containers/metadata-service.container,systemd/containers/tokensmith.container,systemd/containers/coresmd-coredhcp.container,systemd/containers/coresmd-coredns.container) [1] [2] [3] [4] [5]release-v1.jsonvalidation policy and endpoint validation documentation to reference and check the new service versions. (validation/policies/release-v1.json,docs/endpoint-validation.md) [1] [2] [3] [4]Documentation improvements:
docs/service-updates.mdguide detailing the upgrade process, service-specific notes, qualification steps before rollout, and rollback procedures for the 0.2.x patch line. (docs/service-updates.md)README.mdto reference the new service update and upgrade guide, ensuring users review it before updating deployments. (README.md)Packaging updates:
docs/service-updates.mdas part of the packaged documentation in the RPM spec file. (openchami.spec)Other improvements:
Execcommand for thetokensmithcontainer to match the new image entrypoint (serve --enable-local-user-mint). (systemd/containers/tokensmith.container)Checklist
make test(or equivalent) locally and all tests passgit commit -s) with my real name and email<filename>.licensesidecarLICENSES/directoryType of Change