name: "Prepare Release" on: push: tags: - "[0-9][0-9][0-9][0-9].[0-9][0-9].[0-9]+" # YYYY.MM.MICRO defaults: run: working-directory: ./pyscript.core jobs: prepare-release: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Install node uses: actions/setup-node@v3 with: node-version: 18.x - name: Cache node modules uses: actions/cache@v3 env: cache-name: cache-node-modules with: # npm cache files are stored in `~/.npm` on Linux/macOS path: ~/.npm key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-build-${{ env.cache-name }}- ${{ runner.os }}-build- ${{ runner.os }}- - name: NPM Install run: npm install && npx playwright install - name: Build run: npm run build - name: Generate index.html working-directory: . run: sed 's#_PATH_#./#' ./public/index.html > ./pyscript.core/dist/index.html - name: Zip dist folder run: zip -r -q ./build.zip ./dist - name: Prepare Release uses: softprops/action-gh-release@v1 with: draft: true prerelease: true generate_release_notes: true files: ./build.zip