Skip to content

.github/workflows: build master branch of RIOT, bump container version - #287

Merged
crasbe merged 2 commits into
RIOT-OS:masterfrom
crasbe:pr/versions
Aug 21, 2026
Merged

.github/workflows: build master branch of RIOT, bump container version#287
crasbe merged 2 commits into
RIOT-OS:masterfrom
crasbe:pr/versions

Conversation

@crasbe

@crasbe crasbe commented Aug 15, 2026

Copy link
Copy Markdown
Contributor

Contribution Description

In my opinion, the build test of the docker containers should always build the latest master branch of RIOT instead of the Release branch, as any changes to the RIOT repository (such as the ones made for #285), are not pulled in for the build test.

Furthermore, I would like to detach the version number of the Docker container from the RIOT release version. This would make it possible to pin the Docker container version in the Releases of RIOT and avoid having to update and backport them when an update in the Docker container happens.

This might require some additional logic in makefiles/docker.inc.mk, but I'll have to check that.

Related Issues

This closes #84.

@crasbe crasbe added enhancement State: waiting for release This PR is ready, but waiting for the upcoming release to happen to avoid CI chaos. labels Aug 15, 2026
@crasbe

crasbe commented Aug 15, 2026

Copy link
Copy Markdown
Contributor Author

Before merging this, I would like some feedback from @maribu especially.

Also, some documentation about how the versioning works would be appropriate.

To be honest, the "release" mechanism isn't ideal either and that could use some optimization. In it's current form, the latest container and the container with the highest version number are always identical, however it would be better to have a dedicated release mechanism to keep the released container untouched. Perhaps by adding a VERSION file and if that is changed with respect to what's already released, a new release is published to the Docker library.

@crasbe crasbe linked an issue Aug 15, 2026 that may be closed by this pull request
4 tasks
@AnnsAnns

Copy link
Copy Markdown
Member

I don't fully understand 2026.08.01

@crasbe

crasbe commented Aug 16, 2026

Copy link
Copy Markdown
Contributor Author

I don't fully understand 2026.08.01

My thought was that the riotdocker might have more minor releases than the RIOT mainline, but on the other hand probably not 😅

@maribu

maribu commented Aug 16, 2026

Copy link
Copy Markdown
Member

Sorry, I'm not really availabe for the next two weeks due to moving.

I'm not sure what the tag here does. It probably was kept in sync with RIOT releases. There might be some doc in the release manager "handbook".

It might not really be needed, though. We pin the compatible container by image hash in docker.inc.mk anyway. I haven't checked if untagged versions will get garbage collected, though; that would of concern. The possibility to bisect with BUILD_IM_DOCKER=1 without having to worry about an older RIOT version no longer compiling with a newer toolchain (because new diagnostics now catch bugs old GCC/clang didn't spot).

@crasbe

crasbe commented Aug 21, 2026

Copy link
Copy Markdown
Contributor Author

So okay, the new procedure is essentially this: The version of the docker container has to be bumped after the release, so that the tag that the last RIOT release uses remains stable and is not "garbage collected".

In the past this worked by accident, but not necessarily by procedure. I've extended the documentation in the README and will try to take care of it for future releases.

@AnnsAnns

Copy link
Copy Markdown
Member

might make sense to mention in the release guide

@crasbe

crasbe commented Aug 21, 2026

Copy link
Copy Markdown
Contributor Author

might make sense to mention in the release guide

Yes, I might feature creep that into RIOT-OS/RIOT#22593

@crasbe crasbe removed the State: waiting for release This PR is ready, but waiting for the upcoming release to happen to avoid CI chaos. label Aug 21, 2026
@crasbe
crasbe added this pull request to the merge queue Aug 21, 2026
Merged via the queue into RIOT-OS:master with commit e1364eb Aug 21, 2026
2 checks passed
@crasbe
crasbe deleted the pr/versions branch August 21, 2026 09:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

The container should have versioning and releases

3 participants