aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/release.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/release.yml')
-rw-r--r--.github/workflows/release.yml31
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