diff --git a/.github/workflows/check-links.yml b/.github/workflows/check-links.yml deleted file mode 100644 index e3b0cf6..0000000 --- a/.github/workflows/check-links.yml +++ /dev/null @@ -1,30 +0,0 @@ -name: "Check markdown links" - -on: - push: - branches: - - main - pull_request: - workflow_dispatch: - -jobs: - build-and-check: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - with: - submodules: recursive - - - name: Setup Pages - uses: actions/configure-pages@v5 - - name: Build - uses: actions/jekyll-build-pages@v1 - - - name: Check links - uses: lycheeverse/lychee-action@v2.0.0 - with: - # excluded # and ## as they used in the gallery - args: > - --no-progress --include-fragments --offline '_site' - --exclude '##?$' diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..4a7efa8 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,61 @@ +name: "Build and deploy" + +on: + push: + branches: + - master + pull_request: + workflow_dispatch: + +jobs: + build-and-check: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Setup Ruby + uses: ruby/setup-ruby@8575951200e472d5f2d95c625da0c7bec8217c42 # v1.161.0 + with: + ruby-version: '3.1' + bundler-cache: true + cache-version: 0 + + - name: Setup Pages + id: pages + uses: actions/configure-pages@v5 + + - name: Build with Jekyll + run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" + env: + JEKYLL_ENV: production + + - name: Check links + uses: lycheeverse/lychee-action@v2.0.0 + with: + # excluded # and ## as they used in the gallery + args: > + --no-progress --include-fragments --offline '_site' + --exclude '##?$' + + - name: Upload artifact + id: deployment + uses: actions/upload-pages-artifact@v3 + with: + path: _site/ + + deploy: + needs: build-and-check + permissions: + pages: write + id-token: write + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..c004bff --- /dev/null +++ b/Gemfile @@ -0,0 +1,27 @@ +source "https://rubygems.org" + +gem "jekyll", "~> 3.9.0" +gem "minima", "~> 2.0" + +group :jekyll_plugins do + gem "jekyll-sitemap", "~> 1.4.0" + gem "jekyll-paginate-v2", "~> 3.0.0" + gem "jekyll-commonmark-ghpages", "~> 1.3.1" + gem "jekyll-feed", "~> 0.15.1" + gem "jekyll-redirect-from", "~> 0.16.0" +end + +# Windows does not include zoneinfo files, so bundle the tzinfo-data gem +# and associated library. +platforms :mingw, :x64_mingw, :mswin, :jruby do + gem "tzinfo", "~> 1.2" + gem "tzinfo-data" +end + +# Performance-booster for watching directories on Windows +gem "wdm", "~> 0.1.0", :platforms => [:mingw, :x64_mingw, :mswin] + +# kramdown v2 ships without the gfm parser by default. If you're using +# kramdown v1, comment out this line. +gem "kramdown-parser-gfm" +