Merge pull request #361 from psiphiorg/patch-2 #49
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
name: build-and-deploy-codewithrockstar.com | |
on: | |
# Run after the engine is rebuilt | |
workflow_run: | |
workflows: ['release-rockstar-engine'] | |
types: [completed] | |
branches: ['main'] | |
# Run after any website source files are changed | |
push: | |
branches: ["main"] | |
paths: | |
- 'codewithrockstar.com/**' | |
- 'codemirror-lang-rockstar/**' | |
- '.github/workflows/publish-codewithrockstar.com.yml' | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages | |
permissions: | |
contents: read | |
pages: write | |
id-token: write | |
# Allow one concurrent deployment | |
concurrency: | |
group: "pages" | |
cancel-in-progress: true | |
jobs: | |
build-main-site: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup Ruby | |
uses: ruby/setup-ruby@v1 | |
with: | |
ruby-version: '3.3' # Not needed with a .ruby-version file | |
bundler-cache: true # runs 'bundle install' and caches installed gems automatically | |
cache-version: 0 # Increment this number if you need to re-download cached gems | |
working-directory: ./codewithrockstar.com | |
- name: Setup Pages | |
id: pages | |
uses: actions/configure-pages@v4 | |
- name: fetch rockstar-wasm-binary from cache | |
uses: actions/cache/restore@v4 | |
id: restore-cached-wasm-binary | |
with: | |
enableCrossOsArchive: true | |
path: rockstar-wasm-binary | |
key: rockstar-wasm-binary | |
- name: Copy WASM binaries into site source | |
run: cp -r rockstar-wasm-binary/ codewithrockstar.com/wasm/ | |
- name: build CodeMirror editor bundle with Rockstar language support | |
run: | | |
cd cm-lang-rockstar | |
npm install | |
npm run test | |
npm run prepare | |
- name: Build codewithrockstar.com site | |
run: | | |
cd codewithrockstar.com | |
ls -l /home/runner/work/rockstar/rockstar/codewithrockstar.com/examples/01-getting-started/hello-world.rock | |
bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" | |
env: | |
JEKYLL_ENV: production | |
- name: Upload artifact | |
uses: actions/upload-pages-artifact@v3 | |
with: | |
path: ./codewithrockstar.com/_site | |
deploy: | |
environment: | |
name: github-pages | |
url: ${{ steps.deployment.outputs.page_url }} | |
runs-on: ubuntu-latest | |
needs: build-main-site | |
steps: | |
- name: Deploy to GitHub Pages | |
id: deployment | |
uses: actions/deploy-pages@v4 |