mirror of
https://github.com/snachodog/just-the-docs.git
synced 2025-04-15 23:52:23 -06:00
This PR: - matricizes (?) the OS parameter: we now also test on `windows` and `macOS` - matricizes the Ruby version parameter: we now also test on Ruby 2.7 - loosens the `.gemspec` requirement for `bundler` to allow things greater than `2.3.5` - interestingly, this is because the Ruby 2.7 container has a **later** version of bundler than the 3.1 one! The last point makes this user-facing, and thus I'll trigger a release for this PR sometime soon. These only apply to the `jekyll-build` job. Here, I think we have a broader obligation to support various use-cases (maybe they're deploying on GitLab, generating files locally, etc.); in contrast, the `github-pages` gem is used exclusively for deploying to GitHub Pages, so we should try to match that environment exactly. This PR closes #1145.
68 lines
1.6 KiB
YAML
68 lines
1.6 KiB
YAML
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
|
|
name: CI
|
|
|
|
jobs:
|
|
jekyll-build:
|
|
name: Build (jekyll gem)
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
jekyll-version: [3.9, 4.3]
|
|
os: [ ubuntu-latest, macos-latest, windows-latest ]
|
|
ruby-version: [2.7, 3.1]
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Setup Ruby ${{ matrix.ruby-version }}
|
|
uses: ruby/setup-ruby@v1
|
|
with:
|
|
ruby-version: ${{ matrix.ruby-version }}
|
|
bundler-cache: false
|
|
- name: Bundle Install
|
|
run: bundle install
|
|
- name: Install Jekyll ${{ matrix.jekyll-version }}
|
|
run: gem install jekyll -v ${{ matrix.jekyll-version }}
|
|
- name: Init Search
|
|
run: bundle exec rake search:init
|
|
- name: Build Site
|
|
run: bundle exec jekyll build
|
|
|
|
github-pages-build:
|
|
name: Build (github-pages gem)
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Setup Ruby
|
|
uses: ruby/setup-ruby@v1
|
|
with:
|
|
ruby-version: '3.1'
|
|
bundler-cache: false
|
|
- name: Bundle Install
|
|
run: BUNDLE_GEMFILE=fixtures/Gemfile-github-pages bundle install
|
|
- name: Build Site
|
|
run: BUNDLE_GEMFILE=fixtures/Gemfile-github-pages bundle exec jekyll build
|
|
|
|
assets:
|
|
name: Test CSS and JS
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
matrix:
|
|
node-version: [18.x]
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
- run: npm install
|
|
- run: npm test
|