immich icon indicating copy to clipboard operation
immich copied to clipboard

ci: Provide geonames database as GitHub release asset

Open jvanbruegge opened this issue 1 year ago • 10 comments

As discussed on Discord, this adds an archive containing the geonames database at the time of release as release asset. This is useful for reproducible builds such as on NixOS.

jvanbruegge avatar Jul 06 '24 10:07 jvanbruegge

It does not quite matter if it is the same version as in the weekly container build, more that there is one fixed version per release

jvanbruegge avatar Jul 06 '24 10:07 jvanbruegge

I didn't realise you wanted to do this in this repo, I don't like the idea of duplicating this script over here really, we now have to maintain this in two places

zackpollard avatar Jul 06 '24 10:07 zackpollard

I could make it a script in the base-image repo and download that in this workflow instead

jvanbruegge avatar Jul 06 '24 10:07 jvanbruegge

I fixed that now. The script that downloads the geodata is in this PR: https://github.com/immich-app/base-images/pull/79 Here, the CI just downloads and executes that scripts and zips the folder. No more code duplication.

Note that this workflow will only work once the other PR is merged

jvanbruegge avatar Jul 06 '24 13:07 jvanbruegge

This isn't even right though. This is probably not what is actually included in the release.

Yea, I think I have similar feelings, if we are going to publish these in the release they should be the actual ones we bundle in the release.

zackpollard avatar Jul 06 '24 16:07 zackpollard

If the goal is to just have a reproducible download, they can be added to git in a separate repository outside of immich. If we're going to attach them to the release, I would recommend just adding them to the base image release itself.

jrasm91 avatar Jul 06 '24 17:07 jrasm91

ok, now this is indeed saving the exact version that is also in the release docker container. I tested it in my fork and it works: https://github.com/jvanbruegge/immich/actions/runs/9821421416/job/27117067837 https://github.com/jvanbruegge/immich/releases/tag/v1.108.0

jvanbruegge avatar Jul 06 '24 18:07 jvanbruegge

Will take a look at this on Monday and merge it in if all looks good! 🙂

zackpollard avatar Jul 06 '24 19:07 zackpollard

Is there anything still to do here for me?

jvanbruegge avatar Jul 15 '24 07:07 jvanbruegge

Hey, apologies for the silence on this. I'll give you as brief of an update as I can for now.

Essentially there are two issues here. 1.) We don't really want to have this linking between the repos that this introduces, we would prefer that this artifact is included as part of the base-image releases, though we don't currently create github releases for these. 2.) We are currently looking into overhauling the reverse geocoding and providing the option of a system with much improved accuracy. This will require a bunch more files to be created and stored, so it may completely overhaul the way we currently include the geonames data too, as the systems are related.

Basically, if we were to merge something like this, it would need to exist entirely within the base-images solution, but we are hesitant on that too right now due to the fact this may all change and potentially live in a separate repository pretty soon anyway, so don't want to add something that may immediately be changed. If that happens there will likely be automated releases for all this stuff included within that repo anyway.

zackpollard avatar Jul 15 '24 12:07 zackpollard

Ok, for the nix build I now used the internet archive as a stopgap solution until your new system is in place

jvanbruegge avatar Jul 25 '24 22:07 jvanbruegge