Giter Club home page Giter Club logo

jekyll-action's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

jekyll-action's Issues

Building in a with path directory

I'm working with the COSMOS project and I have a workflow yml as follows in my 'website' branch:

name: Build and deploy Jekyll site to GitHub Pages

on:
  push:
    branches:
      - website

jobs:
  github-pages:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2

      - uses: actions/checkout@v2
        with:
          ref: master
          path: COSMOS

      - uses: actions/cache@v1
        with:
          path: vendor/bundle
          key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
          restore-keys: |
            ${{ runner.os }}-gems-

      - uses: helaili/[email protected]
        env:
          JEKYLL_PAT: ${{ secrets.JEKYLL_PAT }}

While this works it ends up pushing our entire repo into the gh-pages branch since the COSMOS checkout is a nested directory. I tried the following to checkout both the website and COSMOS to different directories:

name: Build and deploy Jekyll site to GitHub Pages

on:
  push:
    branches:
      - website

jobs:
  github-pages:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
        with:
          path: jekyll_site

      - uses: actions/checkout@v2
        with:
          ref: master
          path: COSMOS

      - uses: actions/cache@v1
        with:
          path: vendor/bundle
          key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
          restore-keys: |
            ${{ runner.os }}-gems-

      - uses: helaili/[email protected]
        env:
          JEKYLL_PAT: ${{ secrets.JEKYLL_PAT }}
        with:
          jekyll_src: jekyll_site

However this failed with "Could not locate Gemfile":

Run helaili/[email protected]
  with:
    jekyll_src: jekyll_site
  env:
    JEKYLL_PAT: ***
/usr/bin/docker run --name d388ca49cccb514e9f926c4f7df2b8c43b_2a329a --label 3888d3 --workdir /github/workspace --rm -e JEKYLL_PAT -e INPUT_JEKYLL_SRC -e HOME -e GITHUB_JOB -e GITHUB_REF -e GITHUB_SHA -e GITHUB_REPOSITORY -e GITHUB_REPOSITORY_OWNER -e GITHUB_RUN_ID -e GITHUB_RUN_NUMBER -e GITHUB_ACTOR -e GITHUB_WORKFLOW -e GITHUB_HEAD_REF -e GITHUB_BASE_REF -e GITHUB_EVENT_NAME -e GITHUB_SERVER_URL -e GITHUB_API_URL -e GITHUB_GRAPHQL_URL -e GITHUB_WORKSPACE -e GITHUB_ACTION -e GITHUB_EVENT_PATH -e RUNNER_OS -e RUNNER_TOOL_CACHE -e RUNNER_TEMP -e RUNNER_WORKSPACE -e ACTIONS_RUNTIME_URL -e ACTIONS_RUNTIME_TOKEN -e ACTIONS_CACHE_URL -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" -v "/home/runner/work/COSMOS/COSMOS":"/github/workspace" 3888d3:88ca49cccb514e9f926c4f7df2b8c43b  "jekyll_site"
Starting the Jekyll Action
Could not locate Gemfile

When the execution fails, the exit code is 0

I gave a try to this github action and the first execution was green.
I was amazed since I did not configure anything.

Looking at the logs, I could find the following last line:

fatal: could not read Username for 'https://github.com': No such device or address

Would it be possible to have a non 0 exit code when the job execution fails?

Action breaks deploys using a custom domain

I have a repository for a project (not my username), e.g. project-name, that uses my custom domain, e.g. example.com.

After every successful run, the Custom Domain section is blank. This causes my site to 404 because Github doesn't know how to resolve my domain since the setting for it has been removed from the repository settings.

image

When I set it back to my custom domain, it works again.

This is my action:

# This is a basic workflow to help you get started with Actions

name: Github Pages Deployment

# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
on:
  push:
    branches: [ master ]

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
  # This workflow contains a single job called "build"
  build:
    # The type of runner that the job will run on
    runs-on: ubuntu-latest

    # Steps represent a sequence of tasks that will be executed as part of the job
    steps:
    # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
    - uses: actions/checkout@v2
    - uses: helaili/[email protected]
      env:
        JEKYLL_PAT: ${{ secrets.JEKYLL_PAT }}

CNAME file should be copied to target branch by default

It's very unexpected that the default process ignores CNAME file and so domain binding disappears.
As temporary fix for my case I create another step right after this one, but I pretty sure this must be in this script.

- name: Copy CNAME
        run: |
         git clone https://.:${{ secrets.GITHUB_TOKEN }}@github.com/msangel/msangel.github.io --depth 1 target
         git config --global user.email "[email protected]"
         git config --global user.name "Vasyl's script"
         cp target/CNAME CNAME
         cd target
         git fetch --depth 1 origin gh-pages:gh-pages
         git checkout gh-pages
         cp ./../CNAME CNAME
         git add CNAME
         git commit -m "restore CNAME"
         git push --set-upstream origin gh-pages
        shell: bash

Could not locate Gemfile

See https://github.com/UlyssesZh/UlyssesZh.github.io
The Gemfile is in the root of development branch, but when the Jekyll action runs on the development branch, it says it could not locate Gemfile.

/usr/bin/docker run --name b3ac630b53ab6d103482fb94fc10f3212e396_7b85fe --label 3b3ac6 --workdir /github/workspace --rm -e JEKYLL_PAT -e INPUT_TARGET_BRANCH -e INPUT_JEKYLL_SRC -e INPUT_GEM_SRC -e HOME -e GITHUB_JOB -e GITHUB_REF -e GITHUB_SHA -e GITHUB_REPOSITORY -e GITHUB_REPOSITORY_OWNER -e GITHUB_RUN_ID -e GITHUB_RUN_NUMBER -e GITHUB_ACTOR -e GITHUB_WORKFLOW -e GITHUB_HEAD_REF -e GITHUB_BASE_REF -e GITHUB_EVENT_NAME -e GITHUB_SERVER_URL -e GITHUB_API_URL -e GITHUB_GRAPHQL_URL -e GITHUB_WORKSPACE -e GITHUB_ACTION -e GITHUB_EVENT_PATH -e RUNNER_OS -e RUNNER_TOOL_CACHE -e RUNNER_TEMP -e RUNNER_WORKSPACE -e ACTIONS_RUNTIME_URL -e ACTIONS_RUNTIME_TOKEN -e ACTIONS_CACHE_URL -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" -v "/home/runner/work/UlyssesZh.github.io/UlyssesZh.github.io":"/github/workspace" 3b3ac6:30b53ab6d103482fb94fc10f3212e396
Starting the Jekyll Action
Could not locate Gemfile

alternate "usage" docs

The "usage" section in the readme is most useful for those who are creating a new website. However, I think it is not uncommon for someone to want to add github actions to their existing site.

As someone who is doing that now I am wondering how best to use this. Should I copy some of these files into my repo and modify them? Which files? How should they be modified?

The docs here are good enough that I feel I can figure it out eventually but a step-by-step guide for this use case would be very helpful.

Cannot publish on branch

Hi, I get an error when I try and use this action. Output below:

