aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Alex Chernyakhovsky <achernya@google.com>2022-07-11 20:36:25 -0400
committerGravatar Benjamin Barenblat <bbarenblat@gmail.com>2022-07-11 21:21:18 -0400
commit7f0c3a416245843ed09cacfe6f15c3b8f7cbaab1 (patch)
tree653caf2c2f38ce27377d51b7f5770afd4c7547ca
parentf0b0108c85616e05f647db0b8aa5a3ebb854dfc7 (diff)
Add macOS release steps to Github Actions
This change ports the Travis CI release workflow for macOS to Github Actions. Note that while this is functionally identical to the previous Travis CI flow, no work has been done to update the macOS build scripts to build for arm64.
-rw-r--r--.github/workflows/release.yml31
1 files changed, 29 insertions, 2 deletions
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index e9e56e2..0aa23e5 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -13,12 +13,11 @@ jobs:
strategy:
matrix:
- os: [ubuntu-20.04]
+ os: [ubuntu-20.04, macos-latest]
steps:
- uses: actions/checkout@v2
-
- name: "ensure version bumped"
run: |
expected_tag=$(echo ${{ github.ref }} | cut -d'/' -f3)
@@ -34,17 +33,42 @@ jobs:
if: ${{ startsWith(matrix.os, 'macos') }}
run: brew install protobuf automake
+ - name: "describe macos build environment"
+ if: ${{ startsWith(matrix.os, 'macos') }}
+ run: |
+ BUILD_TAG=$(echo ${{ github.ref }} | cut -d'/' -f3)
+ mkdir macosx/build-report &&
+ pushd macosx/build-report &&
+ ../brew-deps.sh describe &&
+ ../osx-xcode.sh describe &&
+ tar -cjf "../${BUILD_TAG}-osx-build-report.tbz" . &&
+ popd
+
- name: "generate build scripts"
run: ./autogen.sh
- name: "configure"
+ if: ${{ startsWith(matrix.os, 'ubuntu') }}
run: ./configure --enable-compile-warnings=error --enable-examples
- name: "build"
+ if: ${{ startsWith(matrix.os, 'ubuntu') }}
run: make V=1
- name: "test"
+ if: ${{ startsWith(matrix.os, 'ubuntu') }}
run: make V=1 distcheck -j
+
+ - name: "unshallow git repository for git describe"
+ if: ${{ startsWith(matrix.os, 'macos') }}
+ run: git fetch --tags --unshallow
+
+ - name: "macOS package build"
+ if: ${{ startsWith(matrix.os, 'macos') }}
+ run: |
+ pushd macosx &&
+ env ZERO_AR_DATE=1 MACOSX_DEPLOYMENT_TARGET=10.12 ./build.sh &&
+ popd
- name: "Upload Release"
# v1 aka v0.1.14 as of 2022-07-05; pinned to avoid potential code injection
@@ -57,3 +81,6 @@ jobs:
generate_release_notes: True
files: |
mosh-*.tar.gz
+ macosx/*.pkg
+ macosx/*-osx-build-report.tbz
+