Skip to content

Commit 3d9bac3

Browse files
committed
Publish starting from 0.2.1
1 parent 9f4da5d commit 3d9bac3

File tree

1 file changed

+40
-42
lines changed

1 file changed

+40
-42
lines changed

.github/workflows/npm-publish.yml

Lines changed: 40 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,6 @@ name: npm-publish
33
on:
44
release:
55
types: [published]
6-
push:
7-
paths:
8-
- "web/packages/api/**"
9-
- "web/packages/base-types/**"
10-
- "web/packages/registry/**"
11-
branches:
12-
- main
136
workflow_dispatch:
147
inputs:
158
version:
@@ -63,21 +56,25 @@ jobs:
6356
6457
- name: Determine new version
6558
id: new_version
59+
if: github.event_name != 'release'
6660
run: |
67-
# Get the most recent tag in the format web-api-v<version>
68-
current_tag=$(git tag --list "web-api-v*" --sort=-v:refname | head -n 1)
61+
# Get the most recent tag in the format @snowbridge/api@<version>
62+
current_tag=$(git tag --list "@snowbridge/api@*" --sort=-v:refname | head -n 1)
6963
echo "Current tag: $current_tag"
70-
current_version=$(echo $current_tag | sed -E 's/web-api-v//')
64+
current_version=$(echo $current_tag | sed -E 's/@snowbridge\/api@//')
7165
echo "Current version: $current_version"
7266
67+
# Install semver
68+
npm install semver
69+
7370
if [ -n "${{ github.event.release.tag_name }}" ]; then
7471
echo "Using version from release tag: ${{ github.event.release.tag_name }}"
7572
new_version="${{ github.event.release.tag_name }}"
7673
elif [ -n "${{ github.event.inputs.version }}" ]; then
7774
echo "Using version from input: ${{ github.event.inputs.version }}"
7875
new_version="${{ github.event.inputs.version }}"
7976
elif [ -z "$current_version" ]; then
80-
new_version="1.0.0"
77+
new_version="0.2.1"
8178
else
8279
echo "No release tag or input version provided, incrementing patch version."
8380
new_version=$(npx semver $current_version -i patch)
@@ -89,27 +86,53 @@ jobs:
8986
9087
- name: Set version in package.json
9188
working-directory: web
89+
if: github.event_name != 'release'
9290
run: |
9391
/bin/bash set-version.sh ${{ steps.new_version.outputs.version }}
9492
93+
- name: Publish Base Types
94+
working-directory: web/packages/base-types
95+
run: |
96+
pnpm publish --no-git-checks --access public
97+
98+
- name: Publish Contracts
99+
working-directory: web/packages/contracts
100+
run: |
101+
pnpm publish --no-git-checks --access public
102+
103+
- name: Publish Contract Types
104+
working-directory: web/packages/contract-types
105+
run: |
106+
pnpm publish --no-git-checks --access public
107+
108+
- name: Publish API
109+
working-directory: web/packages/api
110+
run: |
111+
pnpm publish --no-git-checks --access public
112+
113+
- name: Publish Registry
114+
working-directory: web/packages/registry
115+
run: |
116+
pnpm publish --no-git-checks --access public
117+
95118
- name: Create new tag
96119
id: create_tag
97-
if: github.ref == 'refs/heads/main' && github.event_name != 'release'
120+
if: github.event_name != 'release'
98121
run: |
99-
tag_name="web-api-v${{ steps.new_version.outputs.version }}"
122+
tag_name="@snowbridge/api@${{ steps.new_version.outputs.version }}"
100123
echo "Tag name: $tag_name"
101124
echo "tag=$tag_name" >> $GITHUB_OUTPUT
102125
git tag $tag_name
103126
104127
- name: Push new tag
105128
id: push_tag
106-
if: github.ref == 'refs/heads/main' && github.event_name != 'release'
129+
if: github.event_name != 'release'
107130
run: |
108131
git push origin --tags
109132
110-
- name: "Build Changelog"
133+
- name: Build Changelog
111134
id: build_changelog
112-
if: github.ref == 'refs/heads/main' && github.event_name != 'release'
135+
if: github.event_name != 'release'
113136
uses: mikepenz/release-changelog-builder-action@v4
114137
with:
115138
configurationJson: |
@@ -127,7 +150,7 @@ jobs:
127150

128151
- name: Create a GitHub Release
129152
id: create_release
130-
if: github.ref == 'refs/heads/main' && github.event_name != 'release'
153+
if: github.event_name != 'release'
131154
uses: actions/create-release@v1
132155
env:
133156
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -138,28 +161,3 @@ jobs:
138161
${{steps.build_changelog.outputs.changelog}}
139162
draft: false
140163
prerelease: false
141-
142-
- name: Publish Base Types
143-
working-directory: web/packages/base-types
144-
run: |
145-
pnpm publish --no-git-checks --access public
146-
147-
- name: Publish Contracts
148-
working-directory: web/packages/contracts
149-
run: |
150-
pnpm publish --no-git-checks --access public
151-
152-
- name: Publish Contract Types
153-
working-directory: web/packages/contract-types
154-
run: |
155-
pnpm publish --no-git-checks --access public
156-
157-
- name: Publish API
158-
working-directory: web/packages/api
159-
run: |
160-
pnpm publish --no-git-checks --access public
161-
162-
- name: Publish Registry
163-
working-directory: web/packages/registry
164-
run: |
165-
pnpm publish --no-git-checks --access public

0 commit comments

Comments
 (0)