chore: combine workflows

This commit is contained in:
wwqgtxx 2023-02-19 01:23:06 +08:00
parent cd7d9fc4f5
commit 527fc2790b
4 changed files with 45 additions and 67 deletions

View File

@ -1,22 +0,0 @@
name: Build All
on:
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Check out code into the Go module directory
uses: actions/checkout@v3
- name: Setup Go
uses: actions/setup-go@v3
with:
go-version: '1.20'
check-latest: true
cache: true
- name: Build
run: make all
- name: Release
uses: softprops/action-gh-release@v1
with:
files: bin/*
draft: true

View File

@ -1,4 +1,4 @@
name: Prerelease name: Build
on: on:
workflow_dispatch: workflow_dispatch:
push: push:
@ -8,10 +8,14 @@ on:
branches: branches:
- Alpha - Alpha
- Beta - Beta
- Meta
tags:
- "v*"
pull_request_target: pull_request_target:
branches: branches:
- Alpha - Alpha
- Beta - Beta
- Meta
env: env:
REGISTRY: docker.io REGISTRY: docker.io
jobs: jobs:
@ -93,7 +97,12 @@ jobs:
shell: bash shell: bash
- name: Set variables - name: Set variables
if: ${{github.ref_name==''}} if: ${{github.ref_name=='Meta'}}
run: echo "VERSION=meta-$(git rev-parse --short HEAD)" >> $GITHUB_ENV
shell: bash
- name: Set variables
if: ${{github.ref_name=='' || github.ref_type=='tag'}}
run: echo "VERSION=$(git describe --tags)" >> $GITHUB_ENV run: echo "VERSION=$(git describe --tags)" >> $GITHUB_ENV
shell: bash shell: bash
@ -103,6 +112,7 @@ jobs:
echo "REPO=${{ github.repository }}" >> $GITHUB_ENV echo "REPO=${{ github.repository }}" >> $GITHUB_ENV
echo "ShortSHA=$(git rev-parse --short ${{ github.sha }})" >> $GITHUB_ENV echo "ShortSHA=$(git rev-parse --short ${{ github.sha }})" >> $GITHUB_ENV
echo "BUILDTIME=$(date -u)" >> $GITHUB_ENV echo "BUILDTIME=$(date -u)" >> $GITHUB_ENV
echo "BRANCH=$(git rev-parse --abbrev-ref HEAD)" >> $GITHUB_ENV
shell: bash shell: bash
- name: Set ENV - name: Set ENV
@ -118,7 +128,7 @@ jobs:
check-latest: true check-latest: true
- name: Test - name: Test
if: ${{ github.ref_name=='Beta' && matrix.job.id=='1' && matrix.job.type=='WithoutCGO' }} if: ${{ matrix.job.id=='1' && matrix.job.type=='WithoutCGO' }}
run: | run: |
go test ./... go test ./...
@ -158,7 +168,7 @@ jobs:
ANDROID_NDK_HOME: ${{ steps.setup-ndk.outputs.ndk-path }} ANDROID_NDK_HOME: ${{ steps.setup-ndk.outputs.ndk-path }}
run: | run: |
mkdir bin mkdir bin
xgo --branch ${{ github.ref_name }} --targets="${{ matrix.job.target }}" --tags="${TAGS}" -ldflags="${LDFLAGS}" --out bin/${NAME} github.com/${{ github.repository }} xgo --targets="${{ matrix.job.target }}" --tags="${TAGS}" -ldflags="${LDFLAGS}" --out bin/${NAME} ./
- name: Rename - name: Rename
if: ${{ matrix.job.type=='WithCGO' }} if: ${{ matrix.job.type=='WithCGO' }}
@ -189,8 +199,9 @@ jobs:
name: artifact name: artifact
path: bin/ path: bin/
Upload: Upload-Prerelease:
permissions: write-all permissions: write-all
if: ${{ github.ref_type=='branch' }}
needs: [ Build ] needs: [ Build ]
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
@ -217,7 +228,7 @@ jobs:
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload Alpha - name: Upload Prerelease
uses: softprops/action-gh-release@v1 uses: softprops/action-gh-release@v1
if: ${{ success() }} if: ${{ success() }}
with: with:
@ -226,6 +237,31 @@ jobs:
files: bin/* files: bin/*
prerelease: true prerelease: true
generate_release_notes: true generate_release_notes: true
Upload-Release:
permissions: write-all
if: ${{ github.ref_type=='tag' }}
needs: [ Build ]
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@v3
with:
name: artifact
path: bin/
- name: Display structure of downloaded files
run: ls -R
working-directory: bin
- name: Upload Release
uses: softprops/action-gh-release@v1
if: ${{ success() }}
with:
tag: ${{ github.ref_name }}
tag_name: ${{ github.ref_name }}
files: bin/*
generate_release_notes: true
Docker: Docker:
permissions: write-all permissions: write-all
needs: [ Build ] needs: [ Build ]

View File

@ -1,36 +0,0 @@
name: Release
on:
push:
tags:
- "v*"
jobs:
Build:
runs-on: ubuntu-latest
steps:
- name: Check out code into the Go module directory
uses: actions/checkout@v3
- name: Setup Go
uses: actions/setup-go@v3
with:
go-version: '1.20'
check-latest: true
cache: true
- name: Test
run: |
go test ./...
- name: Build
if: success()
env:
NAME: Clash.Meta
BINDIR: bin
run: make -j$(($(nproc) + 1)) releases
- name: Upload Release
uses: softprops/action-gh-release@v1
if: ${{ success() && startsWith(github.ref, 'refs/tags/')}}
with:
tag: ${{ github.ref }}
files: bin/*
generate_release_notes: true

View File

@ -457,7 +457,7 @@ func NewResolver(config Config) *Resolver {
inverse = true inverse = true
groupname = groupname[1:] groupname = groupname[1:]
} }
log.Debugln("adding geosite policy: %s inversed %s", groupname, inverse) log.Debugln("adding geosite policy: %s inversed %t", groupname, inverse)
matcher, err := NewGeoSite(groupname) matcher, err := NewGeoSite(groupname)
if err != nil { if err != nil {
continue continue