Configuration file: /github/workspace/_config.yml
96
            Source: /github/workspace
97
       Destination: /github/workspace/build
98
 Incremental build: disabled. Enable with --incremental
99
      Generating... 
100
       Jekyll Feed: Generating feed for posts
101
                    done in 0.128 seconds.
102
 Auto-regeneration: disabled. Use --watch to enable.
103
Jekyll build done
102
Error: Cannot publish on branch master

Liquid Exception: stack level too deep (SystemStackError)

Hi,

I encounter this odd error when trying to generate Avif picture with jekyll_picture_tag plugin:
Liquid Exception: stack level too deep (SystemStackError)

  • On local dev, using bundle exec jekyll serve everything runs fine.
  • On Github Actions, it's when I activate the Avif picture format generation that the error occurs, not with WebP for example.

I made a complete test case to reproduce locally the problem and with all details: https://github.com/scalastic/jekyll-test-cases

Error: Unable to resolve action `helaili/jekyll-build@v2`, repository not found

Hi Alain;

GitHub Action Log:

Current runner version: '2.278.0'
Operating System
Virtual Environment
GITHUB_TOKEN Permissions
Prepare workflow directory
Prepare all required actions
Getting action download info
Failed to resolve action download info. Error: Unable to resolve action `helaili/jekyll-build@v2`, repository not found
Retrying in 11.413 seconds
Failed to resolve action download info. Error: Unable to resolve action `helaili/jekyll-build@v2`, repository not found
Retrying in 18.727 seconds
Error: Unable to resolve action `helaili/jekyll-build@v2`, repository not found

`jekyll_picture_tag` and `libglib-2.0.so.0` error

Crossposting an issue(libvips/ruby-vips#308) I have that doesn't allow deploying the Jekyll page when it depends on jekyll_picture_tag

Dependency Error: Yikes! It looks like you don't have jekyll_picture_tag or one of its dependencies installed. In order to use Jekyll as currently configured, you'll need to install this gem. If you've run Jekyll with `bundle exec`, ensure that you have included the jekyll_picture_tag gem in your Gemfile as well. The full error message from Ruby is: 'Could not open library 'glib-2.0.so.0': Error loading shared library glib-2.0.so.0: No such file or directory. Could not open library 'libglib-2.0.so.0': Error loading shared library libglib-2.0.so.0: No such file or directory' If you run into trouble, you can find helpful resources at jekyllrb.com/help/! 

Solution:

name: deploy

on: [ workflow_dispatch ]

jobs:
  build-and-deploy:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout
        uses: actions/checkout@v2

      - name: Bundler Cache
        uses: actions/cache@v2
        with:
          path: vendor/bundle
          key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
          restore-keys: |
            ${{ runner.os }}-gems-

      - name: Deploy
        uses:  helaili/jekyll-action@v2
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          pre_build_commands: |
            apk --update add vips vips-tools

Ruby version specification

I run for the first time today this action and I noticed that by default it is using ruby 2.7.0 (with its bunch of deprecation warnings on the most of gems).

Would you be interested in implementing a version specification?

This could be achieved ideally using the .ruby-version file generated for rbenv/rvm otherwise via an env var.

In this way you will ensure more consistency in the future runs preventing unexpected breaking changes. Would you need some help to implement it?

Where does the action look for the `_config.yml` file?

Sorry for basic question.

I'm using a <user>.github.io repo, with a very simple workflow:

name: Build and deploy Jekyll site to GitHub Pages

on:
  push:
    branches:
      - master

jobs:
  github-pages:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: helaili/jekyll-action@v2
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          target_branch: test-branch

The action seems to look for the _config.yml file in the wrong place, because it fails with

Configuration file: /github/workspace/./_config.yml
            Source: /github/workspace/.
       Destination: build
 Incremental build: disabled. Enable with --incremental
      Generating... 
             Error: could not read file /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-3.9.1/lib/site_template/_posts/0000-00-00-welcome-to-jekyll.markdown.erb: Invalid date '<%= Time.now.strftime('%Y-%m-%d %H:%M:%S %z') %>': Document 'vendor/bundle/ruby/2.7.0/gems/jekyll-3.9.1/lib/site_template/_posts/0000-00-00-welcome-to-jekyll.markdown.erb' does not have a valid date in the YAML front matter.
             ERROR: YOUR SITE COULD NOT BE BUILT:

My website and its _config.yml are on the root of the repo. I have tried various plausible values for jekyll_src without success.

Build fails when Coffeescript plugin is used due to missing Javascript runtime

The Coffeescript plugin from Jekyll requires a Javascript runtime installed on the environment.
I get following error when using the Coffeescript plugin:

Conversion error: Jekyll::Converters::CoffeeScript encountered an error while converting 'media/js/factsheet.coffee': Could not find a JavaScript runtime. See https://github.com/rails/execjs for a list of available runtimes.

On Jekyll Issues page this is documented and fixes describe using either NodeJS or therubyracer Gem.
As I could not deploy NodeJS on your container, I added therubyracer in my Gemfile, which produces following error:

Dependency Error: Yikes! It looks like you don't have /github/workspace/_plugins/bundler.rb or one of its dependencies installed. In order to use Jekyll as currently configured, you'll need to install this gem. If you've run Jekyll with bundle exec, ensure that you have included the /github/workspace/_plugins/bundler.rb gem in your Gemfile as well. The full error message from Ruby is: 'Error relocating /github/workspace/vendor/bundle/ruby/2.7.0/gems/therubyracer-0.12.3/lib/v8/init.so: __fprintf_chk: symbol not found - /github/workspace/vendor/bundle/ruby/2.7.0/gems/therubyracer-0.12.3/lib/v8/init.so' If you run into trouble, you can find helpful resources at https://jekyllrb.com/help/!

Any Idea how this can be fixed?

Using GitHub token

Regarding the "Known limitation" in the README I wanted to share that for me the following did not work (for a private repo):

- uses: helaili/[email protected]
  env:
    # This does NOT work!
    JEKYLL_PAT: ${{ secrets.GITHUB_TOKEN }}

fatal: could not read Password for 'https://***@github.com': No such device or address

However, this does:

- uses: helaili/[email protected]
  env:
    JEKYLL_PAT: ${{ github.actor }}:${{ github.token }}

Note that github.token is the same as secrets.GITHUB_TOKEN, I just chose it for consistency (e.g. both work).

Background: I didn't want to use a Personal Access Token because it allows write access to all repos. The token from the github context expires once the job is done. Note that I don't use GitHub Pages, so I'm not sure if the above solves the initial deployment issue (see #34). Maybe someone could check?

Thanks for this useful action!

keep_history doesn't work with v2

In the README the keep_history option is documented and an example is given as follows:

image

However, keep_history isn't available with v2 which currently points v2.1.0. You'll need to use @2.2.0 or newer.

Could not find 'bundler' (1.17.2)

I am enjoying your action thanks. I am using it to write a tutorial on the Jekyll site. I have am issues around bundler and lock file and would like to get this sorted out before I get the tutorial through. I hope you can help.

This problem similar to #13 but different.

When run Bundle, I get Gemfile.lock file which includes Bundled with 1.17.2. This causes a failed build with your action, which cannot find that version.

If I remove the lockfile by ignoring it, the build works. But I would prefer to keep a lockfile.

Do you have any recommendations?

Or is there a fix you can make? Such as allowing the bundle version to be set as a parameter in the workflow file. Rather than letting Bundle version be the latest (not pinned anymore in Dockerfile) or pinned to a version that I don't use.

Support actions/cache

From actions/cache's examples for Bundler:

- uses: actions/cache@v1
  with:
    path: vendor/bundle
    key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
    restore-keys: |
      ${{ runner.os }}-gems-
- name: Bundle install
  run: |
    bundle config path vendor/bundle
    bundle install --jobs 4 --retry 3

"publish only" mode

Thanks for this great tool.

In the same way there is a build_only mode, it would be nice to have a publish-only mode. For example, I already have an action to build the site using Jekyll, and I run some tests, etc, on this output, then I'd like to use this plugin to publish the site that I tested, not the one built using this tool (which uses a slightly different approach).

Perhaps this is already some way to accomplish this that I'm missing, I'm not sure.

2.0.4 Could not locate Gemfile

Run helaili/[email protected]
...
Starting the Jekyll Action
Could not locate Gemfile

It works well with 2.0.0

Starting the Jekyll Action
Fetching gem metadata from https://rubygems.org/..........
Fetching gem metadata from https://rubygems.org/.

Allow pre and post build commands

Hi,

I am using another action for my blog. But for another project I manage, that action didn't work—my blog is using github-pages gem, whereas this other project uses extra plugins/gems and only jekyll to build.

So I tried this action, and it worked like a charm! Only issue is that I was using extra commands to build the project. The other action linked above allows me to specify a command to install extra gems or other utility in the container. And also a post command.

It looks like bundle install is doing the trick for me now, so the pre command is not that important.

But the post command was a blocker. I copied the contents from master (keeping license & copyright).

The extra line I added is to execute the Jekyll Algolia plugin, which publishes some Jekyll collection/pages/posts/etc to Algolia to update the search index.

It would be great we could have this feature in this action :-)

