Проблемы с страницами github при использовании действий github и github-pages-deploy-action? - PullRequest
0 голосов
/ 08 ноября 2019

У меня есть простое github repo , где я размещаю содержание своего резюме. Я использую hackmyresume для генерации index.html. Я использую Github Actions для запуска сборки npm, и он должен публиковать сгенерированный контент в ветке gh-pages.

Мой файл рабочего процесса имеет

on:
push:
    branches:
    - master

jobs:
build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v1
    - name: Deploy with github-pages
    uses: JamesIves/github-pages-deploy-action@master
    env:
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        BASE_BRANCH: master # The branch the action should deploy from.
        BRANCH: gh-pages # The branch the action should deploy to.
        FOLDER: target # The folder the action should deploy.
        BUILD_SCRIPT: npm install && npm run-script build

И команда сборки

"build": "hackmyresume BUILD ./src/main/resources/json/fresh/resume.json target/index.html -t compact",

Я вижу, как сгенерированный html-файл фиксируется в ветке github

https://github.com/emeraldjava/emeraldjava/blob/gh-pages/index.html

, но gh-страница не подхватывает это? Я получаю ошибку 404, когда нажимаю

https://emeraldjava.github.io/emeraldjava/

Я верю, что мои настройки и секреты репо верны, но я, должно быть, упускаю что-то маленькое. Любая помощь будет оценена.

1 Ответ

1 голос
/ 11 ноября 2019

Это происходит из-за того, что вы используете переменную GITHUB_TOKEN. Существует открытая проблема с GitHub из-за того, что встроенный токен не запускает задание развертывания GitHub Pages. Это означает, что вы увидите, что файлы были зафиксированы правильно, но они не будут видны.

Чтобы обойти это, вы можете использовать токен доступа GitHub. Вы можете узнать, как создать один здесь . Он должен быть правильно определен, поэтому у него есть разрешение на передачу в общедоступный репозиторий. Вы сохраните этот токен в меню Settings > Secrets вашего хранилища (назовите его как ACCESS_TOKEN), а затем будете ссылаться на него в вашей конфигурации следующим образом:

on:
push:
    branches:
    - master

jobs:
build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v1
    - name: Deploy with github-pages
    uses: JamesIves/github-pages-deploy-action@master
    env:
        ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}
        BASE_BRANCH: master # The branch the action should deploy from.
        BRANCH: gh-pages # The branch the action should deploy to.
        FOLDER: target # The folder the action should deploy.
        BUILD_SCRIPT: npm install && npm run-script build

Вы можете найти схему этих переменных здесь . Использование токена доступа позволит заданию GitHub Pages запускаться при новом развертывании. Я надеюсь, что это помогает!

...