name: NodeJS + Grunt + Jekyll - Deploy on: push: branches: [ "main" ] pull_request: branches: [ "main" ] jobs: build-deploy: runs-on: ubuntu-latest strategy: matrix: node-version: [18.x, 20.x, 22.x] steps: - uses: actions/checkout@v4 - name: Setup Node.js ${{ matrix.node-version }} uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} - name: Install Node dependencies run: npm install - name: Run Grunt tasks run: grunt - name: Setup Ruby for Jekyll uses: ruby/setup-ruby@v1 with: ruby-version: '3.1' bundler-cache: true - name: Install Jekyll dependencies run: bundle install - name: Build Jekyll site run: bundle exec jekyll build --trace - name: Deploy to GitHub Pages uses: peaceiris/actions-gh-pages@v3 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./_site