CI: Consolidate multi-OS & multi-arch builds into one job

This commit is contained in:
Nils Hanke 2022-09-15 14:29:35 +02:00 committed by Nils Hanke
parent 1dad1631ca
commit 52d1afaf0b
2 changed files with 38 additions and 40 deletions

View File

@ -1,6 +1,16 @@
name: Build cdbg name: Build cdbg
description: Build the Constellation cdbg binary description: Build the Constellation cdbg binary
inputs:
targetOS:
description: "Build CLI for this OS. [linux, darwin]"
required: true
default: "linux"
targetArch:
description: "Build CLI for this architecture. [amd64, arm64]"
required: true
default: "amd64"
runs: runs:
using: "composite" using: "composite"
steps: steps:
@ -10,5 +20,5 @@ runs:
echo "::group::Build cdbg" echo "::group::Build cdbg"
mkdir -p build && cd build mkdir -p build && cd build
cmake .. cmake ..
make cdbg GOOS=${{ inputs.targetOS }} GOARCH=${{ inputs.targetArch }} make cdbg
echo "::endgroup::" echo "::endgroup::"

View File

@ -57,8 +57,29 @@ jobs:
- name: Check out repository - name: Check out repository
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Build cdbg - name: Build cdbg (Linux, amd64)
uses: ./.github/actions/build_cdbg uses: ./.github/actions/build_cdbg
with:
targetOS: "linux"
targetArch: "amd64"
- name: Build cdbg (Linux, arm64)
uses: ./.github/actions/build_cdbg
with:
targetOS: "linux"
targetArch: "arm64"
- name: Build cdbg (macOS, amd64)
uses: ./.github/actions/build_cdbg
with:
targetOS: "linux"
targetArch: "arm64"
- name: Build cdbg (macOS, arm64)
uses: ./.github/actions/build_cdbg
with:
targetOS: "linux"
targetArch: "arm64"
build-disk-mapper: build-disk-mapper:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@ -74,7 +95,7 @@ jobs:
- name: Build disk-mapper - name: Build disk-mapper
uses: ./.github/actions/build_disk_mapper uses: ./.github/actions/build_disk_mapper
build-cli-linux-amd64: build-cli:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Setup Go environment - name: Setup Go environment
@ -85,58 +106,25 @@ jobs:
- name: Check out repository - name: Check out repository
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Build CLI - name: Build CLI (Linux, amd64)
uses: ./.github/actions/build_cli uses: ./.github/actions/build_cli
with: with:
targetOS: linux targetOS: linux
targetArch: amd64 targetArch: amd64
build-cli-linux-arm64: - name: Build CLI (Linux, arm64)
runs-on: ubuntu-latest
steps:
- name: Setup Go environment
uses: actions/setup-go@268d8c0ca0432bb2cf416faae41297df9d262d7f
with:
go-version: "1.19.1"
- name: Check out repository
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Build CLI
uses: ./.github/actions/build_cli uses: ./.github/actions/build_cli
with: with:
targetOS: linux targetOS: linux
targetArch: arm64 targetArch: arm64
build-cli-darwin-amd64: - name: Build CLI (macOS, amd64)
runs-on: ubuntu-latest
steps:
- name: Setup Go environment
uses: actions/setup-go@268d8c0ca0432bb2cf416faae41297df9d262d7f
with:
go-version: "1.19.1"
- name: Check out repository
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Build CLI
uses: ./.github/actions/build_cli uses: ./.github/actions/build_cli
with: with:
targetOS: darwin targetOS: darwin
targetArch: amd64 targetArch: amd64
build-cli-darwin-arm64: - name: Build CLI (macOS, arm64)
runs-on: ubuntu-latest
steps:
- name: Setup Go environment
uses: actions/setup-go@268d8c0ca0432bb2cf416faae41297df9d262d7f
with:
go-version: "1.19.1"
- name: Check out repository
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Build CLI
uses: ./.github/actions/build_cli uses: ./.github/actions/build_cli
with: with:
targetOS: darwin targetOS: darwin