veilidchat/.gitlab-ci.yml

129 lines
4.4 KiB
YAML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#variables:
# HOMEBREW_NO_AUTO_UPDATE: 1
stages:
- build
#.macos_saas_runners:
# tags:
# - saas-macos-medium-m1
# image: macos-12-xcode-14
# before_script:
# - echo "started by ${GITLAB_USER_NAME}"
#build_macos:
# extends:
# - .macos_saas_runners
# stage: build
# script:
# - echo "place holder for build"
# - sudo softwareupdate --install-rosetta --agree-to-license
# - git clone https://gitlab.com/veilid/veilid.git ../veilid
#- curl proto =https tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
#- source "$HOME/.cargo/env"
#- brew install capnp cmake wabt llvm protobuf openjdk@17 jq cocoapods
#- cargo install wasm-bindgen-cli wasm-pack cargo-edit
# - wget https://storage.googleapis.com/flutter_infra_release/releases/stable/macos/flutter_macos_arm64_3.13.5-stable.zip
# - unzip flutter_macos_arm64_3.13.5-stable.zip && export PATH="$PATH:`pwd`/flutter/bin"
# - flutter upgrade
# - yes | flutter doctor --android-licenses
# - flutter config --enable-macos-desktop --enable-ios
# - flutter config --no-analytics
# - dart --disable-analytics
# - flutter doctor -v
#- flutter build ipa
#- flutter build appbundle
# only:
# - schedules
build_linux_amd64_bundle:
stage: build
tags:
- saas-linux-medium-amd64
image: ghcr.io/cirruslabs/flutter:3.29.2
script:
- apt-get update
- apt-get install -y --no-install-recommends cmake ninja-build clang build-essential pkg-config libgtk-3-dev liblzma-dev lcov rustup
- rustup toolchain install 1.81 --profile minimal --no-self-update
- flutter config --enable-linux-desktop
- git clone https://gitlab.com/veilid/veilid.git ../veilid
- flutter build linux
artifacts:
paths:
- build/linux/x64/release/bundle/
rules:
- if: '$CI_COMMIT_TAG =~ /v\d.+/'
build_linux_amd64_flatpak:
tags:
- saas-linux-small-amd64
image: ubuntu:24.04
stage: build
dependencies: [build_linux_amd64_bundle]
needs:
- job: build_linux_amd64_bundle
artifacts: true
script:
- apt-get update
- apt-get install -y --no-install-recommends flatpak flatpak-builder gnupg2 elfutils ca-certificates
- flatpak remote-add --no-gpg-verify --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
- flatpak install -y --noninteractive org.gnome.Sdk/x86_64/46 org.gnome.Platform/x86_64/46 app/org.flathub.flatpak-external-data-checker/x86_64/stable org.freedesktop.appstream-glib
- pushd flatpak/
- flatpak-builder --force-clean build-dir com.veilid.veilidchat.yml --repo=repo
- flatpak build-bundle repo com.veilid.veilidchat.flatpak com.veilid.veilidchat
- popd
artifacts:
paths:
- flatpak/com.veilid.veilidchat.flatpak
rules:
- if: '$CI_COMMIT_TAG =~ /v\d.+/'
build_linux_arm64_bundle:
stage: build
tags:
- saas-linux-small-arm64
image: ghcr.io/cirruslabs/flutter:3.29.2
script:
- apt-get update
- apt-get install -y --no-install-recommends cmake ninja-build clang build-essential pkg-config libgtk-3-dev liblzma-dev lcov rustup
- rustup toolchain install 1.81 --profile minimal --no-self-update
- flutter config --enable-linux-desktop
- git clone https://gitlab.com/veilid/veilid.git ../veilid
- flutter build linux
artifacts:
paths:
- build/linux/arm64/release/bundle/
rules:
- if: '$CI_COMMIT_TAG =~ /v\d.+/'
build_linux_arm64_flatpak:
tags:
- saas-linux-small-arm64
image: ubuntu:24.04
stage: build
dependencies: [build_linux_arm64_bundle]
needs:
- job: build_linux_arm64_bundle
artifacts: true
script:
- apt-get update
- apt-get install -y --no-install-recommends flatpak flatpak-builder gnupg2 elfutils ca-certificates
- flatpak remote-add --no-gpg-verify --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
- flatpak install -y --noninteractive org.gnome.Sdk/aarch64/46 org.gnome.Platform/aarch64/46 app/org.flathub.flatpak-external-data-checker/aarch64/stable org.freedesktop.appstream-glib
- pushd flatpak/
- flatpak-builder --force-clean build-dir com.veilid.veilidchat.arm64.yml --repo=repo
- flatpak build-bundle repo com.veilid.veilidchat.flatpak com.veilid.veilidchat
- popd
artifacts:
paths:
- flatpak/com.veilid.veilidchat.flatpak
rules:
- if: '$CI_COMMIT_TAG =~ /v\d.+/'
#test:
# extends:
# - .macos_saas_runners
# stage: test
# script:
# - echo "place holder for test"