Inrixia / Floatplane-Downloader

Project for automatically organizing and downloading Floatplane videos for plex.
https://monitor.spookelton.net/public-dashboards/db0aec66747b4950b01b128916eb737e
GNU Affero General Public License v3.0
157 stars 41 forks source link

add versioning tag to latest docker image #155

Closed traktuner closed 1 year ago

Inrixia commented 1 year ago

Is there a reason behind why having additional tagging would be worth it?

Also if I was to merge this I would probably want to use the commit id rather than the run numbers.

traktuner commented 1 year ago

Hello 👋 Definetely. I work with a big Docker environment, and maintain image versions with Renovate. It checks my repo (full of docker-compose files) and auto-commits new tags (if configured) to that repo. Instead of $github.run_number you could use the long commit SHA as GITHUB_SHA and this would then be your tag.

Inrixia commented 1 year ago

Yes. Also apologies for the duplicate comments github is having a bit of a moment currently.

What's the reasoning behind tagging each commit, afik there isn't really a use case of people needing to target specific versions outside of dev and latest.

traktuner commented 1 year ago

Yes. Also apologies for the duplicate comments github is having a bit of a moment currently.

What's the reasoning behind tagging each commit, afik there isn't really a use case of people needing to target specific versions outside of dev and latest.

In the post before I explained why versioning the releases is a bonus for some people like me. Those automations don't get triggered when a new push to "latest" occurs unfortunately. Latest stays latest. But when there is a versioning for docker tags, then those automations get triggered (-> new major/minor/... Vx.1 or V5.x ... )

If you don't like the idea of versioning tags, feel free to close the PRs.

Inrixia commented 1 year ago

I don't mind the idea. I'm just wondering what practical use they offer.

traktuner commented 1 year ago

I don't mind the idea. I'm just wondering what practical use they offer.

Maybe use the real version of the app for the docker tag? It's in the package.json and could be extracted via SED in the github-action that builds the docker images. That would be the best solution in my opinion.

Inrixia commented 1 year ago

Issue with that is that dev sometimes retains the latest release version as it is not automatically updated.

Using said version numbers would only be useful if people wanted to use older versions of the app. But that's generally a bad idea since most older versions aren't compatible with floatplane api changes.

I do agree about the versioning. I'm just struggling to come up with a use case outside of the one above that would justify the additional tagging.

traktuner commented 1 year ago

Since the dev images are built separately, the tagging that makes sense would be like dev + dev-5.7.0, and for latest only latest + 5.7.0. But you are totally right, I didn't realize that the API changes make "outdated" versions useless most of the time. Don't want to overcomplicate things here...

Inrixia commented 1 year ago

Yea, honestly I may revisit this in the future if a genuine need for older versions becomes useful. But as it stands currently trying to use older versions will at best result in unexpected behavior.

Really appreciate the info though, I'll close these for now but can always come back to them down the line.

Thanks again