Add fedora and alpine release builds

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
Thomas Citharel 2022-04-09 17:46:48 +02:00
parent 086aa0df8b
commit 2917eea50f
No known key found for this signature in database
GPG key ID: A061B9DDE0CA0773
2 changed files with 23 additions and 2 deletions

View file

@ -239,7 +239,7 @@ build-docker-tag:
# Packaging app for amd64
package-app:
image: hexpm/elixir:1.13.4-erlang-24.3.2-${OS}
image: 1.13.4-erlang-24.3.3-${OS}
stage: package
before_script:
- apt-get update && apt-get install -yq build-essential git curl cmake
@ -268,7 +268,7 @@ package-app:
- ${APP_ASSET}
parallel:
matrix:
- OS: ["debian-bullseye-20210902", "debian-buster-20210902", "ubuntu-focal-20211006", "ubuntu-bionic-20210930"]
- OS: ["debian-bullseye", "debian-buster", "ubuntu-focal", "ubuntu-bionic", "fedora-35", "fedora-36", "alpine-3.14.5", "alpine-3.15.3"]
package-app-dev:
stage: package

View file

@ -1,5 +1,26 @@
# Upgrading from 2.0 to 2.1
## Distro-specific packages
Elixir releases are precompiled binaries and are therefore dependent on the host they've been compiled to be compatible with your system (architecture, libc version, …) ([read more](https://hexdocs.pm/mix/Mix.Tasks.Release.html#module-requirements)). For instance, the release build on Debian Bullseye (with libc 2.31) cannot be run on Debian Buster (which only provides libc 2.28). Another example is Red Hat-relative distributions (Fedora, CentOS, …) which have an OpenSSL library version that's not compatible with the version compiled (because of [potential patent issues with Elliptic curves](https://github.com/kerl/kerl#compiling-crypto-on-red-hat-systems)).
In order to make sure the releases package we redistribute , we now build distro-version-specific packages.
The list of packages built for version 2.1.0 with the amd64 (x86_64) architecture is the following:
- Debian Buster (10)
- Debian Bullseye (11)
- Ubuntu Bionic (18.04)
- Ubuntu Focal (20.04)
- Fedora 35
- Fedora 36
- Alpine 3.14.5
- Alpine 3.15.3
As building for non-`amd64` architectures is quite difficult (because of the time and extra resources cross-compiling takes), these architectures are only built against Debian Bullseye (11) at the moment.
We want to expand this list in the future to make sure it covers most uses, so feel free to give us feedback from what you need.
Note: Docker images are also built for `amd64`/`arm`/`arm64` architectures, and of course you can always install Mobilizon from source on pretty much any unix-compatible system.
## Mailer library change
### Docker