simulot / immich-go

An alternative to the immich-CLI command that doesn't depend on nodejs installation. It tries its best for importing google photos takeout archives.
GNU Affero General Public License v3.0
1.63k stars 49 forks source link

Add CI with Linting and Testing #142

Closed rodneyosodo closed 8 months ago

rodneyosodo commented 8 months ago

Signed-off-by: Rodney Osodo 28790446+rodneyosodo@users.noreply.github.com

simulot commented 8 months ago

Thanks for this PR. I'm reading documentions on CI. This is new for me

rodneyosodo commented 8 months ago

I thought goreleaser does this by default. This is something similar to how you have attached the binaries to the latest release: https://github.com/simulot/immich-go/releases/tag/0.10.0 . On the CI, I just added the compile check, i.e. everything pushed to the main needs to compile for the different platforms.

simulot commented 8 months ago

Yes, goreleaser does that. I'm wondering if it's possible delegate the binaries build to the CI.

Fine, let's merge the PR. Thanks for your work

rodneyosodo commented 8 months ago

You meant something like this https://github.com/goreleaser/goreleaser/blob/main/.github/workflows/release.yml

When you push, let's say tag v0.11.0, it should kick off ci and generate a release either as a draft before you approve to an actual release