stages: - images - build - release - deploy Build Docker Images: stage: images when: manual only: - master image: registry.gitlab.com/librewolf-community/browser/bsys5/dind # Needed because we aren't using our custom runners here services: - docker:dind variables: DOCKER_HOST: tcp://docker:2375 parallel: matrix: - DISTRO: - debian11 - ubuntu20 - ubuntu22 - mint20 - mint21 - fedora35 - fedora36 - tumbleweed - macos-x86_64 - macos-aarch64 - dind script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD registry.gitlab.com - make docker-$DISTRO - docker push registry.gitlab.com/librewolf-community/browser/bsys5/$DISTRO:latest Build: stage: build when: manual allow_failure: false parallel: matrix: - DISTRO: - debian11 - ubuntu20 - ubuntu22 - mint20 - mint21 - fedora35 - fedora36 - tumbleweed - macos-x86_64 - macos-aarch64 image: registry.gitlab.com/librewolf-community/browser/bsys5/dind tags: - autoscale except: - merge_requests script: - make $DISTRO - echo VERSION=$(cat version) >> variables.env - echo RELEASE=$(cat release) >> variables.env - echo SOURCE_RELEASE=$(cat source_release) >> variables.env - "t=$(cat version)-$(cat source_release) ; grep 1 release ; if [ ! $? ]; then t=$(cat version)-$(cat source_release)-$(cat release); fi; echo FILEVER=$t >> variables.env" artifacts: paths: - librewolf-*.deb - librewolf-*.deb.sha256sum - librewolf-*.rpm - librewolf-*.rpm.sha256sum - librewolf-*.dmg - librewolf-*.dmg.sha256sum reports: dotenv: variables.env Release: stage: release when: manual allow_failure: false image: ubuntu needs: - job: "Build" artifacts: true only: - master except: - merge_requests before_script: - apt-get update - apt-get install -y curl - curl -L --output /usr/local/bin/release-cli "https://release-cli-downloads.s3.amazonaws.com/latest/release-cli-linux-amd64" - chmod +x /usr/local/bin/release-cli script: - | function upload_package() { curl \ --header "JOB-TOKEN: $CI_JOB_TOKEN" \ --upload-file "$1" \ "$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/$1" } upload_package librewolf-$FILEVER.en-US.debian11.x86_64.deb upload_package librewolf-$FILEVER.en-US.debian11.x86_64.deb.sha256sum upload_package librewolf-$FILEVER.en-US.ubuntu20.x86_64.deb upload_package librewolf-$FILEVER.en-US.ubuntu20.x86_64.deb.sha256sum upload_package librewolf-$FILEVER.en-US.ubuntu22.x86_64.deb upload_package librewolf-$FILEVER.en-US.ubuntu22.x86_64.deb.sha256sum upload_package librewolf-$FILEVER.en-US.mint20.x86_64.deb upload_package librewolf-$FILEVER.en-US.mint20.x86_64.deb.sha256sum upload_package librewolf-$FILEVER.en-US.mint21.x86_64.deb upload_package librewolf-$FILEVER.en-US.mint21.x86_64.deb.sha256sum upload_package librewolf-$FILEVER.fc35.x86_64.rpm upload_package librewolf-$FILEVER.fc35.x86_64.rpm.sha256sum upload_package librewolf-$FILEVER.fc36.x86_64.rpm upload_package librewolf-$FILEVER.fc36.x86_64.rpm.sha256sum upload_package librewolf-$FILEVER.tumbleweed.x86_64.rpm upload_package librewolf-$FILEVER.tumbleweed.x86_64.rpm.sha256sum upload_package librewolf-$FILEVER.en-US.mac.x86_64.dmg upload_package librewolf-$FILEVER.en-US.mac.x86_64.dmg.sha256sum upload_package librewolf-$FILEVER.en-US.mac.aarch64.dmg upload_package librewolf-$FILEVER.en-US.mac.aarch64.dmg.sha256sum release: tag_name: "$FILEVER" description: "## LibreWolf bsys5 Release v$FILEVER\n\n- \n\n(Built on GitLab by pipeline [$CI_PIPELINE_ID](https://gitlab.com/librewolf-community/browser/bsys5/-/pipelines/$CI_PIPELINE_ID))" assets: links: - name: Debian 11 (deb) link_type: package url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.debian11.x86_64.deb - name: Debian 11 (sha256sum) link_type: other url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.debian11.x86_64.deb.sha256sum - name: Ubuntu 20 (deb) link_type: package url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.ubuntu20.x86_64.deb - name: Ubuntu 20 (sha256sum) link_type: other url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.ubuntu20.x86_64.deb.sha256sum - name: Ubuntu 22 (deb) link_type: package url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.ubuntu22.x86_64.deb - name: Ubuntu 22 (sha256sum) link_type: other url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.ubuntu22.x86_64.deb.sha256sum - name: Linux Mint 20 (deb) link_type: package url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mint20.x86_64.deb - name: Linux Mint 20 (sha256sum) link_type: other url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mint20.x86_64.deb.sha256sum - name: Linux Mint 21 (deb) link_type: package url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mint21.x86_64.deb - name: Linux Mint 21 (sha256sum) link_type: other url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mint21.x86_64.deb.sha256sum - name: Fedora 35 (rpm) link_type: package url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.fc35.x86_64.rpm - name: Fedora 35 (sha256sum) link_type: other url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.fc35.x86_64.rpm.sha256sum - name: Fedora 36 (rpm) link_type: package url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.fc36.x86_64.rpm - name: Fedora 36 (sha256sum) link_type: other url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.fc36.x86_64.rpm.sha256sum - name: openSUSE Tumbleweed (rpm) link_type: package url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.tumbleweed.x86_64.rpm - name: openSUSE Tumbleweed (sha256sum) link_type: other url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.tumbleweed.x86_64.rpm.sha256sum - name: macOS x86_64 (dmg) link_type: package url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mac.x86_64.dmg - name: macOS x86_64 (sha256sum) link_type: other url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mac.x86_64.dmg.sha256sum - name: macOS aarch64 (dmg) link_type: package url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mac.aarch64.dmg - name: macOS aarch64 (sha256sum) link_type: other url: $CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/librewolf/$FILEVER/librewolf-$FILEVER.en-US.mac.aarch64.dmg.sha256sum Update Repositories: stage: deploy only: - master except: - merge_requests image: curlimages/curl script: - | # FILEVER=$(cat version)-$(cat source_release) ; grep -q 1 release ; if [ ! $? ]; then FILEVER=$(cat version)-$(cat source_release)-$(cat release); fi curl "https://shorsh.de/update_lw_repos.php?version=$FILEVER&log=false&token=$REPO_DEPLOY_TOKEN" echo "Submitted update request to live LibreWolf repositories" body=$(cat <