Thanks!
Bruno

Using Alternate Branch as Source

Apologies if I missed this in the documentation, but is there support for configuring the source branch (not the deploy branch) for this action. I would like to use main as by source branch rather than master.

The target_branch argument is unavailable

##[warning]Unexpected input(s) 'target_branch', valid inputs are ['entryPoint', 'args', 'jekyll_src']

In the workflow yml file:

      - name: Deploy Jekyll
        uses: helaili/[email protected]
        env:
          JEKYLL_PAT: ${{ secrets.JEKYLL_PAT }}
        with:
          target_branch: master

'ubuntu-16.04' runner will be deprecated, upgrade suggested

Source: https://github.blog/changelog/2021-04-29-github-actions-ubuntu-16-04-lts-virtual-environment-will-be-removed-on-september-20-2021/

I suddenly got following messages when executing my own repo jobs:

Can't find any online and idle self-hosted runner in the current repository, account/organization that matches the required labels: 'ubuntu-16.04'
Waiting for a self-hosted runner to pickup this job...

Change to ubuntu-latest works fine.

So, I suggested moving to ubuntu-latest if we are not pinned to 16.04 LTS for specific reason?

Gem Caching doesn't work as advertised

Amazing Action! It does exactly what it says on the box 😄 Thanks!

Just wanted to point out that the gem caching in your readme doesn't work, since the bundle install is inside the docker image, not the runner itself, and so the cacher cannot see those files. There may be some way to ask bundler to put vendor/ in one of the shared working directories but that's a bit beyond my skill at the moment. Hopefully someone can get the gem caching working.

Anyway, thanks again for the stellar script! 😄

Build fails with version 2.0.3 and 2.0.2, works with v2.0.1

I created a simple little Jekyll project using [email protected]. When the GitHub build runs, the action fails with the message Cannot publish on branch master. I don't understand where this is coming from, since the action ought to push to the gh-pages branch and I didn't change any of its configuration.

I get the same error with version 2.0.2. Version 2.0.1 works fine.

Here is my repo.

Here is the full log:

