| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- name: Build
- "on":
- "push":
- "tags":
- - "v*"
- "branches":
- - "*"
- "pull_request":
- jobs:
- build:
- runs-on: ubuntu-latest
- env:
- GO111MODULE: "on"
- steps:
- - uses: actions/checkout@master
- - uses: actions/setup-go@v2
- with:
- go-version: 1.17.6
- - name: Prepare environment
- run: |-
- RELEASE_VERSION="${GITHUB_REF##*/}"
- if [[ "${RELEASE_VERSION}" != v* ]]; then RELEASE_VERSION='dev'; fi
- echo "RELEASE_VERSION=\"${RELEASE_VERSION}@${GITHUB_SHA:0:10}\"" | tee -a $GITHUB_ENV
- go mod vendor
- # Test
- - name: Unit Testing
- run: go test .
- # Win
- - run: GOOS=windows GOARCH=386 VERSION=${RELEASE_VERSION} make release
- - run: GOOS=windows GOARCH=amd64 VERSION=${RELEASE_VERSION} make release
- - run: GOOS=windows GOARCH=arm64 VERSION=${RELEASE_VERSION} make release
- # MacOS
- - run: GOOS=darwin GOARCH=amd64 VERSION=${RELEASE_VERSION} make release
- - run: GOOS=darwin GOARCH=arm64 VERSION=${RELEASE_VERSION} make release
- # Linux X86/AMD64
- - run: GOOS=linux GOARCH=386 VERSION=${RELEASE_VERSION} make release
- - run: GOOS=linux GOARCH=amd64 VERSION=${RELEASE_VERSION} make release
- # Linux ARM
- - run: GOOS=linux GOARCH=arm GOARM=6 VERSION=${RELEASE_VERSION} make release
- - run: GOOS=linux GOARCH=arm64 VERSION=${RELEASE_VERSION} make release
- # Linux MIPS/MIPSLE
- - run: GOOS=linux GOARCH=mips GOMIPS=softfloat VERSION=${RELEASE_VERSION} make release
- - run: GOOS=linux GOARCH=mipsle GOMIPS=softfloat VERSION=${RELEASE_VERSION} make release
- # FreeBSD X86
- - run: GOOS=freebsd GOARCH=386 VERSION=${RELEASE_VERSION} make release
- - run: GOOS=freebsd GOARCH=amd64 VERSION=${RELEASE_VERSION} make release
- # FreeBSD ARM/ARM64
- - run: GOOS=freebsd GOARCH=arm GOARM=6 VERSION=${RELEASE_VERSION} make release
- - run: GOOS=freebsd GOARCH=arm64 VERSION=${RELEASE_VERSION} make release
- - run: ls -l build/aliddns-*
- - name: Create release
- if: startsWith(github.ref, 'refs/tags/v')
- id: create_release
- uses: actions/create-release@v1
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- with:
- tag_name: ${{ github.ref }}
- release_name: Release ${{ github.ref }}
- draft: false
- prerelease: false
- - name: Upload
- if: startsWith(github.ref, 'refs/tags/v')
- uses: xresloader/upload-to-github-release@v1
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- with:
- file: "build/aliddns-*.tar.gz;build/aliddns-*.zip"
- tags: true
- draft: false
|