diff --git a/.github/workflows/goreleaser.yml b/.github/workflows/goreleaser.yml new file mode 100644 index 0000000..b4f4b8d --- /dev/null +++ b/.github/workflows/goreleaser.yml @@ -0,0 +1,58 @@ +name: goreleaser + +on: + pull_request: + push: + # run only against tags + tags: + - "*" + +permissions: + contents: write + +jobs: + goreleaser: + runs-on: ubuntu-latest + steps: + - name: Login to Github Container registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + - + name: Set up QEMU + uses: docker/setup-qemu-action@v3 + - + name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - + name: Set up Go + uses: actions/setup-go@v4 + - + name: Run GoReleaser build only + uses: goreleaser/goreleaser-action@v5 + if: "!startsWith(github.ref, 'refs/tags/')" + with: + distribution: goreleaser + version: '~> v1' + args: release --clean --skip-publish --skip-validate + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - + name: Run GoReleaser release and publish + uses: goreleaser/goreleaser-action@v5 + if: startsWith(github.ref, 'refs/tags/') + with: + distribution: goreleaser + version: '~> v1' + args: release --clean + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.goreleaser.yml b/.goreleaser.yml index 05e7e16..e8b96d1 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -80,3 +80,16 @@ docker_manifests: image_templates: - "ghcr.io/lokalise/lokalise-cli-2:{{ .Tag }}-arm64v8" - "ghcr.io/lokalise/lokalise-cli-2:{{ .Tag }}-amd64" + +release: + github: + owner: lokalise + name: lokalise-cli-2-go + draft: true + replace_existing_draft: true + replace_existing_artifacts: true + target_commitish: "{{ .Commit }}" + prerelease: auto + make_latest: true + mode: append + name_template: "Release {{ .Tag }}"