2020-07-04T16:31:46.9030154Z     Use helaili/[email protected]
2020-07-04T16:31:46.9119585Z ##[group]Run helaili/[email protected]
2020-07-04T16:31:46.9119739Z with:
2020-07-04T16:31:46.9119865Z env:
2020-07-04T16:31:46.9120443Z   JEKYLL_PAT: ***
2020-07-04T16:31:46.9120571Z ##[endgroup]
2020-07-04T16:31:46.9143811Z ##[command]/usr/bin/docker run --name d31be7f02408bd4b339a04464a8d228e90_90cfa8 --label 3888d3 --workdir /github/workspace --rm -e JEKYLL_PAT -e INPUT_JEKYLL_SRC -e HOME -e GITHUB_JOB -e GITHUB_REF -e GITHUB_SHA -e GITHUB_REPOSITORY -e GITHUB_REPOSITORY_OWNER -e GITHUB_RUN_ID -e GITHUB_RUN_NUMBER -e GITHUB_ACTOR -e GITHUB_WORKFLOW -e GITHUB_HEAD_REF -e GITHUB_BASE_REF -e GITHUB_EVENT_NAME -e GITHUB_SERVER_URL -e GITHUB_API_URL -e GITHUB_GRAPHQL_URL -e GITHUB_WORKSPACE -e GITHUB_ACTION -e GITHUB_EVENT_PATH -e RUNNER_OS -e RUNNER_TOOL_CACHE -e RUNNER_TEMP -e RUNNER_WORKSPACE -e ACTIONS_RUNTIME_URL -e ACTIONS_RUNTIME_TOKEN -e ACTIONS_CACHE_URL -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" -v "/home/runner/work/DanielSWolf.github.io/DanielSWolf.github.io":"/github/workspace" 3888d3:1be7f02408bd4b339a04464a8d228e90  ""
2020-07-04T16:31:47.2549604Z Starting the Jekyll Action
2020-07-04T16:31:49.4134948Z Fetching gem metadata from https://rubygems.org/..........
2020-07-04T16:31:49.4868419Z Fetching gem metadata from https://rubygems.org/.
2020-07-04T16:31:49.5247881Z Resolving dependencies...
2020-07-04T16:31:49.5443305Z Fetching public_suffix 4.0.5
2020-07-04T16:31:49.6039769Z Installing public_suffix 4.0.5
2020-07-04T16:31:49.6251807Z Fetching addressable 2.7.0
2020-07-04T16:31:49.6828318Z Installing addressable 2.7.0
2020-07-04T16:31:49.6986989Z Fetching asciidoctor 2.0.10
2020-07-04T16:31:49.7726819Z Installing asciidoctor 2.0.10
2020-07-04T16:31:49.8203725Z Using bundler 2.1.4
2020-07-04T16:31:49.8203974Z Fetching colorator 1.1.0
2020-07-04T16:31:49.8602022Z Installing colorator 1.1.0
2020-07-04T16:31:49.8745253Z Fetching concurrent-ruby 1.1.6
2020-07-04T16:31:49.9487571Z Installing concurrent-ruby 1.1.6
2020-07-04T16:31:50.0124910Z Fetching eventmachine 1.2.7
2020-07-04T16:31:50.0827915Z Installing eventmachine 1.2.7 with native extensions
2020-07-04T16:31:59.7901710Z Fetching http_parser.rb 0.6.0
2020-07-04T16:31:59.8899932Z Installing http_parser.rb 0.6.0 with native extensions
2020-07-04T16:32:01.0846021Z Fetching em-websocket 0.5.1
2020-07-04T16:32:01.1440581Z Installing em-websocket 0.5.1
2020-07-04T16:32:01.1662499Z Fetching ffi 1.13.1
2020-07-04T16:32:01.2797423Z Installing ffi 1.13.1 with native extensions
2020-07-04T16:32:09.5567424Z Fetching forwardable-extended 2.6.0
2020-07-04T16:32:09.6049883Z Installing forwardable-extended 2.6.0
2020-07-04T16:32:09.6137419Z Fetching i18n 1.8.3
2020-07-04T16:32:09.6698408Z Installing i18n 1.8.3
2020-07-04T16:32:09.7051026Z Fetching sassc 2.4.0
2020-07-04T16:32:09.7883532Z Installing sassc 2.4.0 with native extensions
2020-07-04T16:33:33.1957679Z Fetching jekyll-sass-converter 2.1.0
2020-07-04T16:33:33.2479714Z Installing jekyll-sass-converter 2.1.0
2020-07-04T16:33:33.2561978Z Fetching rb-fsevent 0.10.4
2020-07-04T16:33:33.3180655Z Installing rb-fsevent 0.10.4
2020-07-04T16:33:33.3378009Z Fetching rb-inotify 0.10.1
2020-07-04T16:33:33.3927433Z Installing rb-inotify 0.10.1
2020-07-04T16:33:33.4068527Z Fetching listen 3.2.1
2020-07-04T16:33:33.4586714Z Installing listen 3.2.1
2020-07-04T16:33:33.4782839Z Fetching jekyll-watch 2.2.1
2020-07-04T16:33:33.5188535Z Installing jekyll-watch 2.2.1
2020-07-04T16:33:33.5273178Z Fetching rexml 3.2.4
2020-07-04T16:33:33.5816261Z Installing rexml 3.2.4
2020-07-04T16:33:33.6180249Z Fetching kramdown 2.3.0
2020-07-04T16:33:33.6884333Z Installing kramdown 2.3.0
2020-07-04T16:33:33.8951562Z Fetching kramdown-parser-gfm 1.1.0
2020-07-04T16:33:33.9385819Z Installing kramdown-parser-gfm 1.1.0
2020-07-04T16:33:33.9555808Z Fetching liquid 4.0.3
2020-07-04T16:33:34.0182375Z Installing liquid 4.0.3
2020-07-04T16:33:34.0633471Z Fetching mercenary 0.4.0
2020-07-04T16:33:34.1114901Z Installing mercenary 0.4.0
2020-07-04T16:33:34.1248042Z Fetching pathutil 0.16.2
2020-07-04T16:33:34.1657472Z Installing pathutil 0.16.2
2020-07-04T16:33:34.1728346Z Fetching rouge 3.20.0
2020-07-04T16:33:34.3283084Z Installing rouge 3.20.0
2020-07-04T16:33:34.5044059Z Fetching safe_yaml 1.0.5
2020-07-04T16:33:34.5526717Z Installing safe_yaml 1.0.5
2020-07-04T16:33:34.5741506Z Fetching unicode-display_width 1.7.0
2020-07-04T16:33:34.6136700Z Installing unicode-display_width 1.7.0
2020-07-04T16:33:34.6207849Z Fetching terminal-table 1.8.0
2020-07-04T16:33:34.6658710Z Installing terminal-table 1.8.0
2020-07-04T16:33:34.6760018Z Fetching jekyll 4.1.1
2020-07-04T16:33:34.7435096Z Installing jekyll 4.1.1
2020-07-04T16:33:34.7951819Z Fetching jekyll-asciidoc 3.0.0
2020-07-04T16:33:34.8443609Z Installing jekyll-asciidoc 3.0.0
2020-07-04T16:33:34.8581473Z Fetching jekyll-feed 0.14.0
2020-07-04T16:33:34.9051023Z Installing jekyll-feed 0.14.0
2020-07-04T16:33:34.9133254Z Fetching jekyll-seo-tag 2.6.1
2020-07-04T16:33:34.9651574Z Installing jekyll-seo-tag 2.6.1
2020-07-04T16:33:34.9799753Z Fetching minima 2.5.1
2020-07-04T16:33:35.0268971Z Installing minima 2.5.1
2020-07-04T16:33:35.0408856Z Bundle complete! 7 Gemfile dependencies, 33 gems now installed.
2020-07-04T16:33:35.0409089Z Bundled gems are installed into `./vendor/bundle`
2020-07-04T16:33:35.0409929Z Post-install message from i18n:
2020-07-04T16:33:35.0410082Z 
2020-07-04T16:33:35.0410389Z HEADS UP! i18n 1.1 changed fallbacks to exclude default locale.
2020-07-04T16:33:35.0410567Z But that may break your application.
2020-07-04T16:33:35.0410651Z 
2020-07-04T16:33:35.0410841Z If you are upgrading your Rails application from an older version of Rails:
2020-07-04T16:33:35.0410959Z 
2020-07-04T16:33:35.0411357Z Please check your Rails app for 'config.i18n.fallbacks = true'.
2020-07-04T16:33:35.0411768Z If you're using I18n (>= 1.1.0) and Rails (< 5.2.2), this should be
2020-07-04T16:33:35.0412159Z 'config.i18n.fallbacks = [I18n.default_locale]'.
2020-07-04T16:33:35.0412338Z If not, fallbacks will be broken in your app by I18n 1.1.x.
2020-07-04T16:33:35.0412446Z 
2020-07-04T16:33:35.0412611Z If you are starting a NEW Rails application, you can ignore this notice.
2020-07-04T16:33:35.0412711Z 
2020-07-04T16:33:35.0412854Z For more info see:
2020-07-04T16:33:35.0413413Z https://github.com/svenfuchs/i18n/releases/tag/v1.1.0
2020-07-04T16:33:35.0413571Z 
2020-07-04T16:33:35.5844462Z Configuration file: /github/workspace/_config.yml
2020-07-04T16:33:35.6348557Z             Source: /github/workspace
2020-07-04T16:33:35.6348794Z        Destination: /github/workspace/build
2020-07-04T16:33:35.6349688Z  Incremental build: disabled. Enable with --incremental
2020-07-04T16:33:35.6349868Z       Generating... 
2020-07-04T16:33:35.6655914Z        Jekyll Feed: Generating feed for posts
2020-07-04T16:33:35.7448430Z                     done in 0.11 seconds.
2020-07-04T16:33:35.7449375Z  Auto-regeneration: disabled. Use --watch to enable.
2020-07-04T16:33:35.7480884Z Jekyll build done
2020-07-04T16:33:35.7486099Z Cannot publish on branch master

