|
@@ -0,0 +1,54 @@
|
|
|
|
+name: release
|
|
|
|
+on:
|
|
|
|
+ push:
|
|
|
|
+ # Sequence of patterns matched against refs/tags
|
|
|
|
+ tags:
|
|
|
|
+ - 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10
|
|
|
|
+
|
|
|
|
+jobs:
|
|
|
|
+
|
|
|
|
+ build:
|
|
|
|
+ name: Build
|
|
|
|
+ runs-on: ubuntu-latest
|
|
|
|
+ steps:
|
|
|
|
+
|
|
|
|
+ - name: Set up Go 1.13
|
|
|
|
+ uses: actions/setup-go@v1
|
|
|
|
+ with:
|
|
|
|
+ go-version: 1.13
|
|
|
|
+ id: go
|
|
|
|
+
|
|
|
|
+ - name: Check out code into the Go module directory
|
|
|
|
+ uses: actions/checkout@v2
|
|
|
|
+
|
|
|
|
+ - name: Get dependencies
|
|
|
|
+ run: |
|
|
|
|
+ go get -v -t -d ./cmd/tunasync
|
|
|
|
+ go get -v -t -d ./cmd/tunasynctl
|
|
|
|
+
|
|
|
|
+ - name: Build
|
|
|
|
+ run: |
|
|
|
|
+ make tunasync
|
|
|
|
+ make tunasynctl
|
|
|
|
+ tar -jcf build/tunasync-linux-bin.tar.bz2 -C build tunasync tunasynctl
|
|
|
|
+
|
|
|
|
+ - name: Create Release
|
|
|
|
+ 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 Release Asset
|
|
|
|
+ id: upload-release-asset
|
|
|
|
+ uses: actions/upload-release-asset@v1
|
|
|
|
+ env:
|
|
|
|
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
+ with:
|
|
|
|
+ upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps
|
|
|
|
+ asset_path: ./build/tunasync-linux-bin.tar.bz2
|
|
|
|
+ asset_name: tunasync-linux-bin.tar.bz2
|
|
|
|
+ asset_content_type: application/x-bzip2
|