Skip to content

Bug/Fix CI artifacts (#42) #8

Bug/Fix CI artifacts (#42)

Bug/Fix CI artifacts (#42) #8

Workflow file for this run

name: "Vite Plugin Release"
on:
push:
branches: [main]
jobs:
build_and_test:
name: "Build and Test"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- run: npm ci
- run: npm run build
- name: Archive production artifacts
if: always()
uses: actions/upload-artifact@v4
with:
name: package-dist
retention-days: 30
path: packages/vite-plugin-posthog/dist
- name: Create env file
run: |
cd apps/example-react
touch .env
echo VITE_POSTHOG_KEY=${{secrets.VITE_POSTHOG_KEY}} >> .env
echo VITE_CHECK_FOR_DEV=false >> .env
echo VITE_APP_TITLE=Example >> .env
cd ../..
- name: "Build Vite App"
run: npm run example:build
- name: Install Playwright Browsers
run: npx playwright install --with-deps chromium
- name: Run Playwright tests
run: npx playwright test
- uses: actions/upload-artifact@v4
if: always()
with:
name: playwright-report
path: playwright-report/
retention-days: 30
publish:
runs-on: ubuntu-latest
needs: build_and_test
name: "Publish"
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- run: npm ci
- name: Download production artifacts
uses: actions/download-artifact@v4
with:
name: package-dist
path: packages/vite-plugin-posthog/dist
- uses: JS-DevTools/npm-publish@v3
id: publish
with:
token: ${{ secrets.NPM_AUTH_TOKEN }}
package: packages/vite-plugin-posthog
- name: Bump version and push tag
if: ${{ steps.publish.outputs.type }}
id: tag_version
uses: mathieudutour/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
custom_tag: v${{steps.publish.outputs.version}}
tag_prefix: vite-plugin-posthog_
- name: Create a GitHub release
if: ${{ steps.publish.outputs.type }}
uses: ncipollo/release-action@v1
with:
tag: ${{ steps.tag_version.outputs.new_tag }}
name: ${{ steps.tag_version.outputs.new_tag }}
body: ${{ steps.tag_version.outputs.changelog }}
generateReleaseNotes: true