name: publish npm on: push: tags: - v*.*.* workflow_dispatch: permissions: contents: write jobs: publish-npm: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v3 with: fetch-depth: 0 - uses: actions/setup-node@v3 with: node-version: 16 registry-url: https://registry.npmjs.org/ - run: git tag --sort=-creatordate | head -n 1 - name: Get version id: get_version run: echo "VERSION=$(git tag --sort=-creatordate | head -n 1)" >> $GITHUB_OUTPUT - name: Get commit id id: get_commit_id run: echo "COMMIT_ID=$( git rev-parse --short "$GITHUB_SHA" )" >> $GITHUB_OUTPUT - run: echo "${{ steps.get_version.outputs.VERSION }}-${{ steps.get_commit_id.outputs.COMMIT_ID }}" - name: Set version run: | sudo apt-get install jq jq '.version="${{ steps.get_version.outputs.VERSION }}-${{ steps.get_commit_id.outputs.COMMIT_ID }}"' package.json > package.json.new mv package.json.new package.json - name: Generate SDK run: | npm cache clean --force npm install @openapitools/openapi-generator-cli -g - run: npm i - run: npm run start - run: npm publish --access public env: NODE_AUTH_TOKEN: ${{secrets.npm_token}}