Add downloadable slide deck to Workflows module (#480) #239
This file contains hidden or 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
| # ============================================================================= | |
| # MICROSOFT COPILOT STUDIO LABS - BUILD AND DEPLOY WORKFLOW | |
| # ============================================================================= | |
| # Builds Jekyll site (Minimal Mistakes theme) and deploys to GitHub Pages | |
| # ============================================================================= | |
| name: Build and Deploy | |
| concurrency: | |
| group: github-pages-deployment | |
| cancel-in-progress: true | |
| on: | |
| push: | |
| branches: [main] | |
| paths: | |
| - "_labs/**" | |
| - "_events/**" | |
| - "_workshops/**" | |
| - "_modules/**" | |
| - "_layouts/**" | |
| - "_includes/**" | |
| - "_data/**" | |
| - "assets/**" | |
| - "_config.yml" | |
| - "_config.feed.yml" | |
| - "index.md" | |
| - "about/**" | |
| - "events/**" | |
| - "labs/**" | |
| - "scripts/**" | |
| - "package.json" | |
| - ".github/workflows/build-and-deploy.yml" | |
| - "Gemfile" | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| pages: write | |
| id-token: write | |
| jobs: | |
| build-and-deploy: | |
| name: Build and Deploy | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 15 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: "3.3" | |
| bundler-cache: true | |
| - name: Setup Node | |
| uses: actions/setup-node@v5 | |
| with: | |
| node-version: "20" | |
| - name: Install feed deps | |
| run: npm install --no-audit --no-fund | |
| - name: Produce feed (own) | |
| run: node scripts/build-feed.js --out .feed-build/published | |
| - name: Consume feed and materialize | |
| run: node scripts/consume-feed.js --out .feed-build --feed-dir .feed-build/published | |
| - name: Build Jekyll from materialized feed | |
| run: bundle exec jekyll build --config _config.yml,_config.feed.yml | |
| env: | |
| JEKYLL_ENV: production | |
| - name: Publish feed alongside the site | |
| run: | | |
| mkdir -p _site/feed | |
| cp -r .feed-build/published/. _site/feed/ | |
| - name: Setup Pages | |
| uses: actions/configure-pages@v5 | |
| - name: Upload artifact | |
| uses: actions/upload-pages-artifact@v5 | |
| with: | |
| path: ./_site | |
| - name: Deploy to GitHub Pages | |
| uses: actions/deploy-pages@v5 |