diff options
-rw-r--r-- | .github/workflows/release.yml | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..b11ddd0 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,31 @@ +name: release + +on: + push: + tags: ["v*"] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3.1.0 + - uses: erlef/setup-beam@v1.16.0 + with: + otp-version: "26.0.2" + gleam-version: "0.30.5" + - run: cargo install tomlq + - run: | + if [ "v$(tomlq version -f gleam.toml)" == "${{ github.ref_name }}" ]; then + exit 0 + fi + echo "tag does not match version in gleam.toml, refusing to publish" + exit 1 + - run: gleam format --check src test + - run: gleam test --target erlang + - run: gleam test --target javascript + - run: gleam publish -y + env: + HEXPM_USER: ${{ secrets.HEX_USERNAME }} + HEXPM_PASS: ${{ secrets.HEX_PASSWORD }} + + - uses: softprops/action-gh-release@v1 |