diff --git a/.github/workflows/go.yml b/.github/workflows/build-test.yaml similarity index 100% rename from .github/workflows/go.yml rename to .github/workflows/build-test.yaml diff --git a/.github/workflows/create-release.yaml b/.github/workflows/create-release.yaml new file mode 100644 index 0000000..00973f8 --- /dev/null +++ b/.github/workflows/create-release.yaml @@ -0,0 +1,66 @@ +name: Create Release + +on: + push: + tags: + - 'v-test*' + +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + goos: [linux, darwin, windows] + goarch: [arm64, amd64] + + steps: + - name: Set up Go + uses: actions/setup-go@v5 + with: + go-version: '1.21.6' + + - name: Check out code + uses: actions/checkout@v4 + + - name: Get dependencies + run: go get -v -t -d ./... + + - name: Build + run: GOOS=${{ matrix.goos }} GOARCH=${{ matrix.goarch }} go build -v -o vault-kv-search-${{ matrix.goos }}-${{ matrix.goarch }} + + - name: Upload artifact + uses: actions/upload-artifact@v2 + with: + name: vault-kv-search-${{ matrix.goos }}-${{ matrix.goarch }} + path: ./vault-kv-search-${{ matrix.goos }}-${{ matrix.goos }} + + release: + needs: build + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Download artifacts + uses: actions/download-artifact@v2 + + - 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: true + prerelease: false + + - name: Upload Release Assets + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: ./vault-kv-search-${{ matrix.goos }}-${{ matrix.goarch }} + asset_name: vault-kv-search-${{ matrix.goos }}-${{ matrix.goarch }} + asset_content_type: application/octet-stream