chore: Bump weekly #153
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
workflow_dispatch: | |
inputs: | |
upload-to-tag: | |
description: 'Upload artifacts to a release, identified by its tag' | |
required: true | |
default: '' | |
concurrency: | |
group: ${{ github.ref_name }}-${{ github.event_name }} | |
cancel-in-progress: true | |
jobs: | |
verify-flake: | |
runs-on: ubuntu-latest | |
permissions: | |
contents: read | |
id-token: write | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/common-setup | |
with: | |
cachix_token: ${{ secrets.CACHIX_AUTH_TOKEN }} | |
maximise-build-space: false | |
- name: Check formatting | |
run: nix fmt . -- --check | |
- name: Check Nix flake | |
run: nix flake check --all-systems | |
build-from-linux-for-linux: | |
runs-on: ubuntu-latest | |
needs: [verify-flake] | |
permissions: | |
contents: read | |
id-token: write | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/common-setup | |
with: | |
cachix_token: ${{ secrets.CACHIX_AUTH_TOKEN }} | |
# Lair Keystore | |
- name: Build Lair Keystore for x86_64-unknown-linux-gnu | |
run: | | |
nix build .#lair_keystore_x86_64-linux | |
./result/bin/lair-keystore --version | |
nix develop --command ./scripts/export-binary-x86_64-linux.sh lair-keystore ./deploy | |
- name: Build Lair Keystore for aarch64-unknown-linux-gnu | |
run: | | |
nix build .#lair_keystore_aarch64-linux | |
cp ./result/bin/lair-keystore deploy/lair-keystore-aarch64-linux | |
# Holochain | |
- name: Build Holochain for x86_64-unknown-linux-gnu | |
run: | | |
nix build .#holochain_x86_64-linux | |
./result/bin/holochain --version | |
nix develop --command ./scripts/export-binary-x86_64-linux.sh holochain ./deploy | |
- name: Build Holochain for aarch64-unknown-linux-gnu | |
run: | | |
nix build .#holochain_aarch64-linux | |
cp ./result/bin/holochain deploy/holochain-aarch64-linux | |
# hc CLI | |
- name: Build the `hc` CLI for x86_64-unknown-linux-gnu | |
run: | | |
nix build .#holochain_cli_x86_64-linux | |
./result/bin/hc --version | |
nix develop --command ./scripts/export-binary-x86_64-linux.sh hc ./deploy | |
- name: Build the `hc` CLI for aarch64-unknown-linux-gnu | |
run: | | |
nix build .#holochain_cli_aarch64-linux | |
cp ./result/bin/hc deploy/hc-aarch64-linux | |
# hc-run-local-services CLI | |
- name: Build the holochain-cli-run-local CLI for x86_64-unknown-linux-gnu | |
run: | | |
nix build .#holochain_cli_run_local_services_x86_64-linux | |
./result/bin/hc-run-local-services --version | |
nix develop --command ./scripts/export-binary-x86_64-linux.sh hc-run-local-services ./deploy | |
- name: Build the holochain-cli-run-local CLI for aarch64-unknown-linux-gnu | |
run: | | |
nix build .#holochain_cli_run_local_services_aarch64-linux | |
cp ./result/bin/hc-run-local-services deploy/hc-run-local-services-aarch64-linux | |
# hcterm CLI | |
- name: Build the hcterm CLI for x86_64-unknown-linux-gnu | |
run: | | |
nix build .#hcterm_x86_64-linux | |
./result/bin/hcterm --version | |
nix develop --command ./scripts/export-binary-x86_64-linux.sh hcterm ./deploy | |
- name: Build the hcterm CLI for aarch64-unknown-linux-gnu | |
run: | | |
nix build .#hcterm_aarch64-linux | |
cp ./result/bin/hcterm deploy/hcterm-aarch64-linux | |
- name: Upload artifacts to release | |
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.upload-to-tag != '' }} | |
env: | |
GH_TOKEN: ${{ secrets.HRA_GITHUB_TOKEN }} | |
run: | | |
gh release upload ${{ github.event.inputs.upload-to-tag }} deploy/* --clobber --repo holochain/holochain | |
build-from-linux-for-windows: | |
runs-on: ubuntu-latest | |
needs: [verify-flake] | |
permissions: | |
contents: read | |
id-token: write | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/common-setup | |
with: | |
cachix_token: ${{ secrets.CACHIX_AUTH_TOKEN }} | |
- name: Build Lair Keystore for x86_64-pc-windows-gnu | |
run: | | |
nix build .#lair_keystore_x86_64-windows | |
cp ./result/bin/lair-keystore.exe deploy/lair-keystore-x86_64-windows.exe | |
- name: Build Holochain for x86_64-pc-windows-gnu | |
run: | | |
nix build .#holochain_x86_64-windows | |
cp ./result/bin/holochain.exe deploy/holochain-x86_64-windows.exe | |
- name: Build the `hc` CLI for x86_64-pc-windows-gnu | |
run: | | |
nix build .#holochain_cli_x86_64-windows | |
cp ./result/bin/hc.exe deploy/hc-x86_64-windows.exe | |
- name: Build the holochain-cli-run-local CLI for x86_64-pc-windows-gnu | |
run: | | |
nix build .#holochain_cli_run_local_services_x86_64-windows | |
cp ./result/bin/hc-run-local-services.exe deploy/hc-run-local-services-x86_64-windows.exe | |
- name: Build the hcterm CLI for x86_64-pc-windows-gnu | |
run: | | |
nix build .#hcterm_x86_64-windows | |
cp ./result/bin/hcterm.exe deploy/hcterm-x86_64-windows.exe | |
- name: Upload artifacts to release | |
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.upload-to-tag != '' }} | |
env: | |
GH_TOKEN: ${{ secrets.HRA_GITHUB_TOKEN }} | |
run: | | |
gh release upload ${{ github.event.inputs.upload-to-tag }} deploy/* --clobber --repo holochain/holochain | |
build-from-apple: | |
runs-on: macos-latest | |
needs: [verify-flake] | |
permissions: | |
contents: read | |
id-token: write | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/common-setup | |
with: | |
cachix_token: ${{ secrets.CACHIX_AUTH_TOKEN }} | |
- name: Build Lair Keystore for aarch64-apple-darwin | |
run: | | |
nix build .#lair_keystore_aarch64-apple | |
./result/bin/lair-keystore --version | |
cp ./result/bin/lair-keystore deploy/lair-keystore-aarch64-apple | |
- name: Build Holochain for aarch64-apple-darwin | |
run: | | |
nix build .#holochain_aarch64-apple | |
./result/bin/holochain --version | |
cp ./result/bin/holochain deploy/holochain-aarch64-apple | |
- name: Build the `hc` CLI for aarch64-apple-darwin | |
run: | | |
nix build .#holochain_cli_aarch64-apple | |
./result/bin/hc --version | |
cp ./result/bin/hc deploy/hc-aarch64-apple | |
- name: Build the `holochain-cli-run-local` CLI for aarch64-apple-darwin | |
run: | | |
nix build .#holochain_cli_run_local_services_aarch64-apple | |
./result/bin/hc-run-local-services --version | |
cp ./result/bin/hc-run-local-services deploy/hc-run-local-services-aarch64-apple | |
- name: Build the `hcterm` CLI for aarch64-apple-darwin | |
run: | | |
nix build .#hcterm_aarch64-apple | |
./result/bin/hcterm --version | |
cp ./result/bin/hcterm deploy/hcterm-aarch64-apple | |
- name: Upload artifacts to release | |
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.upload-to-tag != '' }} | |
env: | |
GH_TOKEN: ${{ secrets.HRA_GITHUB_TOKEN }} | |
run: | | |
gh release upload ${{ github.event.inputs.upload-to-tag }} deploy/* --clobber --repo holochain/holochain | |
build-from-legacy-apple: | |
runs-on: macos-13 | |
needs: [verify-flake] | |
permissions: | |
contents: read | |
id-token: write | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/common-setup | |
with: | |
cachix_token: ${{ secrets.CACHIX_AUTH_TOKEN }} | |
- name: Build Lair Keystore for x86_64-apple-darwin | |
run: | | |
nix build .#lair_keystore_x86_64-apple | |
./result/bin/lair-keystore --version | |
cp ./result/bin/lair-keystore deploy/lair-keystore-x86_64-apple | |
- name: Build Holochain for x86_64-apple-darwin | |
run: | | |
nix build .#holochain_x86_64-apple | |
./result/bin/holochain --version | |
cp ./result/bin/holochain deploy/holochain-x86_64-apple | |
- name: Build the `hc` CLI for x86_64-apple-darwin | |
run: | | |
nix build .#holochain_cli_x86_64-apple | |
./result/bin/hc --version | |
cp ./result/bin/hc deploy/hc-x86_64-apple | |
- name: Build the `holochain-cli-run-local` CLI for x86_64-apple-darwin | |
run: | | |
nix build .#holochain_cli_run_local_services_x86_64-apple | |
./result/bin/hc-run-local-services --version | |
cp ./result/bin/hc-run-local-services deploy/hc-run-local-services-x86_64-apple | |
- name: Build the `hcterm` CLI for x86_64-apple-darwin | |
run: | | |
nix build .#hcterm_x86_64-apple | |
./result/bin/hcterm --version | |
cp ./result/bin/hcterm deploy/hcterm-x86_64-apple | |
- name: Upload artifacts to release | |
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.upload-to-tag != '' }} | |
env: | |
GH_TOKEN: ${{ secrets.HRA_GITHUB_TOKEN }} | |
run: | | |
gh release upload ${{ github.event.inputs.upload-to-tag }} deploy/* --clobber --repo holochain/holochain | |
bundle-x86-64-linux: | |
runs-on: ubuntu-latest | |
needs: [verify-flake] | |
permissions: | |
contents: read | |
id-token: write | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/common-setup | |
with: | |
cachix_token: ${{ secrets.CACHIX_AUTH_TOKEN }} | |
- name: Bundle Lair Keystore | |
run: | | |
nix bundle .#holonix_lair_keystore | |
./lair-keystore-arx --version | |
cp ./lair-keystore-arx deploy/lair-keystore-x86-64-linux-bundle | |
- name: Bundle Holochain | |
run: | | |
nix bundle .#holonix_holochain | |
./holochain-arx --version | |
cp ./holochain-arx deploy/holochain-x86-64-linux-bundle | |
- name: Bundle the `hc` CLI | |
run: | | |
nix bundle .#holonix_hc | |
./hc-arx --version | |
cp ./hc-arx deploy/hc-x86-64-linux-bundle | |
- name: Bundle the `hc-run-local-services` CLI | |
run: | | |
nix bundle .#holonix_hc_run_local_services | |
./hc-run-local-services-arx --version | |
cp ./hc-run-local-services-arx deploy/hc-run-local-services-x86-64-linux-bundle | |
- name: Bundle the `hcterm` CLI | |
run: | | |
nix bundle .#holonix_hcterm | |
./hcterm-arx --version | |
cp ./hcterm-arx deploy/hcterm-x86-64-linux-bundle | |
- name: Upload artifacts to release | |
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.upload-to-tag != '' }} | |
env: | |
GH_TOKEN: ${{ secrets.HRA_GITHUB_TOKEN }} | |
run: | | |
gh release upload ${{ github.event.inputs.upload-to-tag }} deploy/* --clobber --repo holochain/holochain |