Warm tip: This article is reproduced from serverfault.com, please click

continuous integration-Jekyll Github Actions管道停滞在jekyll build

(continuous integration - Jekyll Github Actions pipeline stuck at jekyll build)

发布于 2020-11-27 23:49:25

我一直在努力通过ssh构建和部署我的Jekyll网站的管道,并将其部署到Web服务器。我找到了这个GithubAction并想重现它。这是我的.yml

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
      - name: 🛎 Check out master
        uses: actions/checkout@master
        with:
          fetch-depth: 1
      - name: 🎩 Install Jekyll
        run: |
          sudo gem install bundler jekyll
          sudo bundle install
      - name: 🧹 Clean site
        run: |
          if [ -d "docs" ]; then
            rm -rf docs/*
          fi
      - name: 🔨 Build site
        run: bundle exec jekyll build -d docs

当运行我的管道时,它会卡在🔨 Build site步骤的开始它被卡住,直到我在18分钟后手动取消它为止。

Github动作错误

在本地运行build命令可以正常工作。知道错误是什么吗?还是有更好的方法来实现我想要的?

Questioner
Deitsch
Viewed
11
Deitsch 2020-12-01 04:21:07

在尝试了各种Github Actions之后,我自己使用Jekyll Builder Docker Image进行了解决

注意:你需要预先创建,.jekyll-cache并且_site由于该容器没有权限进行创建这是一个已知问题

- name: 🔨 Build site
      run: |
        mkdir .jekyll-cache _site
        docker run --rm -v ${{ github.workspace }}:/srv/jekyll jekyll/builder:latest jekyll build

运行此命令后,你可以对_site文件夹执行任何操作以我为例,我压缩了它,然后使用appleboys scp-action将其移到我的服务器中