Update publish.yml #47
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# this workflow builds the cv, | |
# uploads it to the GitHub release that triggered the job | |
# and uploads built files to GitHub pages | |
name: build cv and publish to GitHub release and github pages site | |
on: | |
push: | |
tags: | |
- "*" | |
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages | |
permissions: | |
contents: read | |
pages: write | |
id-token: write | |
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. | |
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. | |
concurrency: | |
group: "pages" | |
cancel-in-progress: false | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup Pages | |
uses: actions/configure-pages@v4 | |
- name: Setup Bun | |
uses: oven-sh/setup-bun@v1 | |
- name: Install dependencies | |
run: bun install | |
- name: Test | |
run: bun run test | |
- name: Build html | |
run: bun run build-html | |
- name: Build pdf | |
run: bun run build-pdf | |
- name: Rename files | |
run: | | |
mv build/cv.html build/index.html | |
mv build/cv.pdf build/Alfie-Renn-CV.pdf | |
- name: Copy build files | |
run: cp -r build/* _site/ | |
- name: Copy static files | |
run: cp -r public/* _site/ | |
- name: Upload GitHub Pages artifact | |
uses: actions/upload-pages-artifact@v2 | |
- name: Save build folder as artifact | |
uses: actions/upload-artifact@v3 | |
with: | |
name: build | |
path: build | |
- name: Save pdf as artifact | |
uses: actions/upload-artifact@v2 | |
with: | |
name: Alfie-Renn-CV.pdf | |
path: build/Alfie-Renn-CV.pdf | |
deploy: | |
environment: | |
name: github-pages | |
url: ${{ steps.deployment.outputs.page_url }} | |
runs-on: ubuntu-latest | |
needs: build | |
steps: | |
- name: Deploy to GitHub Pages | |
id: deployment | |
uses: actions/deploy-pages@v3 | |
publish-to-release: | |
needs: build | |
runs-on: ubuntu-latest | |
permissions: | |
contents: write | |
steps: | |
- name: Download artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: build | |
path: build | |
- name: Zip build files | |
run: zip -r build.zip build | |
- name: Upload build to release | |
uses: svenstaro/upload-release-action@v2 | |
with: | |
repo_token: ${{ secrets.GITHUB_TOKEN }} | |
file: build.zip | |
asset_name: build.zip | |
tag: ${{ github.ref }} | |
overwrite: true | |
- name: Upload pdf to release | |
uses: svenstaro/upload-release-action@v2 | |
with: | |
repo_token: ${{ secrets.GITHUB_TOKEN }} | |
file: build/Alfie-Renn-CV.pdf | |
asset_name: Alfie-Renn-CV.pdf | |
tag: ${{ github.ref }} | |
overwrite: true |