Merge pull request #1317 from tinaboyce/1293-flag-quiet-logs #30
Workflow file for this run
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: release | |
on: | |
push: | |
tags: | |
- '*' | |
workflow_dispatch: | |
inputs: | |
tag: | |
description: The tag to run against. This trigger only runs the MSI builder. | |
required: true | |
jobs: | |
release: | |
name: release | |
strategy: | |
# the goreleaser and the Github release API doesn't handle concurrent | |
# access well, so run goreleaser serially | |
max-parallel: 1 | |
matrix: | |
os: | |
- ubuntu-latest | |
- ubuntu-20.04 | |
- macos-latest | |
runs-on: ${{ matrix.os }} | |
if: github.event_name != 'workflow_dispatch' | |
permissions: write-all | |
steps: | |
- name: Set up Go 1.x | |
uses: actions/setup-go@v5 | |
with: | |
go-version: 1.21.x | |
- name: Check out code into the Go module directory | |
uses: actions/checkout@v4 | |
- name: Install dependency required for linux builds | |
if: matrix.os == 'ubuntu-20.04' | |
run: sudo apt-get update && sudo apt-get install -y libudev-dev | |
- name: Add Lowercase Repository Name to Environment | |
run: | | |
echo REPOSITORY_NAME_LOWERCASE=$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]') >> $GITHUB_ENV | |
- uses: "docker/login-action@v3" | |
if: matrix.os == 'ubuntu-20.04' | |
with: | |
registry: "ghcr.io" | |
username: "${{ github.actor }}" | |
password: "${{ secrets.GITHUB_TOKEN }}" | |
- name: GoReleaser | |
uses: goreleaser/goreleaser-action@v6 | |
with: | |
version: latest | |
args: release --clean --config .goreleaser.${{ matrix.os }}.yml | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
IMAGE_NAME: ${{ env.REPOSITORY_NAME_LOWERCASE }} | |
windows-msi: | |
name: Build Windows MSI and upload to release | |
runs-on: ubuntu-latest | |
permissions: | |
contents: write | |
needs: [release] | |
if: >- # https://github.com/actions/runner/issues/491 | |
always() && | |
(needs.release.result == 'success' || needs.release.result == 'skipped') | |
env: | |
INSTALLER: ${{ github.workspace }}/.github/win-msi | |
BIN: ${{ github.workspace }}/.github/win-msi/src/bin | |
WIXIMG: dactiv/wix@sha256:17d232708589641f5632f9a1ff9463ad087b192cea7b8e6012d2b47ec6af5f6c | |
steps: | |
- name: Normalize tag values | |
run: | | |
if [[ "${{ github.event_name }}" == "workflow_dispatch" ]] ; then | |
VER=${{ github.event.inputs.tag }} | |
else | |
VER=${GITHUB_REF/refs\/tags\//} | |
fi | |
VERSION=${VER//v} | |
echo "VER_TAG=$VER" >> $GITHUB_ENV | |
echo "VERSION=$VERSION" >> $GITHUB_ENV | |
echo "ASSET=saml2aws_${VERSION}_windows_amd64.zip" >> $GITHUB_ENV | |
- name: Check out code | |
uses: actions/checkout@v4 | |
- name: Retrieve the release asset | |
id: asset | |
uses: robinraju/release-downloader@a96f54c1b5f5e09e47d9504526e96febd949d4c2 # v1.11 | |
with: | |
repository: ${{ github.repository }} | |
tag: ${{ env.VER_TAG }} | |
fileName: ${{ env.ASSET }} | |
out-file-path: ${{ env.BIN }} | |
- name: Unzip asset | |
working-directory: ${{ env.BIN }} | |
run: unzip "${ASSET}" | |
- name: Build MSI | |
run: | | |
# container does not run as root | |
chmod -R o+rw "${INSTALLER}" | |
cat "${INSTALLER}/wix.sh" | docker run --rm -i -e VERSION -v "${INSTALLER}:/wix" ${WIXIMG} /bin/sh | |
- name: Upload the asset to the release | |
uses: softprops/action-gh-release@a74c6b72af54cfa997e81df42d94703d6313a2d0 # v0.2.0.6.2.0.65 / v2.0.6 | |
with: | |
tag_name: ${{ env.VER_TAG }} | |
files: ${{ env.INSTALLER }}/out/*.msi |