foxgirl-linux/.gitlab-ci.yml
ohfp 8378fcc076 Partial rewrite of build process
Switching to an Arch based build process for easier maintenance and
using specific runners for tasks where that might be necessary.

Right now, parent/child pipelines for somewhat parallel builds for
different architectures / semi-independent pak-builds don't seem to
properly work yet due to `trigger:` not being recognized when it should,
so that's not yet implemented.
2020-03-06 21:17:06 +01:00

84 lines
1.8 KiB
YAML

stages:
- build
- paks
.carch_aarch64: &carch_aarch64
variables:
CARCH: 'aarch64'
.carch_x86_64: &carch_x86_64
variables:
CARCH: 'x86_64'
.main_build_config: &main_build_config
stage: build
script:
- ./scripts/01_arch_build.sh
- ./scripts/02_configure_tarball.sh
artifacts:
name: "Librewolf-${CI_COMMIT_TAG}-${CARCH}"
paths:
- "librewolf*pkg.tar*"
- "LibreWolf.${CARCH}.tar.bz2"
only:
- tags
.flatpak_config: &flatpak_config
stage: paks
artifacts:
name: "Librewolf-${CI_COMMIT_TAG}-Flatpak-${CARCH}"
paths:
- "LibreWolf.${CARCH}.flatpak"
- "${CI_PROJECT_DIR}/librewolf-flatpak-repo"
only:
- tags
script:
- ./flatpak/build_flatpak.sh "${CI_PROJECT_DIR}/LibreWolf.${CARCH}.tar.bz2" "${CI_PROJECT_DIR}/librewolf-flatpak-repo" "${CI_PROJECT_DIR}/LibreWolf.${CARCH}.flatpak"
.appimage_config: &appimage_config
stage: paks
artifacts:
name: "Librewolf-${CI_COMMIT_TAG}-AppImage-${CARCH}"
paths:
- "LibreWolf.${CARCH}.AppImage"
only:
- tags
script:
- ./appimage/build_appimage.sh "${CI_PROJECT_DIR}/LibreWolf.${CARCH}.tar.bz2" "${CI_PROJECT_DIR}/LibreWolf.${CARCH}.AppImage"
build_x86_64:
image: archlinux/base
tags: [x86_64b]
<<: *carch_x86_64
<<: *main_build_config
build_aarch64:
image: registry.gitlab.com/ohfp/manjaro-arm-docker
tags: [aarch64b]
<<: *carch_aarch64
<<: *main_build_config
flatpak_x86_64:
image: ubuntu:18.04
tags: [flat_runner]
<<: *carch_x86_64
<<: *flatpak_config
flatpak_aarch64:
image: arm64v8/ubuntu:18.04
tags: [flat_runner_aarch64]
<<: *carch_aarch64
<<: *flatpak_config
appimage_x86_64:
image: ubuntu:18.04
tags: [x86_64b]
<<: *carch_x86_64
<<: *appimage_config
appimage_aarch64:
image: arm64v8/ubuntu:18.04
tags: [aarch64b]
<<: *carch_aarch64
<<: *appimage_config