Skip to content

ls: Build and Publish Nightly Packages #201

ls: Build and Publish Nightly Packages

ls: Build and Publish Nightly Packages #201

name: 'ls: Build and Publish Nightly Packages'
on:
schedule:
- cron: "0 1 * * *"
workflow_dispatch:
inputs:
gelpkg_ref:
description: "gel-pkg git ref used to build the packages"
default: "master"
metapkg_ref:
description: "metapkg git ref used to build the packages"
default: "master"
push:
branches:
- nightly
jobs:
prep:
runs-on: ubuntu-latest
outputs:
if_linux_x86_64: ${{ steps.scm.outputs.if_linux_x86_64 }}
if_linux_aarch64: ${{ steps.scm.outputs.if_linux_aarch64 }}
if_linuxmusl_x86_64: ${{ steps.scm.outputs.if_linuxmusl_x86_64 }}
if_linuxmusl_aarch64: ${{ steps.scm.outputs.if_linuxmusl_aarch64 }}
if_macos_x86_64: ${{ steps.scm.outputs.if_macos_x86_64 }}
if_macos_aarch64: ${{ steps.scm.outputs.if_macos_aarch64 }}
steps:
- uses: actions/checkout@v4
- name: Determine SCM revision
id: scm
shell: bash
run: |
rev=$(git rev-parse HEAD)
jq_filter='.packages[] | select(.basename == "gel-ls") | select(.architecture == $ARCH) | .version_details.metadata.scm_revision | . as $rev | select(($rev != null) and ($REV | startswith($rev)))'
key="linux-x86_64"
val=true
idx_file=x86_64-unknown-linux-gnu.nightly.json
url=https://packages.edgedb.com/archive/.jsonindexes/$idx_file
tmp_file="/tmp/$idx_file"
if [ ! -e "$tmp_file" ]; then
curl --fail -o $tmp_file -s $url || true
fi
if [ -e "$tmp_file" ]; then
out=$(< "$tmp_file" jq -r --arg REV "$rev" --arg ARCH "x86_64" "$jq_filter")
if [ -n "$out" ]; then
echo "Skip rebuilding existing ${key}"
val=false
fi
fi
echo if_${key//-/_}="$val" >> $GITHUB_OUTPUT
key="linux-aarch64"
val=true
idx_file=aarch64-unknown-linux-gnu.nightly.json
url=https://packages.edgedb.com/archive/.jsonindexes/$idx_file
tmp_file="/tmp/$idx_file"
if [ ! -e "$tmp_file" ]; then
curl --fail -o $tmp_file -s $url || true
fi
if [ -e "$tmp_file" ]; then
out=$(< "$tmp_file" jq -r --arg REV "$rev" --arg ARCH "aarch64" "$jq_filter")
if [ -n "$out" ]; then
echo "Skip rebuilding existing ${key}"
val=false
fi
fi
echo if_${key//-/_}="$val" >> $GITHUB_OUTPUT
key="linuxmusl-x86_64"
val=true
idx_file=x86_64-unknown-linux-musl.nightly.json
url=https://packages.edgedb.com/archive/.jsonindexes/$idx_file
tmp_file="/tmp/$idx_file"
if [ ! -e "$tmp_file" ]; then
curl --fail -o $tmp_file -s $url || true
fi
if [ -e "$tmp_file" ]; then
out=$(< "$tmp_file" jq -r --arg REV "$rev" --arg ARCH "x86_64" "$jq_filter")
if [ -n "$out" ]; then
echo "Skip rebuilding existing ${key}"
val=false
fi
fi
echo if_${key//-/_}="$val" >> $GITHUB_OUTPUT
key="linuxmusl-aarch64"
val=true
idx_file=aarch64-unknown-linux-musl.nightly.json
url=https://packages.edgedb.com/archive/.jsonindexes/$idx_file
tmp_file="/tmp/$idx_file"
if [ ! -e "$tmp_file" ]; then
curl --fail -o $tmp_file -s $url || true
fi
if [ -e "$tmp_file" ]; then
out=$(< "$tmp_file" jq -r --arg REV "$rev" --arg ARCH "aarch64" "$jq_filter")
if [ -n "$out" ]; then
echo "Skip rebuilding existing ${key}"
val=false
fi
fi
echo if_${key//-/_}="$val" >> $GITHUB_OUTPUT
key="macos-x86_64"
val=true
idx_file=x86_64-unknown-linux-gnu.nightly.json
url=https://packages.edgedb.com/archive/.jsonindexes/$idx_file
tmp_file="/tmp/$idx_file"
if [ ! -e "$tmp_file" ]; then
curl --fail -o $tmp_file -s $url || true
fi
if [ -e "$tmp_file" ]; then
out=$(< "$tmp_file" jq -r --arg REV "$rev" --arg ARCH "x86_64" "$jq_filter")
if [ -n "$out" ]; then
echo "Skip rebuilding existing ${key}"
val=false
fi
fi
echo if_${key//-/_}="$val" >> $GITHUB_OUTPUT
key="macos-aarch64"
val=true
idx_file=aarch64-unknown-linux-gnu.nightly.json
url=https://packages.edgedb.com/archive/.jsonindexes/$idx_file
tmp_file="/tmp/$idx_file"
if [ ! -e "$tmp_file" ]; then
curl --fail -o $tmp_file -s $url || true
fi
if [ -e "$tmp_file" ]; then
out=$(< "$tmp_file" jq -r --arg REV "$rev" --arg ARCH "aarch64" "$jq_filter")
if [ -n "$out" ]; then
echo "Skip rebuilding existing ${key}"
val=false
fi
fi
echo if_${key//-/_}="$val" >> $GITHUB_OUTPUT
build-linux-x86_64:
runs-on: ['self-hosted', 'linux', 'x64']
needs: prep
if: needs.prep.outputs.if_linux_x86_64 == 'true'
steps:
- name: Build
uses: docker://ghcr.io/geldata/gelpkg-build-linux-x86_64:latest
env:
PACKAGE: "edgedbpkg.edgedb_ls:EdgeDBLanguageServer"
SRC_REF: "${{ github.sha }}"
PKG_REVISION: "<current-date>"
PKG_SUBDIST: "nightly"
PKG_PLATFORM: "linux"
PKG_PLATFORM_VERSION: "x86_64"
EXTRA_OPTIMIZATIONS: "true"
BUILD_GENERIC: true
METAPKG_GIT_CACHE: disabled
GEL_PKG_REF: ${{ inputs.gelpkg_ref }}
METAPKG_REF: ${{ inputs.metapkg_ref }}
- uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
with:
name: builds-linux-x86_64
path: artifacts/linux-x86_64
build-linux-aarch64:
runs-on: ['self-hosted', 'linux', 'arm64']
needs: prep
if: needs.prep.outputs.if_linux_aarch64 == 'true'
steps:
- name: Build
uses: docker://ghcr.io/geldata/gelpkg-build-linux-aarch64:latest
env:
PACKAGE: "edgedbpkg.edgedb_ls:EdgeDBLanguageServer"
SRC_REF: "${{ github.sha }}"
PKG_REVISION: "<current-date>"
PKG_SUBDIST: "nightly"
PKG_PLATFORM: "linux"
PKG_PLATFORM_VERSION: "aarch64"
EXTRA_OPTIMIZATIONS: "true"
BUILD_GENERIC: true
METAPKG_GIT_CACHE: disabled
GEL_PKG_REF: ${{ inputs.gelpkg_ref }}
METAPKG_REF: ${{ inputs.metapkg_ref }}
- uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
with:
name: builds-linux-aarch64
path: artifacts/linux-aarch64
build-linuxmusl-x86_64:
runs-on: ['self-hosted', 'linux', 'x64']
needs: prep
if: needs.prep.outputs.if_linuxmusl_x86_64 == 'true'
steps:
- name: Build
uses: docker://ghcr.io/geldata/gelpkg-build-linuxmusl-x86_64:latest
env:
PACKAGE: "edgedbpkg.edgedb_ls:EdgeDBLanguageServer"
SRC_REF: "${{ github.sha }}"
PKG_REVISION: "<current-date>"
PKG_SUBDIST: "nightly"
PKG_PLATFORM: "linux"
PKG_PLATFORM_VERSION: "x86_64"
EXTRA_OPTIMIZATIONS: "true"
BUILD_GENERIC: true
PKG_PLATFORM_LIBC: "musl"
METAPKG_GIT_CACHE: disabled
GEL_PKG_REF: ${{ inputs.gelpkg_ref }}
METAPKG_REF: ${{ inputs.metapkg_ref }}
- uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
with:
name: builds-linuxmusl-x86_64
path: artifacts/linuxmusl-x86_64
build-linuxmusl-aarch64:
runs-on: ['self-hosted', 'linux', 'arm64']
needs: prep
if: needs.prep.outputs.if_linuxmusl_aarch64 == 'true'
steps:
- name: Build
uses: docker://ghcr.io/geldata/gelpkg-build-linuxmusl-aarch64:latest
env:
PACKAGE: "edgedbpkg.edgedb_ls:EdgeDBLanguageServer"
SRC_REF: "${{ github.sha }}"
PKG_REVISION: "<current-date>"
PKG_SUBDIST: "nightly"
PKG_PLATFORM: "linux"
PKG_PLATFORM_VERSION: "aarch64"
EXTRA_OPTIMIZATIONS: "true"
BUILD_GENERIC: true
PKG_PLATFORM_LIBC: "musl"
METAPKG_GIT_CACHE: disabled
GEL_PKG_REF: ${{ inputs.gelpkg_ref }}
METAPKG_REF: ${{ inputs.metapkg_ref }}
- uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
with:
name: builds-linuxmusl-aarch64
path: artifacts/linuxmusl-aarch64
build-macos-x86_64:
runs-on: ['macos-13']
needs: prep
if: needs.prep.outputs.if_macos_x86_64 == 'true'
steps:
- name: Update Homebrew before installing Rust toolchain
run: |
# Homebrew renamed `rustup-init` to `rustup`:
# https://github.com/Homebrew/homebrew-core/pull/177840
# But the GitHub Action runner is not updated with this change yet.
# This caused the later `brew update` in step `Build` to relink Rust
# toolchain executables, overwriting the custom toolchain installed by
# `dsherret/rust-toolchain-file`. So let's just run `brew update` early.
brew update
- uses: actions/checkout@v4
if: true
with:
sparse-checkout: |
rust-toolchain.toml
sparse-checkout-cone-mode: false
- name: Install Rust toolchain
uses: dsherret/rust-toolchain-file@v1
if: true
- uses: actions/checkout@v4
with:
repository: edgedb/edgedb-pkg
ref: master
path: edgedb-pkg
- name: Set up Python
uses: actions/setup-python@v5
if: true
with:
python-version: "3.12"
- name: Set up NodeJS
uses: actions/setup-node@v4
if: true
with:
node-version: '20'
- name: Install dependencies
if: true
run: |
env HOMEBREW_NO_AUTO_UPDATE=1 brew install libmagic
- name: Install an alias
# This is probably not strictly needed, but sentencepiece build script reports
# errors without it.
if: true
run: |
printf '#!/bin/sh\n\nexec sysctl -n hw.logicalcpu' > /usr/local/bin/nproc
chmod +x /usr/local/bin/nproc
- name: Build
env:
PACKAGE: "edgedbpkg.edgedb_ls:EdgeDBLanguageServer"
SRC_REF: "${{ github.sha }}"
PKG_REVISION: "<current-date>"
PKG_SUBDIST: "nightly"
PKG_PLATFORM: "macos"
PKG_PLATFORM_VERSION: "x86_64"
PKG_PLATFORM_ARCH: "x86_64"
EXTRA_OPTIMIZATIONS: "true"
METAPKG_GIT_CACHE: disabled
BUILD_GENERIC: true
CMAKE_POLICY_VERSION_MINIMUM: '3.5'
GEL_PKG_REF: ${{ inputs.gelpkg_ref }}
METAPKG_REF: ${{ inputs.metapkg_ref }}
run: |
edgedb-pkg/integration/macos/build.sh
- uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
with:
name: builds-macos-x86_64
path: artifacts/macos-x86_64
build-macos-aarch64:
runs-on: ['macos-14']
needs: prep
if: needs.prep.outputs.if_macos_aarch64 == 'true'
steps:
- name: Update Homebrew before installing Rust toolchain
run: |
# Homebrew renamed `rustup-init` to `rustup`:
# https://github.com/Homebrew/homebrew-core/pull/177840
# But the GitHub Action runner is not updated with this change yet.
# This caused the later `brew update` in step `Build` to relink Rust
# toolchain executables, overwriting the custom toolchain installed by
# `dsherret/rust-toolchain-file`. So let's just run `brew update` early.
brew update
- uses: actions/checkout@v4
if: true
with:
sparse-checkout: |
rust-toolchain.toml
sparse-checkout-cone-mode: false
- name: Install Rust toolchain
uses: dsherret/rust-toolchain-file@v1
if: true
- uses: actions/checkout@v4
with:
repository: edgedb/edgedb-pkg
ref: master
path: edgedb-pkg
- name: Set up Python
uses: actions/setup-python@v5
if: true
with:
python-version: "3.12"
- name: Set up NodeJS
uses: actions/setup-node@v4
if: true
with:
node-version: '20'
- name: Install dependencies
if: true
run: |
env HOMEBREW_NO_AUTO_UPDATE=1 brew install libmagic
- name: Install an alias
# This is probably not strictly needed, but sentencepiece build script reports
# errors without it.
if: true
run: |
printf '#!/bin/sh\n\nexec sysctl -n hw.logicalcpu' > /usr/local/bin/nproc
chmod +x /usr/local/bin/nproc
- name: Build
env:
PACKAGE: "edgedbpkg.edgedb_ls:EdgeDBLanguageServer"
SRC_REF: "${{ github.sha }}"
PKG_REVISION: "<current-date>"
PKG_SUBDIST: "nightly"
PKG_PLATFORM: "macos"
PKG_PLATFORM_VERSION: "aarch64"
PKG_PLATFORM_ARCH: "aarch64"
EXTRA_OPTIMIZATIONS: "true"
METAPKG_GIT_CACHE: disabled
BUILD_GENERIC: true
CMAKE_POLICY_VERSION_MINIMUM: '3.5'
GEL_PKG_REF: ${{ inputs.gelpkg_ref }}
METAPKG_REF: ${{ inputs.metapkg_ref }}
run: |
edgedb-pkg/integration/macos/build.sh
- uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
with:
name: builds-macos-aarch64
path: artifacts/macos-aarch64
publish-linux-x86_64:
needs: [build-linux-x86_64]
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: builds-linux-x86_64
path: artifacts/linux-x86_64
- name: Publish
uses: docker://ghcr.io/geldata/gelpkg-upload-linux-x86_64:latest
env:
PKG_SUBDIST: "nightly"
PACKAGE_SERVER: sftp://uploader@package-upload.edgedb.net:22/
PKG_PLATFORM: "linux"
PKG_PLATFORM_VERSION: "x86_64"
PKG_PLATFORM_LIBC: ""
PACKAGE_UPLOAD_SSH_KEY: "${{ secrets.PACKAGE_UPLOAD_SSH_KEY }}"
check-published-linux-x86_64:
needs: [publish-linux-x86_64]
runs-on: ['self-hosted', 'linux', 'x64']
steps:
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: builds-linux-x86_64
path: artifacts/linux-x86_64
- name: Describe
id: describe
uses: edgedb/edgedb-pkg/integration/actions/describe-artifact@master
with:
target: linux-x86_64
- name: Test Published
uses: docker://ghcr.io/geldata/gelpkg-testpublished-linux-x86_64:latest
env:
PKG_NAME: "${{ steps.describe.outputs.name }}"
PKG_SUBDIST: "nightly"
PACKAGE_SERVER: sftp://uploader@package-upload.edgedb.net:22/
PKG_PLATFORM: "linux"
PKG_PLATFORM_VERSION: "x86_64"
PKG_INSTALL_REF: "${{ steps.describe.outputs.install-ref }}"
PKG_VERSION_SLOT: "${{ steps.describe.outputs.version-slot }}"
outputs:
version-slot: ${{ steps.describe.outputs.version-slot }}
version-core: ${{ steps.describe.outputs.version-core }}
catalog-version: ${{ steps.describe.outputs.catalog-version }}
publish-linux-aarch64:
needs: [build-linux-aarch64]
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: builds-linux-aarch64
path: artifacts/linux-aarch64
- name: Publish
uses: docker://ghcr.io/geldata/gelpkg-upload-linux-x86_64:latest
env:
PKG_SUBDIST: "nightly"
PACKAGE_SERVER: sftp://uploader@package-upload.edgedb.net:22/
PKG_PLATFORM: "linux"
PKG_PLATFORM_VERSION: "aarch64"
PKG_PLATFORM_LIBC: ""
PACKAGE_UPLOAD_SSH_KEY: "${{ secrets.PACKAGE_UPLOAD_SSH_KEY }}"
check-published-linux-aarch64:
needs: [publish-linux-aarch64]
runs-on: ['self-hosted', 'linux', 'arm64']
steps:
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: builds-linux-aarch64
path: artifacts/linux-aarch64
- name: Describe
id: describe
uses: edgedb/edgedb-pkg/integration/actions/describe-artifact@master
with:
target: linux-aarch64
- name: Test Published
uses: docker://ghcr.io/geldata/gelpkg-testpublished-linux-aarch64:latest
env:
PKG_NAME: "${{ steps.describe.outputs.name }}"
PKG_SUBDIST: "nightly"
PACKAGE_SERVER: sftp://uploader@package-upload.edgedb.net:22/
PKG_PLATFORM: "linux"
PKG_PLATFORM_VERSION: "aarch64"
PKG_INSTALL_REF: "${{ steps.describe.outputs.install-ref }}"
PKG_VERSION_SLOT: "${{ steps.describe.outputs.version-slot }}"
outputs:
version-slot: ${{ steps.describe.outputs.version-slot }}
version-core: ${{ steps.describe.outputs.version-core }}
catalog-version: ${{ steps.describe.outputs.catalog-version }}
publish-linuxmusl-x86_64:
needs: [build-linuxmusl-x86_64]
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: builds-linuxmusl-x86_64
path: artifacts/linuxmusl-x86_64
- name: Publish
uses: docker://ghcr.io/geldata/gelpkg-upload-linux-x86_64:latest
env:
PKG_SUBDIST: "nightly"
PACKAGE_SERVER: sftp://uploader@package-upload.edgedb.net:22/
PKG_PLATFORM: "linux"
PKG_PLATFORM_VERSION: "x86_64"
PKG_PLATFORM_LIBC: "musl"
PACKAGE_UPLOAD_SSH_KEY: "${{ secrets.PACKAGE_UPLOAD_SSH_KEY }}"
check-published-linuxmusl-x86_64:
needs: [publish-linuxmusl-x86_64]
runs-on: ['self-hosted', 'linux', 'x64']
steps:
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: builds-linuxmusl-x86_64
path: artifacts/linuxmusl-x86_64
- name: Describe
id: describe
uses: edgedb/edgedb-pkg/integration/actions/describe-artifact@master
with:
target: linuxmusl-x86_64
- name: Test Published
uses: docker://ghcr.io/geldata/gelpkg-testpublished-linuxmusl-x86_64:latest
env:
PKG_NAME: "${{ steps.describe.outputs.name }}"
PKG_SUBDIST: "nightly"
PACKAGE_SERVER: sftp://uploader@package-upload.edgedb.net:22/
PKG_PLATFORM: "linux"
PKG_PLATFORM_VERSION: "x86_64"
PKG_INSTALL_REF: "${{ steps.describe.outputs.install-ref }}"
PKG_VERSION_SLOT: "${{ steps.describe.outputs.version-slot }}"
outputs:
version-slot: ${{ steps.describe.outputs.version-slot }}
version-core: ${{ steps.describe.outputs.version-core }}
catalog-version: ${{ steps.describe.outputs.catalog-version }}
publish-linuxmusl-aarch64:
needs: [build-linuxmusl-aarch64]
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: builds-linuxmusl-aarch64
path: artifacts/linuxmusl-aarch64
- name: Publish
uses: docker://ghcr.io/geldata/gelpkg-upload-linux-x86_64:latest
env:
PKG_SUBDIST: "nightly"
PACKAGE_SERVER: sftp://uploader@package-upload.edgedb.net:22/
PKG_PLATFORM: "linux"
PKG_PLATFORM_VERSION: "aarch64"
PKG_PLATFORM_LIBC: "musl"
PACKAGE_UPLOAD_SSH_KEY: "${{ secrets.PACKAGE_UPLOAD_SSH_KEY }}"
check-published-linuxmusl-aarch64:
needs: [publish-linuxmusl-aarch64]
runs-on: ['self-hosted', 'linux', 'arm64']
steps:
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: builds-linuxmusl-aarch64
path: artifacts/linuxmusl-aarch64
- name: Describe
id: describe
uses: edgedb/edgedb-pkg/integration/actions/describe-artifact@master
with:
target: linuxmusl-aarch64
- name: Test Published
uses: docker://ghcr.io/geldata/gelpkg-testpublished-linuxmusl-aarch64:latest
env:
PKG_NAME: "${{ steps.describe.outputs.name }}"
PKG_SUBDIST: "nightly"
PACKAGE_SERVER: sftp://uploader@package-upload.edgedb.net:22/
PKG_PLATFORM: "linux"
PKG_PLATFORM_VERSION: "aarch64"
PKG_INSTALL_REF: "${{ steps.describe.outputs.install-ref }}"
PKG_VERSION_SLOT: "${{ steps.describe.outputs.version-slot }}"
outputs:
version-slot: ${{ steps.describe.outputs.version-slot }}
version-core: ${{ steps.describe.outputs.version-core }}
catalog-version: ${{ steps.describe.outputs.catalog-version }}
publish-macos-x86_64:
needs: [build-macos-x86_64]
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: builds-macos-x86_64
path: artifacts/macos-x86_64
- uses: actions/checkout@v4
with:
repository: edgedb/edgedb-pkg
ref: master
path: edgedb-pkg
- name: Describe
id: describe
uses: edgedb/edgedb-pkg/integration/actions/describe-artifact@master
with:
target: macos-x86_64
- name: Publish
uses: docker://ghcr.io/geldata/gelpkg-upload-linux-x86_64:latest
env:
PKG_SUBDIST: "nightly"
PKG_PLATFORM: "macos"
PKG_PLATFORM_VERSION: "x86_64"
PACKAGE_UPLOAD_SSH_KEY: "${{ secrets.PACKAGE_UPLOAD_SSH_KEY }}"
publish-macos-aarch64:
needs: [build-macos-aarch64]
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: builds-macos-aarch64
path: artifacts/macos-aarch64
- uses: actions/checkout@v4
with:
repository: edgedb/edgedb-pkg
ref: master
path: edgedb-pkg
- name: Describe
id: describe
uses: edgedb/edgedb-pkg/integration/actions/describe-artifact@master
with:
target: macos-aarch64
- name: Publish
uses: docker://ghcr.io/geldata/gelpkg-upload-linux-x86_64:latest
env:
PKG_SUBDIST: "nightly"
PKG_PLATFORM: "macos"
PKG_PLATFORM_VERSION: "aarch64"
PACKAGE_UPLOAD_SSH_KEY: "${{ secrets.PACKAGE_UPLOAD_SSH_KEY }}"
workflow-notifications:
if: failure() && github.event_name != 'pull_request'
name: Notify in Slack on failures
needs:
- prep
- build-linux-x86_64
- publish-linux-x86_64
- check-published-linux-x86_64
- build-linux-aarch64
- publish-linux-aarch64
- check-published-linux-aarch64
- build-linuxmusl-x86_64
- publish-linuxmusl-x86_64
- check-published-linuxmusl-x86_64
- build-linuxmusl-aarch64
- publish-linuxmusl-aarch64
- check-published-linuxmusl-aarch64
- build-macos-x86_64
- publish-macos-x86_64
- build-macos-aarch64
- publish-macos-aarch64
runs-on: ubuntu-latest
permissions:
actions: 'read'
steps:
- name: Slack Workflow Notification
uses: Gamesight/slack-workflow-status@26a36836c887f260477432e4314ec3490a84f309
with:
repo_token: ${{secrets.GITHUB_TOKEN}}
slack_webhook_url: ${{secrets.ACTIONS_SLACK_WEBHOOK_URL}}
name: 'Workflow notifications'
icon_emoji: ':hammer:'
include_jobs: 'on-failure'