name: ci on: [ push, pull_request ] jobs: ci: runs-on: ubuntu-latest permissions: contents: write pull-requests: write statuses: write steps: - name: Check out repository code uses: actions/checkout@v4 - name: Setup Node uses: actions/setup-node@v4 with: node-version: 20 - id: version name: version run: echo "VERSION=$(npm --silent run version)" >> ${GITHUB_OUTPUT} - name: echo version run: echo ${{ steps.version.outputs.VERSION }} - name: npm install run: npm install - name: build run: npm run build - name: zip release if: github.ref_name == 'main' working-directory: dist run: zip -r release-${{ steps.version.outputs.VERSION }}.zip . - name: create tag if: github.ref_name == 'main' run: | git config user.email "ci@git.arindy.de" git config user.name "gitea" git tag ${{ steps.version.outputs.VERSION }} -m "release ${{ steps.version.outputs.VERSION }}" git push origin main git push origin ${{ steps.version.outputs.VERSION }} - uses: ncipollo/release-action@v1 with: artifacts: "dist/release-${{ steps.version.outputs.VERSION }}.zip" tag: ${{ steps.version.outputs.VERSION }} artifactErrorsFailBuild: true removeArtifacts: true