Skip to content
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

Publish Docker tags with semver #1628

Open
bdovaz opened this issue Feb 9, 2025 · 8 comments
Open

Publish Docker tags with semver #1628

bdovaz opened this issue Feb 9, 2025 · 8 comments
Labels
bug Something isn't working

Comments

@bdovaz
Copy link

bdovaz commented Feb 9, 2025

For example, alpine tags are published in the format: sha-7c4b132-alpine.

This makes it impossible to make it work with renovate.

Are commit hashes supported?
No, Renovate ignores Docker image tags that look like a Git commit hash.

Why is it not published in semver format (like on github releases)? For example: 0.18.0-alpine.

Thanks.

@mre
Copy link
Member

mre commented Feb 10, 2025

We used to publish tagged versions. E.g. see 0.15.1-alpine.

Currently, the pipeline seems to be broken.

We listen on releases in the Docker pipeline (see here), but there are no release builds at the moment.

I didn't find the time to look into it, but if you know how to fix it, a pull request would be greatly appreciated.

We tried to fix it in #1568
Also see #1432

@eread fyi

@mre mre added the bug Something isn't working label Feb 10, 2025
@mre
Copy link
Member

mre commented Feb 10, 2025

We use release-plz, so our process is a bit different: Rust release binaries get automatically created; the problem is, that it doesn't trigger the Docker build on release tags. It's important that the Docker build runs after release-plz has finished, because it depends on the release binaries. That's the tricky part.

Here's the release-plz pipeline:
https://github.com/lycheeverse/lychee/blob/master/.github/workflows/release-plz.yml

@marcoieni, maybe you came across this issue before?

@marcoieni
Copy link

No, I haven't. Couldn't you build the docker image after you build the binary (in the same workflow file)

@eread
Copy link
Contributor

eread commented Feb 11, 2025

@marcoieni @bdovaz @mre This commit was added to the repo: a94a712, but there hasn't been a release since then to see if it makes the difference.

@mre
Copy link
Member

mre commented Feb 11, 2025

Oh right, let's release a new version then to see if it works.

@bdovaz
Copy link
Author

bdovaz commented Feb 11, 2025

The 0.18.1 has been released and I see that it still doesn't have the tags right:

https://hub.docker.com/r/lycheeverse/lychee/tags

@mre
Copy link
Member

mre commented Feb 11, 2025

Didn't work. It only built latest and master.
So it doesn't trigger a proper release build.

I triggered this Docker workflow run manually with the lychee-v0.18.1 tag:
https://github.com/lycheeverse/lychee/actions/runs/13265745175

The first attempt failed, because the release binaries didn't exist.
After 'Release Binary' was finished (https://github.com/lycheeverse/lychee/actions/runs/13265682405), I triggered it again, and it still didn't work. It still did not use the release name from the tag (e.g. if the tag is lychee-0.18.1). I was hoping that it would pick that up, but it didn't.

So I see two more required changes:

  • we have to trigger the Docker build workflow after the 'Release Binary' workflow.
  • we have to adjust the Docker image tags. My hope is that we can strip the lychee- prefix for that.

I've created #1631 to try and fix those issues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants