diff --git a/.github/workflows/goreleaser.yml b/.github/workflows/goreleaser.yml index 216920f5a0..86708eb3bb 100644 --- a/.github/workflows/goreleaser.yml +++ b/.github/workflows/goreleaser.yml @@ -4,6 +4,7 @@ on: push: tags: - "*" + jobs: goreleaser: runs-on: ubuntu-latest @@ -24,6 +25,10 @@ jobs: - name: Set up packr2 run: go get -u github.com/gobuffalo/packr/v2/packr2 + - name: Set up Snapcraft + run: | + sudo apt-get -yq --no-install-suggests --no-install-recommends install snapcraft + - name: Checkout uses: actions/checkout@v2 with: @@ -42,6 +47,12 @@ jobs: cd starport/interface/cli/starport packr2 -v + - name: Snapcraft Login + env: + SNAPCRAFT_LOGIN: ${{ secrets.SNAPCRAFT_LOGIN }} + run: | + snapcraft login --with <(echo "$SNAPCRAFT_LOGIN") + - name: Run GoReleaser uses: goreleaser/goreleaser-action@v2 with: diff --git a/.goreleaser.yml b/.goreleaser.yml index 28a3a37390..0d0afd01e2 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -6,13 +6,28 @@ builds: - amd64 - arm64 - brews: - name: "starport" description: "CLI tool for developing Cosmos SDK apps." homepage: "https://github.com/tendermint/starport" - github: + tap: owner: "tendermint" name: "homebrew-tap" install: | bin.install "starport" + +snapcrafts: + - name: starport + replacements: + darwin: macOS + summary: The easiest way to build a blockchain. + description: Starport is the easiest way to build blockchains. It is a developer-friendly interface to the Cosmos SDK, the world's most widely-used blockchain application framework. Starport generates boilerplate code for you, so you can focus on writing business logic. + grade: stable + confinement: strict + base: core18 + license: Apache-2.0 + publish: true + apps: + starport: + plugs: ["home", "personal-files"] + command: starport