Files
netbird/.github/workflows/release.yml
2022-05-17 12:10:58 +02:00

158 lines
4.8 KiB
YAML

name: Release
on:
push:
tags:
- 'v*'
branches:
- main
pull_request:
jobs:
# release:
# runs-on: ubuntu-latest
# steps:
# -
# name: Checkout
# uses: actions/checkout@v2
# with:
# fetch-depth: 0 # It is required for GoReleaser to work properly
#
# - name: Generate syso with DLL
# run: bash -x wireguard_nt.sh
# working-directory: client
# -
# name: Set up Go
# uses: actions/setup-go@v2
# with:
# go-version: 1.18
# -
# name: Cache Go modules
# uses: actions/cache@v1
# with:
# path: ~/go/pkg/mod
# key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
# restore-keys: |
# ${{ runner.os }}-go-
# -
# name: Install modules
# run: go mod tidy
# -
# name: Set up QEMU
# uses: docker/setup-qemu-action@v1
# -
# name: Set up Docker Buildx
# uses: docker/setup-buildx-action@v1
# -
# name: Login to Docker hub
# if: github.event_name != 'pull_request'
# uses: docker/login-action@v1
# with:
# username: ${{ secrets.DOCKER_USER }}
# password: ${{ secrets.DOCKER_TOKEN }}
# - name: Install dependencies
# run: sudo apt update && sudo apt install -y -q libgtk-3-dev libappindicator3-dev libayatana-appindicator3-dev libgl1-mesa-dev xorg-dev gcc-mingw-w64-x86-64
# -
# name: Run GoReleaser
# uses: goreleaser/goreleaser-action@v2
# with:
# version: v1.6.3
# args: release --rm-dist
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# HOMEBREW_TAP_GITHUB_TOKEN: ${{ secrets.HOMEBREW_TAP_GITHUB_TOKEN }}
# UPLOAD_DEBIAN_SECRET: ${{ secrets.PKG_UPLOAD_SECRET }}
# UPLOAD_YUM_SECRET: ${{ secrets.PKG_UPLOAD_SECRET }}
#
# -
# name: Trigger Windows binaries sign pipeline
# uses: benc-uk/workflow-dispatch@v1
# if: startsWith(github.ref, 'refs/tags/')
# with:
# workflow: Sign windows bin and installer
# repo: wiretrustee/windows-sign-pipeline
# ref: v0.0.2
# token: ${{ secrets.SIGN_GITHUB_TOKEN }}
# inputs: '{ "tag": "${{ github.ref }}" }'
# -
# name: upload non tags for debug purposes
# uses: actions/upload-artifact@v2
# with:
# name: build
# path: dist/
# retention-days: 3
release_ui:
runs-on: macos-latest
steps:
-
name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0 # It is required for GoReleaser to work properly
-
name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.18
-
name: Cache Go modules
uses: actions/cache@v1
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
-
name: Install modules
run: go mod tidy
-
name: Run GoReleaser
id: goreleaser
uses: goreleaser/goreleaser-action@v2
with:
version: v1.6.3
args: release --config .goreleaser_ui_darwin.yaml --rm-dist
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
name: Checkout homebrew
uses: actions/checkout@v2
with:
repository: mlsmaycon/homebrew-client
fetch-depth: 0 # It is required for GoReleaser to work properly
path: 'template'
clean: false
ref: main
- run: rm -fr template/.git
- run: brew install gomplate
- run: |
echo ${{ steps.goreleaser.outputs.metadata}} || true
echo ${{ steps.goreleaser.outputs.Metadata}} || true
export PROJECT=netbird-ui
export AMD=$(ls -1 dist/${PROJECT}*amd64.zip)
export ARM=$(ls -1 dist/${PROJECT}*amd64.zip)
export VERSION=$(echo $AMD|egrep -o "${PROJECT}.+zip"|sed -E 's/.+app_(.+)_darwin_amd64.zip/\1/')
env | egrep 'AMD|ARM|PROJECT|VERSION'
gomplate -f client/ui/netbird-ui.rb.tmpl -o template/netbird-ui.rb
- name: Pushes to another repository
uses: cpina/github-action-push-to-another-repository@main
env:
API_TOKEN_GITHUB: ${{ secrets.HOMEBREW_TAP_GITHUB_TOKEN }}
with:
source-directory: 'template'
destination-github-username: 'mlsmaycon'
destination-repository-name: 'homebrew-client'
user-email: ci@netbird.io
target-branch: main
-
name: upload non tags for debug purposes
uses: actions/upload-artifact@v2
with:
name: build-ui-darwin
path: dist/
retention-days: 3