Skip to content

fix: move build source info to a separate location #2394

fix: move build source info to a separate location

fix: move build source info to a separate location #2394

Workflow file for this run

name: CI macOS
on:
pull_request:
paths-ignore:
- 'doc/**'
- '**.md'
- '**.rst'
- '**.txt'
release:
types: [published]
workflow_dispatch:
jobs:
build:
name: CI on macOS
strategy:
fail-fast: false
matrix:
os:
- macos-13 # x64
- macos-latest # arm64
runs-on: ${{ matrix.os }}
steps:
- name: Check out repository
uses: actions/checkout@v4
with:
submodules: true
- name: Install FSF toolchain
uses: alire-project/alr-install@v2
with:
crates: gnat_native gprbuild
prefix: alire_prefix
- name: Check toolchain architecture
uses: mosteo-actions/gnat-toolchain-arch-checker@v1
- name: Install Python 3.x (required for the testsuite)
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Run test script
run: scripts/ci-github.sh
shell: bash
env:
BRANCH: ${{ github.base_ref }}
INDEX: ""
# Ascertain whether alr can run without the toolchain that built it
- name: Check standalone alr
uses: mosteo-actions/alr-standalone-checker@v1
with:
alr_path: bin
toolchain_path: alire_prefix
- name: Upload binaries
uses: actions/upload-artifact@v4
with:
name: alr-bin-${{ runner.arch }}-macos.zip
path: |
bin/alr
LICENSE.txt
- name: Upload logs (if failed)
if: failure()
uses: actions/upload-artifact@v4
with:
name: testsuite-log-macos-${{ runner.arch }}.zip
path: testsuite/out
# Release steps start here. These only run during a release creation.
- name: Retrieve upload URL for the release
if: github.event_name == 'release'
id: get_release
uses: bruceadams/get-release@v1.3.2
env:
GITHUB_TOKEN: ${{ github.token }}
- name: Get release version
id: get_version
if: github.event_name == 'release'
uses: battila7/get-version-action@v2
- name: Package release binaries
if: github.event_name == 'release'
run: zip alr-bin-macos.zip bin/alr LICENSE.txt
- name: Select arch name
id: get_arch
if: github.event_name == 'release'
shell: bash
run: |
case ${{ runner.arch }} in
X64) echo "arch=x86_64" >> $GITHUB_OUTPUT ;;
ARM64) echo "arch=aarch64" >> $GITHUB_OUTPUT ;;
*) echo "Unknown architecture, failing..." && exit 1 ;;
esac
- name: Upload release assets
if: github.event_name == 'release'
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.get_release.outputs.upload_url }}
asset_path: alr-bin-macos.zip
asset_name: alr-${{ steps.get_version.outputs.version-without-v }}-bin-${{ steps.get_arch.outputs.arch }}-macos.zip
asset_content_type: application/zip