Skip to content

Commit

Permalink
Create release.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
H1JK authored Aug 30, 2022
1 parent 7f184fe commit 20c1430
Showing 1 changed file with 128 additions and 0 deletions.
128 changes: 128 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
name: Release

on:
release:
types: [prereleased]

jobs:
build:
strategy:
matrix:
# Include amd64 on all platforms.
goos: [windows, freebsd, openbsd, linux, dragonfly, darwin]
goarch: [amd64, 386]
exclude:
# Exclude i386 on darwin and dragonfly.
- goarch: 386
goos: dragonfly
- goarch: 386
goos: darwin
include:
# BEGIN Linux ARM 5 6 7
- goos: linux
goarch: arm
goarm: 7
- goos: linux
goarch: arm
goarm: 6
- goos: linux
goarch: arm
goarm: 5
# END Linux ARM 5 6 7
# BEGIN Windows ARM 7
- goos: windows
goarch: arm
goarm: 7
# END Windows ARM 7
# BEGIN FreeBSD ARM 6 7
- goos: freebsd
goarch: arm
goarm: 6
- goos: freebsd
goarch: arm
goarm: 7
# END FreeBSD ARM 6 7
# BEGIN OpenBSD ARM 6 7
- goos: openbsd
goarch: arm
goarm: 6
- goos: openbsd
goarch: arm
goarm: 7
# END OpenBSD ARM 6 7
# BEGIN Other architectures
- goos: darwin
goarch: arm64
- goos: linux
goarch: arm64
- goos: linux
goarch: riscv64
- goos: windows
goarch: arm64
- goos: android
goarch: arm64
- goos: freebsd
goarch: arm64
- goos: openbsd
goarch: arm64
# BEGIN MIPS
- goos: linux
goarch: mips64
- goos: linux
goarch: mips64le
- goos: linux
goarch: mipsle
- goos: linux
goarch: mips
# END MIPS
# END Other architectures
fail-fast: false

runs-on: ubuntu-latest
env:
GOOS: ${{ matrix.goos }}
GOARCH: ${{ matrix.goarch }}
GOARM: ${{ matrix.goarm }}
CGO_ENABLED: 0

steps:
- name: Checkout codebase
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: ^1.19

- name: Get project dependencies
run: go mod download

- name: Build
run: |
mkdir -p build_assets
go test -c -v -o build_assets/CryptoTestGO-${{ matrix.goos }}-${{ matrix.goarch }}-${{ matrix.goarm }} -trimpath -ldflags "-s -w -buildid=" ./...
- name: Rename Windows V2Ray
if: matrix.goos == 'windows'
run: |
cd ./build_assets || exit 1
mv CryptoTestGO-${{ matrix.goos }}-${{ matrix.goarch }}-${{ matrix.goarm }} CryptoTestGO-${{ matrix.goos }}-${{ matrix.goarch }}-${{ matrix.goarm }}.exe
- name: Upload files to GitHub release (Windows)
uses: svenstaro/upload-release-action@v2
if: matrix.goos == 'windows'
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file_glob: true
file: ./build_assets/CryptoTestGO-${{ matrix.goos }}-${{ matrix.goarch }}-${{ matrix.goarm }}.exe
tag: ${{ github.ref }}

- name: Upload files to GitHub release (Others)
uses: svenstaro/upload-release-action@v2
if: matrix.goos != 'windows'
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file_glob: true
file: ./build_assets/CryptoTestGO-${{ matrix.goos }}-${{ matrix.goarch }}-${{ matrix.goarm }}
tag: ${{ github.ref }}

0 comments on commit 20c1430

Please sign in to comment.