diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..23abde4 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,53 @@ +name: Deploy Jekyll site to Pages + +on: + push: + branches: [ main ] + workflow_dispatch: + +permissions: + contents: read + pages: write + id-token: write + +concurrency: + group: "pages" + cancel-in-progress: false + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: '3.2' + bundler-cache: true + + - name: Setup Pages + uses: actions/configure-pages@v4 + + - name: Build with Jekyll + run: | + bundle exec jekyll build --baseurl "${{ steps.page_url.outputs.base_path }}" + env: + JEKYLL_ENV: production + + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + with: + path: ./_site + + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/Gemfile b/Gemfile index f950238..f363d12 100644 --- a/Gemfile +++ b/Gemfile @@ -1,12 +1,27 @@ source 'https://rubygems.org' -# GitHub Pages compatible gems -gem 'github-pages', group: :jekyll_plugins +# Jekyll and core dependencies +gem 'jekyll', '~> 4.3.0' gem 'jekyll-feed', '~> 0.12' gem 'jekyll-sitemap' +gem 'jekyll-seo-tag' -# If you want to use GitHub Pages, uncomment the line below and comment out the jekyll gem above -# gem 'github-pages', group: :jekyll_plugins +# Markdown processor +gem 'kramdown-parser-gfm' -# For local development, you can use a newer Jekyll version -# gem 'jekyll', '~> 4.3.0' \ No newline at end of file +# Syntax highlighting +gem 'rouge' + +# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem +# and associated library. +platforms :mingw, :x64_mingw, :mswin, :jruby do + gem 'tzinfo', '>= 1', '< 3' + gem 'tzinfo-data' +end + +# Performance-booster for watching directories on Windows +gem 'wdm', '~> 0.1.1', :platforms => [:mingw, :x64_mingw, :mswin] + +# Lock `http_parser.rb` gem to `v0.6.x` on JRuby builds since newer versions of the gem +# do not have a Java counterpart. +gem 'http_parser.rb', '~> 0.6.0', :platforms => [:jruby] \ No newline at end of file diff --git a/_config.yml b/_config.yml index 8912a75..c08a5b6 100644 --- a/_config.yml +++ b/_config.yml @@ -35,6 +35,7 @@ defaults: plugins: - jekyll-feed - jekyll-sitemap + - jekyll-seo-tag # Exclude files from processing exclude: