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 foundryvtt-dice-tower-${{ 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 }} - name: Create Release id: create_release if: github.ref_name == 'main' uses: actions/create-release@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: ${{ steps.version.outputs.VERSION }} release_name: Release ${{ steps.version.outputs.VERSION }} - name: Upload Release Asset id: upload-release-asset if: github.ref_name == 'main' uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} asset_path: dist/foundryvtt-dice-tower-${{ steps.version.outputs.VERSION }}.zip asset_name: "Release ${{ steps.version.outputs.VERSION }}" asset_content_type: application/zip