BurntSushi / erd

Translates a plain text description of a relational database schema to a graphical entity-relationship diagram.
The Unlicense
1.79k stars 154 forks source link

Publish arm container #114

Closed sdahlbac closed 10 months ago

sdahlbac commented 11 months ago

For people running arm machines, (e.g Mac M1...) it would be helpful if there was an arm version available.

I think it should just be a case of following https://docs.docker.com/build/ci/github-actions/multi-platform/ (but I am not really familiar with the haskell ecosystem, but at least there seems to be a base image available...)

felixvanoost commented 11 months ago

I've been trying to get this working for a while (see my original comment in May and active fork) but have been running into consistent issues with GitHub Actions.

Since GitHub doesn't offer native arm64 runners, the build process relies on emulation via QEMU which can be quite slow. Generally this isn't a big deal, but Haskell seems to download and compile a billion things (I'm also not that familiar with it), causing the runners to either run out of memory or be killed.

The image should build locally without issues, but at the moment I can only think of two ways to get this working here:

felixvanoost commented 11 months ago

I was finally able to get this working via the use of a 3rd-party integration with BuildJet which provides native arm64 runners for the build job. This isn't the most elegant solution but the only reasonable one I could come up with. I'll leave it up to @mmzx to decide whether to merge or not.

mmzx commented 10 months ago

I've just done:

git tag v0.2.2 -f
git push -f --tags

This should trigger the gitlab workflow.