name: Release on: release: types: [published] permissions: contents: read env: CI: true jobs: build: runs-on: ubuntu-latest strategy: matrix: node-version: [12] steps: - uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} registry-url: 'https://registry.npmjs.org' # cache: 'npm' # # - name: Use cached node_modules # id: cache # uses: actions/cache@v3 # with: # path: node_modules # key: nodeModules-${{ hashFiles('**/package-lock.json') }}-${{ matrix.node-version }} # restore-keys: | # nodeModules- - name: Install dependencies # if: steps.cache.outputs.cache-hit != 'true' run: npm install - name: Test run: npm test - name: Calculate environment variables run: | echo "RELEASE_CHANNEL=$(npm run release-channel --silent)" >> $GITHUB_ENV echo "TAILWINDCSS_VERSION=$(node -e 'console.log(require(`./package.json`).version);')" >> $GITHUB_ENV - name: Publish run: npm publish --tag ${{ env.RELEASE_CHANNEL }} env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} - name: Trigger Tailwind Play update if: env.RELEASE_CHANNEL == 'latest' uses: actions/github-script@v6 with: github-token: ${{ secrets.TAILWIND_PLAY_TOKEN }} script: | await github.rest.actions.createWorkflowDispatch({ owner: 'tailwindlabs', repo: 'play.tailwindcss.com', ref: 'master', workflow_id: 'upgrade-tailwindcss.yml', inputs: { version: '${{ env.TAILWINDCSS_VERSION }}' } })