Add support for CNAME File

Github needs a CNAME file for custom domains. Auto generate a CNAME file depending on the user input.

The file should look like this:

example.com

Webp fails to cratefile

Iam using jekyll-webp to convert images to webp, when I run a build locally it works without issue but using this action it fails to convert

WebP: Conversion for image /github/workspace/assets/images/articles/2020-05-05-docker-overlay2-centos-production.png failed, no webp version could be created for this image

Any ideas what's causing this or how to resolve?

Custom domain is cleared

First, thank you very much for this action. :-)

I have a custom domain on my repository GitHub Pages settings. I have noticed that every time this action is executed this setting is cleared :-( Is there some special setting I need to set to make this work?

Error: Could not find 'bundler'

Hi, I tried using jekyll-action:

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: helaili/[email protected]

The action/job fails with this error:

 Build container for action use: '/home/runner/work/_actions/helaili/jekyll-action/1.0/Dockerfile'.
/usr/bin/docker build -t e87b52:348d160bb4eb4af7bba8b5057a9c247e "/home/runner/work/_actions/helaili/jekyll-action/1.0"
Sending build context to Docker daemon  11.78kB

Step 1/14 : FROM ruby:2-slim
[...]
Processing triggers for libgdk-pixbuf2.0-0:amd64 (2.38.1+dfsg-1) ...
/usr/local/lib/ruby/2.7.0/rubygems.rb:275:in `find_spec_for_exe': Could not find 'bundler' (1.17.3) required by `$BUNDLER_VERSION`. (Gem::GemNotFoundException)
To update to the latest version installed on your system, run `bundle update --bundler`.
To install the missing version, run `gem install bundler:1.17.3`
	from /usr/local/lib/ruby/2.7.0/rubygems.rb:294:in `activate_bin_path'
	from /usr/local/bin/bundle:23:in `<main>'
The command '/bin/sh -c apt-get update &&     apt-get install --no-install-recommends -y         bats         build-essential         ca-certificates         curl         libffi6         make         shellcheck         libffi6         git-all     && bundle config --global silence_root_warning 1' returned a non-zero code: 1

##[error]Docker build failed with exit code 1

Any idea how to fix this?

Could not find a JavaScript runtime

I am trying to get an action to install purgecss with my project so the jekyll-purgecss gem will run correctly. Everything installs fine, but when I try to build Jekyll says it could not detect a JS runtime:

/github/workspace/vendor/bundle/ruby/2.7.0/gems/execjs-2.7.0/lib/execjs/runtimes.rb:58:in `autodetect': Could not find a JavaScript runtime. See https://github.com/rails/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)

No luck after adding the execjs and therubyracer gems as suggested online. Node is clearly present otherwise that step would be failing. Any suggestions?

My main.yml:

name: Publish to Github Pages
on:
  push:
    branches:
      - gh-pages-redesign

jobs:
  build-publish:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@master
      - uses: actions/cache@v1
        with:
          path: vendor/bundle
          key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
          restore-keys: |
            ${{ runner.os }}-gems-
      - name: Use Node.js 12.14.1
        uses: actions/setup-node@v1
        with:
          node-version: '12.14.1'
      - name: Install dependencies
        run: |
          npm install
          npm install --only=dev
      - uses: helaili/jekyll-action@master
        env:
          JEKYLL_PAT: ${{ secrets.JEKYLL_BUILD_TOKEN }}
Here's the full log:
2020-07-13T09:39:14.4689793Z Starting the Jekyll Action
2020-07-13T09:39:17.5690573Z Fetching gem metadata from https://rubygems.org/.........
2020-07-13T09:39:17.6004982Z Fetching concurrent-ruby 1.1.6
2020-07-13T09:39:17.8646769Z Installing concurrent-ruby 1.1.6
2020-07-13T09:39:17.9638647Z Fetching i18n 1.8.3
2020-07-13T09:39:18.1343293Z Installing i18n 1.8.3
2020-07-13T09:39:18.1603208Z Fetching minitest 5.14.1
2020-07-13T09:39:18.3470621Z Installing minitest 5.14.1
2020-07-13T09:39:18.3658891Z Fetching thread_safe 0.3.6
2020-07-13T09:39:18.5670758Z Installing thread_safe 0.3.6
2020-07-13T09:39:18.5984923Z Fetching tzinfo 1.2.7
2020-07-13T09:39:18.8128286Z Installing tzinfo 1.2.7
2020-07-13T09:39:18.8719800Z Fetching zeitwerk 2.3.0
2020-07-13T09:39:19.0173083Z Installing zeitwerk 2.3.0
2020-07-13T09:39:19.0365882Z Fetching activesupport 6.0.3.1
2020-07-13T09:39:19.2649536Z Installing activesupport 6.0.3.1
2020-07-13T09:39:19.3700366Z Fetching public_suffix 4.0.5
2020-07-13T09:39:19.5709955Z Installing public_suffix 4.0.5
2020-07-13T09:39:19.6013670Z Fetching addressable 2.7.0
2020-07-13T09:39:19.8027380Z Installing addressable 2.7.0
2020-07-13T09:39:19.8316515Z Using bundler 2.1.4
2020-07-13T09:39:19.8329066Z Fetching colorator 1.1.0
2020-07-13T09:39:19.9560733Z Installing colorator 1.1.0
2020-07-13T09:39:19.9664469Z Fetching cssminify2 2.0.1
2020-07-13T09:39:20.2040554Z Installing cssminify2 2.0.1
2020-07-13T09:39:20.2709247Z Fetching eventmachine 1.2.7
2020-07-13T09:39:20.5090594Z Installing eventmachine 1.2.7 with native extensions
2020-07-13T09:39:31.5662936Z Fetching http_parser.rb 0.6.0
2020-07-13T09:39:31.7906768Z Installing http_parser.rb 0.6.0 with native extensions
2020-07-13T09:39:33.1462440Z Fetching em-websocket 0.5.1
2020-07-13T09:39:33.3001315Z Installing em-websocket 0.5.1
2020-07-13T09:39:33.3328553Z Fetching execjs 2.7.0
2020-07-13T09:39:33.4843528Z Installing execjs 2.7.0
2020-07-13T09:39:33.5047500Z Fetching ffi 1.13.1
2020-07-13T09:39:33.9171514Z Installing ffi 1.13.1 with native extensions
2020-07-13T09:39:42.4770915Z Fetching forwardable-extended 2.6.0
2020-07-13T09:39:42.6031279Z Installing forwardable-extended 2.6.0
2020-07-13T09:39:42.6105997Z Fetching gemoji 3.0.1
2020-07-13T09:39:42.7920806Z Installing gemoji 3.0.1
2020-07-13T09:39:42.8086628Z Fetching mini_portile2 2.4.0
2020-07-13T09:39:42.9560675Z Installing mini_portile2 2.4.0
2020-07-13T09:39:42.9802453Z Fetching nokogiri 1.10.9
2020-07-13T09:39:44.2105600Z Installing nokogiri 1.10.9 with native extensions
2020-07-13T09:40:26.5718888Z Fetching html-pipeline 2.13.0
2020-07-13T09:40:26.7279691Z Installing html-pipeline 2.13.0
2020-07-13T09:40:26.7498659Z Fetching htmlcompressor 0.4.0
2020-07-13T09:40:26.9052270Z Installing htmlcompressor 0.4.0
2020-07-13T09:40:26.9666117Z Fetching sassc 2.4.0
2020-07-13T09:40:27.2294816Z Installing sassc 2.4.0 with native extensions
2020-07-13T09:41:58.1280919Z Fetching jekyll-sass-converter 2.1.0
2020-07-13T09:41:58.2551344Z Installing jekyll-sass-converter 2.1.0
2020-07-13T09:41:58.2651139Z Fetching rb-fsevent 0.10.4
2020-07-13T09:41:58.4390068Z Installing rb-fsevent 0.10.4
2020-07-13T09:41:58.4580089Z Fetching rb-inotify 0.10.1
2020-07-13T09:41:58.6045280Z Installing rb-inotify 0.10.1
2020-07-13T09:41:58.6200528Z Fetching listen 3.2.1
2020-07-13T09:41:58.7753497Z Installing listen 3.2.1
2020-07-13T09:41:58.7950186Z Fetching jekyll-watch 2.2.1
2020-07-13T09:41:58.9168429Z Installing jekyll-watch 2.2.1
2020-07-13T09:41:58.9246840Z Fetching rexml 3.2.4
2020-07-13T09:41:59.1129554Z Installing rexml 3.2.4
2020-07-13T09:41:59.1407851Z Fetching kramdown 2.3.0
2020-07-13T09:41:59.3548194Z Installing kramdown 2.3.0
2020-07-13T09:41:59.5987660Z Fetching kramdown-parser-gfm 1.1.0
2020-07-13T09:41:59.7191091Z Installing kramdown-parser-gfm 1.1.0
2020-07-13T09:41:59.7440818Z Fetching liquid 4.0.3
2020-07-13T09:41:59.9242746Z Installing liquid 4.0.3
2020-07-13T09:41:59.9703212Z Fetching mercenary 0.3.6
2020-07-13T09:42:00.1171313Z Installing mercenary 0.3.6
2020-07-13T09:42:00.1322310Z Fetching pathutil 0.16.2
2020-07-13T09:42:00.2553221Z Installing pathutil 0.16.2
2020-07-13T09:42:00.2620515Z Fetching rouge 3.20.0
2020-07-13T09:42:00.5594817Z Installing rouge 3.20.0
2020-07-13T09:42:00.7621782Z Fetching safe_yaml 1.0.5
2020-07-13T09:42:00.9088673Z Installing safe_yaml 1.0.5
2020-07-13T09:42:00.9321416Z Fetching unicode-display_width 1.7.0
2020-07-13T09:42:01.0525153Z Installing unicode-display_width 1.7.0
2020-07-13T09:42:01.0622400Z Fetching terminal-table 1.8.0
2020-07-13T09:42:01.2095195Z Installing terminal-table 1.8.0
2020-07-13T09:42:01.2227642Z Fetching jekyll 4.0.1
2020-07-13T09:42:01.4268414Z Installing jekyll 4.0.1
2020-07-13T09:42:01.4911983Z Fetching jekyll-feed 0.13.0
2020-07-13T09:42:01.6381557Z Installing jekyll-feed 0.13.0
2020-07-13T09:42:01.6567385Z Using json 2.3.0
2020-07-13T09:42:01.6572584Z Fetching json-minify 0.0.3
2020-07-13T09:42:01.7742794Z Installing json-minify 0.0.3
2020-07-13T09:42:01.7847052Z Fetching uglifier 4.2.0
2020-07-13T09:42:02.0035700Z Installing uglifier 4.2.0
2020-07-13T09:42:02.0274758Z Fetching jekyll-minifier 0.1.10
2020-07-13T09:42:02.1756289Z Installing jekyll-minifier 0.1.10
2020-07-13T09:42:02.1939453Z Fetching jekyll-purgecss 0.3.0
2020-07-13T09:42:02.3194990Z Installing jekyll-purgecss 0.3.0
2020-07-13T09:42:02.3326354Z Fetching jekyll-redirect-from 0.16.0
2020-07-13T09:42:02.4811886Z Installing jekyll-redirect-from 0.16.0
2020-07-13T09:42:02.5044501Z Fetching jekyll-seo-tag 2.6.1
2020-07-13T09:42:02.6523541Z Installing jekyll-seo-tag 2.6.1
2020-07-13T09:42:02.6672992Z Fetching jekyll-target-blank 2.0.0
2020-07-13T09:42:02.9435594Z Installing jekyll-target-blank 2.0.0
2020-07-13T09:42:02.9782435Z Fetching jemoji 0.12.0
2020-07-13T09:42:03.1006263Z Installing jemoji 0.12.0
2020-07-13T09:42:03.1099385Z Bundle complete! 11 Gemfile dependencies, 50 gems now installed.
2020-07-13T09:42:03.1099661Z Bundled gems are installed into `./vendor/bundle`
2020-07-13T09:42:03.1100412Z Post-install message from i18n:
2020-07-13T09:42:03.1100490Z 
2020-07-13T09:42:03.1100714Z HEADS UP! i18n 1.1 changed fallbacks to exclude default locale.
2020-07-13T09:42:03.1100907Z But that may break your application.
2020-07-13T09:42:03.1100995Z 
2020-07-13T09:42:03.1101231Z If you are upgrading your Rails application from an older version of Rails:
2020-07-13T09:42:03.1101530Z 
2020-07-13T09:42:03.1102315Z Please check your Rails app for 'config.i18n.fallbacks = true'.
2020-07-13T09:42:03.1102705Z If you're using I18n (>= 1.1.0) and Rails (< 5.2.2), this should be
2020-07-13T09:42:03.1103043Z 'config.i18n.fallbacks = [I18n.default_locale]'.
2020-07-13T09:42:03.1103261Z If not, fallbacks will be broken in your app by I18n 1.1.x.
2020-07-13T09:42:03.1103351Z 
2020-07-13T09:42:03.1103568Z If you are starting a NEW Rails application, you can ignore this notice.
2020-07-13T09:42:03.1103641Z 
2020-07-13T09:42:03.1103893Z For more info see:
2020-07-13T09:42:03.1104224Z https://github.com/svenfuchs/i18n/releases/tag/v1.1.0
2020-07-13T09:42:03.1104353Z 
2020-07-13T09:42:03.1104696Z Post-install message from html-pipeline:
2020-07-13T09:42:03.1105024Z -------------------------------------------------
2020-07-13T09:42:03.1105326Z Thank you for installing html-pipeline!
2020-07-13T09:42:03.1105508Z You must bundle Filter gem dependencies.
2020-07-13T09:42:03.1105837Z See html-pipeline README.md for more details.
2020-07-13T09:42:03.1106179Z https://github.com/jch/html-pipeline#dependencies
2020-07-13T09:42:03.1106514Z -------------------------------------------------
2020-07-13T09:42:03.1106805Z Post-install message from jekyll:
2020-07-13T09:42:03.1107213Z -------------------------------------------------------------------------------------
2020-07-13T09:42:03.1107421Z Jekyll 4.0 comes with some major changes, notably:
2020-07-13T09:42:03.1107487Z 
2020-07-13T09:42:03.1107672Z   * Our `link` tag now comes with the `relative_url` filter incorporated into it.
2020-07-13T09:42:03.1107869Z     You should no longer prepend `{{ site.baseurl }}` to `{% link foo.md %}`
2020-07-13T09:42:03.1108070Z     For further details: https://github.com/jekyll/jekyll/pull/6727
2020-07-13T09:42:03.1108165Z 
2020-07-13T09:42:03.1108343Z   * Our `post_url` tag now comes with the `relative_url` filter incorporated into it.
2020-07-13T09:42:03.1108713Z     You shouldn't prepend `{{ site.baseurl }}` to `{% post_url 2019-03-27-hello %}`
2020-07-13T09:42:03.1108917Z     For further details: https://github.com/jekyll/jekyll/pull/7589
2020-07-13T09:42:03.1108996Z 
2020-07-13T09:42:03.1109177Z   * Support for deprecated configuration options has been removed. We will no longer
2020-07-13T09:42:03.1109375Z     output a warning and gracefully assign their values to the newer counterparts
2020-07-13T09:42:03.1109510Z     internally.
2020-07-13T09:42:03.1109911Z -------------------------------------------------------------------------------------
2020-07-13T09:42:03.7356433Z Configuration file: /github/workspace/_config.yml
2020-07-13T09:42:03.8207047Z �[31m                    ------------------------------------------------�[0m
2020-07-13T09:42:03.8207565Z �[31m      Jekyll 4.0.1   Please append `--trace` to the `build` command �[0m
2020-07-13T09:42:03.8207954Z �[31m                     for any additional information or backtrace. �[0m
2020-07-13T09:42:03.8208341Z �[31m                    ------------------------------------------------�[0m
2020-07-13T09:42:03.8209567Z /github/workspace/vendor/bundle/ruby/2.7.0/gems/execjs-2.7.0/lib/execjs/runtimes.rb:58:in `autodetect': Could not find a JavaScript runtime. See https://github.com/rails/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)
2020-07-13T09:42:03.8210005Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/execjs-2.7.0/lib/execjs.rb:5:in `<module:ExecJS>'
2020-07-13T09:42:03.8210401Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/execjs-2.7.0/lib/execjs.rb:4:in `<top (required)>'
2020-07-13T09:42:03.8210774Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/uglifier-4.2.0/lib/uglifier.rb:5:in `require'
2020-07-13T09:42:03.8211160Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/uglifier-4.2.0/lib/uglifier.rb:5:in `<top (required)>'
2020-07-13T09:42:03.8211557Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-minifier-0.1.10/lib/jekyll-minifier.rb:1:in `require'
2020-07-13T09:42:03.8211966Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-minifier-0.1.10/lib/jekyll-minifier.rb:1:in `<top (required)>'
2020-07-13T09:42:03.8212558Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/external.rb:60:in `require'
2020-07-13T09:42:03.8212984Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/external.rb:60:in `block in require_with_graceful_fail'
2020-07-13T09:42:03.8213360Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/external.rb:57:in `each'
2020-07-13T09:42:03.8213857Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/external.rb:57:in `require_with_graceful_fail'
2020-07-13T09:42:03.8214287Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/plugin_manager.rb:30:in `require_gems'
2020-07-13T09:42:03.8214695Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/plugin_manager.rb:22:in `conscientious_require'
2020-07-13T09:42:03.8215072Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/site.rb:124:in `setup'
2020-07-13T09:42:03.8215446Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/site.rb:34:in `initialize'
2020-07-13T09:42:03.8215826Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/commands/build.rb:30:in `new'
2020-07-13T09:42:03.8216212Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/commands/build.rb:30:in `process'
2020-07-13T09:42:03.8216633Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/command.rb:89:in `block in process_with_graceful_fail'
2020-07-13T09:42:03.8217004Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/command.rb:89:in `each'
2020-07-13T09:42:03.8217407Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/command.rb:89:in `process_with_graceful_fail'
2020-07-13T09:42:03.8217850Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/lib/jekyll/commands/build.rb:18:in `block (2 levels) in init_with_program'
2020-07-13T09:42:03.8218260Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `block in execute'
2020-07-13T09:42:03.8218644Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `each'
2020-07-13T09:42:03.8219029Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `execute'
2020-07-13T09:42:03.8219405Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/mercenary-0.3.6/lib/mercenary/program.rb:42:in `go'
2020-07-13T09:42:03.8219773Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/mercenary-0.3.6/lib/mercenary.rb:19:in `program'
2020-07-13T09:42:03.8220140Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-4.0.1/exe/jekyll:15:in `<top (required)>'
2020-07-13T09:42:03.8220460Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/bin/jekyll:23:in `load'
2020-07-13T09:42:03.8220805Z 	from /github/workspace/vendor/bundle/ruby/2.7.0/bin/jekyll:23:in `<top (required)>'
2020-07-13T09:42:03.8221117Z 	from /usr/local/lib/ruby/2.7.0/bundler/cli/exec.rb:63:in `load'
2020-07-13T09:42:03.8221431Z 	from /usr/local/lib/ruby/2.7.0/bundler/cli/exec.rb:63:in `kernel_load'
2020-07-13T09:42:03.8221734Z 	from /usr/local/lib/ruby/2.7.0/bundler/cli/exec.rb:28:in `run'
2020-07-13T09:42:03.8222034Z 	from /usr/local/lib/ruby/2.7.0/bundler/cli.rb:476:in `exec'
2020-07-13T09:42:03.8222374Z 	from /usr/local/lib/ruby/2.7.0/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
2020-07-13T09:42:03.8222738Z 	from /usr/local/lib/ruby/2.7.0/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
2020-07-13T09:42:03.8223072Z 	from /usr/local/lib/ruby/2.7.0/bundler/vendor/thor/lib/thor.rb:399:in `dispatch'
2020-07-13T09:42:03.8223379Z 	from /usr/local/lib/ruby/2.7.0/bundler/cli.rb:30:in `dispatch'
2020-07-13T09:42:03.8223713Z 	from /usr/local/lib/ruby/2.7.0/bundler/vendor/thor/lib/thor/base.rb:476:in `start'
2020-07-13T09:42:03.8224105Z 	from /usr/local/lib/ruby/2.7.0/bundler/cli.rb:24:in `start'
2020-07-13T09:42:03.8224475Z 	from /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.1.4/libexec/bundle:46:in `block in <top (required)>'
2020-07-13T09:42:03.8224822Z 	from /usr/local/lib/ruby/2.7.0/bundler/friendly_errors.rb:123:in `with_friendly_errors'
2020-07-13T09:42:03.8225178Z 	from /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.1.4/libexec/bundle:34:in `<top (required)>'
2020-07-13T09:42:03.8225516Z 	from /usr/local/bin/bundle:23:in `load'
2020-07-13T09:42:03.8225812Z 	from /usr/local/bin/bundle:23:in `<main>'

Add an option to `git commit` using the Github Actions bot

I'd like the action to commit files using Github Actions bot account:

github-actions <41898282+github-actions[bot]@users.noreply.github.com>

Hope someoptions for this purpose like author_name and author_email could be added. Thanks!

Unable to set timezone

Hi there!

I specified "timezone: America/New_York" in the _config.yml, and it works well locally. But seems that the action will ignore the timezone and build the site based on UTC.

I also found out that, in the Jekyll doc, says that "When serving on a local machine, the default time zone is set by your operating system. But when served on a remote host/server, the default time zone depends on the server's setting or location." . I guess in order to fix this, we need to add a variable to specify TZ for Docker.

Please let me know if I missed something, thanks!

Liquid Exception: Liquid syntax error (line 8): Unknown tag 'when' in vendor/bundle/ruby/2.7.0/gems/liquid-4.0.3/lib/liquid/locales/en.yml

Hi, I'm following the guide from here to try and deploy the website from this repo, because I want to use jekyll-archives.

I set up the workflow in .github/workflows/github-pages.yml. It fails when building the site, with this error :

Liquid Exception: Liquid syntax error (line 8): Unknown tag 'when' in vendor/bundle/ruby/2.7.0/gems/liquid-4.0.3/lib/liquid/locales/en.yml

My full log is here : log.txt

Why is this? Can I fix it? Thanks in advance for any answer.

Fails with git error (could not read Password)

Using the action, we got the following error during the run:

fatal: could not read Password for 'https://***@github.com': No such device or address

(see https://github.com/JabRef/www.jabref.org/runs/683214840?check_suite_focus=true with config https://github.com/JabRef/www.jabref.org/blob/ddb2c53748ba0e89ab085aa593ad339fffc915c2/.github/workflows/publish.yml)

I guess the problem is the git user config. Maybe it works if one uses the following config taken from the github-push action:

git config --local user.email "[email protected]"
git config --local user.name "GitHub Action"

I also want to remark that the repo url is different in the github-push action:
https://github.com/ad-m/github-push-action/blob/master/start.sh#L27
vs
https://github.com/helaili/jekyll-action/blob/master/entrypoint.sh#L49

but I don't have enough experience to judge which version is better.

Error with Invalid date not allowing site to be built

Hi, I'm trying to implement this action on my repository at https://github.com/Beachwood-High-School/beachwood-high-school.github.io.

This is the workflows file I'm using:

name: JekyllPublish
 
on:
  push:
    branches: 
      - code-master
    
jobs:
  jekyll:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2

    # Use GitHub Actions' cache to shorten build times and decrease load on servers
    - uses: actions/cache@v1
      with:
        path: vendor/bundle
        key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
        restore-keys: |
          ${{ runner.os }}-gems-
    # Standard usage
    - uses:  helaili/[email protected]
      env:
        JEKYLL_PAT: ${{ secrets.JEKYLL_PAT }}

When I the action runs, this is part of the logs:


 Configuration file: ./_config.yml
            Source: .
       Destination: build
 Incremental build: disabled. Enable with --incremental
      Generating... 
             Error: could not read file /github/workspace/vendor/bundle/ruby/2.7.0/gems/jekyll-3.8.7/lib/site_template/_posts/0000-00-00-welcome-to-jekyll.markdown.erb: Invalid date '<%= Time.now.strftime('%Y-%m-%d %H:%M:%S %z') %>': Document 'vendor/bundle/ruby/2.7.0/gems/jekyll-3.8.7/lib/site_template/_posts/0000-00-00-welcome-to-jekyll.markdown.erb' does not have a valid date in the YAML front matter.
             ERROR: YOUR SITE COULD NOT BE BUILT:
                    ------------------------------------
                    Invalid date '<%= Time.now.strftime('%Y-%m-%d %H:%M:%S %z') %>': Document 'vendor/bundle/ruby/2.7.0/gems/jekyll-3.8.7/lib/site_template/_posts/0000-00-00-welcome-to-jekyll.markdown.erb' does not have a valid date in the YAML front matter.

I don't understand why that is happening since I can build the website locally and I don't have a _posts directory in my website. I'm using this action so I can use more Jekyll extensions in the future. My goal is to have jekyll in the 'code-master' branch and the raw html, css, and js in the master branch so it can be published using Github pages.

Thanks

Support for running htmlproofer on the output before deploying

Being able to test the generated HTML before deploying it to gh-pages would be incredibly helpful.
I use this to find broken links or images I forgot to add alt-text to.

I tried the following in my repo but it doesn't work since the build files seem to be deleted between the steps:

    - name: Build the site
      uses: helaili/jekyll-action@master
      with:
        build_only: true

    - name: Test the generated HTML for errors
      uses: chabad360/htmlproofer@master
      with:
        directory: "/github/jekyll_build"

remote_branch variable is not correctly detected

I am running this action on a repository like organization/organization.github.io
When running the action in a pull request, the consequences of this code snippet are potentially destructive

# Is this a regular repo or an org.github.io type of repo
if [[ "${GITHUB_REPOSITORY}" == *".github.io"* ]]; then
remote_branch="master"
else
remote_branch="gh-pages"
fi

In my repository, the script tried to push to gh-pages branch even if it should not
You may need to add a caveat in the documentation

Fails with `error: src refspec does not match any`

No matter what i try, my action runs always end up with:

error: src refspec ***@github.com/B-FfF/stadtwerk-mit-zukunft.git does not match any
error: failed to push some refs to 'https://'

What i've tried so far:

  1. as Github Pages were served from master branch before, the repository did not have a gh-pages branch yet. I manually created a gh-pages branch as an empty orphan branch containing only one commit.
  2. Initial plan was to deploy from development branch, so i switched back the script to only fire on master pushes as its done in the standard tutorial.

Both did not fix the issue, issue remains exactly the same. As i would like to avoid having to rollback my whole project to jekyll 3.x, help will be highly appreciated.

The action is as follows:

name: Jekyll to GitHub Pages CI

on:
  push:
    branches:
      - master

jobs:
  github-pages:
    runs-on: ubuntu-16.04
    steps:
      - name: 🛎 Check out master
        uses: actions/checkout@v2

      # Use GitHub Actions' cache to shorten build times and decrease load on servers
      - name: 📁 Init gem cache
        uses: actions/cache@v1
        with:
          path: vendor/bundle
          key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}

      - name: 🔨 Build for Github-Pages
        uses: helaili/[email protected]
        env:
          JEKYLL_PAT: ${{ secrets.JEKYLL_PAT }}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.