Skip to content

lint

lint #435

# Build a macos release from the avalanchego repo
name: build-macos-release
# Controls when the action will run.
on:
workflow_dispatch:
inputs:
tag:
description: 'Tag to include in artifact name'
required: true
push:
tags:
- "*"
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build-mac:
# The type of runner that the job will run on
runs-on: macos-12
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: '~1.21.7'
check-latest: true
- run: go version
# Runs a single command using the runners shell
- name: Build the avalanchego binary
run: ./scripts/build.sh
- name: Try to get tag from git
if: "${{ github.event.inputs.tag == '' }}"
id: get_tag_from_git
run: |
echo "TAG=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_ENV
shell: bash
- name: Try to get tag from workflow dispatch
if: "${{ github.event.inputs.tag != '' }}"
id: get_tag_from_workflow
run: |
echo "TAG=${{ github.event.inputs.tag }}" >> $GITHUB_ENV
shell: bash
- name: Create zip file
run: 7z a avalanchego-macos-${TAG}.zip build/avalanchego
env:
TAG: ${{ env.TAG }}
- name: Install aws cli
run: |
curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
sudo installer -pkg AWSCLIV2.pkg -target /
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Upload file to S3
run: aws s3 cp avalanchego-macos-${{ env.TAG }}.zip s3://${BUCKET}/macos/
env:
BUCKET: ${{ secrets.BUCKET }}
- name: Save as Github artifact
uses: actions/upload-artifact@v4
with:
name: build
path: avalanchego-macos-${{ env.TAG }}.zip
- name: Cleanup
run: |
rm -rf ./build