build: permit SemVer pre-release publication
[poolifier.git] / .github / workflows / npmpublish.yml
index a2f85f19362693f3ff290cf2266f1584703b35bf..2a72a4d8a3633e9c1ad8ab05a5ab53cddf59b52b 100644 (file)
@@ -10,28 +10,26 @@ jobs:
 
     steps:
       - name: Checkout
-        uses: actions/checkout@v2
+        uses: actions/checkout@v3
 
       - name: Setup Node
-        uses: actions/setup-node@v2
+        uses: actions/setup-node@v3
         with:
-          node-version: 14
+          node-version: '18.x'
 
       - name: Install
         run: npm ci
 
-      - name: Production Build
-        run: npm run build:prod
+      - name: Tests & Coverage
+        run: |
+          npm run test
+          npm run coverage
 
       - name: Lint
         run: npm run lint
 
-      - name: Production Tests & Coverage
-        run: |
-          npm run test:prod
-          npm run coverage
-        env:
-          CI: true
+      - name: Production Build
+        run: npm run build:prod
 
   publish-npm:
     needs: build
@@ -39,17 +37,17 @@ jobs:
 
     steps:
       - name: Checkout
-        uses: actions/checkout@v2
+        uses: actions/checkout@v3
 
       - name: Setup Node
-        uses: actions/setup-node@v2
+        uses: actions/setup-node@v3
         with:
-          node-version: 14
+          node-version: '18.x'
           registry-url: https://registry.npmjs.org/
 
       - name: Read package.json version
-        uses: tyankatsu0105/read-package-version-actions@v1
         id: package-version
+        uses: jaywcjlove/github-action-package@main
 
       - name: Install
         run: npm ci
@@ -58,10 +56,16 @@ jobs:
         if: ${{ contains(steps.package-version.outputs.version, '-') == false }}
         run: npm publish
         env:
-          NODE_AUTH_TOKEN: ${{secrets.npm_token}}
+          NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
 
-      - name: Publish Beta
-        if: ${{ contains(steps.package-version.outputs.version, 'beta') }}
-        run: npm publish --tag beta
+      - name: Publish Pre-Release
+        if: ${{ contains(steps.package-version.outputs.version, '-') == true }}
+        run: npm publish --tag next
         env:
-          NODE_AUTH_TOKEN: ${{secrets.npm_token}}
+          NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
+
+      # - name: Publish Beta Release
+      #   if: ${{ contains(steps.package-version.outputs.version, 'beta') == true }}
+      #   run: npm publish --tag beta
+      #   env:
+      #     NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}