Skip to content

Instantly share code, notes, and snippets.

@ArtMan-8
Last active November 21, 2023 17:31
Show Gist options
  • Save ArtMan-8/2845346142b24c94a9a82165d6697e0e to your computer and use it in GitHub Desktop.
Save ArtMan-8/2845346142b24c94a9a82165d6697e0e to your computer and use it in GitHub Desktop.
Базовая настройка github actions для запуска тестов и автоматической сборки проекта на gh-pages

Настройка github actions для тестов и сборки на gh-pages

Прежде всего нужно создать ключ для доступа к репозиториям. Один ключ можно использовать для разных репозиториев. Для этого идём в github, в настройки разработчика, и переходим к персональным токенам и жмём сюда для генерации ключа.


При генерации ключа отмечаем поля repo, workflow, user, даём название и копируем сам ключ.


Далее полученный ключ нужно поместить в секреты репозитория. Даём название секрету, которое будем использоваться в github actions. И вставляем сюда, ранее скопированный ключ.


Теперь переходи в настройки github actions репозитория. Задаём название для workflow, и пишем его... после жмём start commit. При целевых событиях будет происходить запуск workflow.


Содержимое workflow(можно скопировать):
решётка обозначает комментарий, их можно вырезать

# название
name: Project test & build

# целевые события для запуска
# в данном случае это push и pull_request, в ветку master
on:
  push:
    branches: [ master ]
  pull_request:
    branches: [ master ]

# выполняемые действия
jobs:
  build-and-deploy:
    runs-on: ubuntu-latest
    
    # запускаются по шагам
    # name - название шага
    # в github actions будет выводиться название шага, и процессы
    steps:
      - name: Checkout 🛎️
        uses: actions/[email protected]
        with:
          persist-credentials: false

      - name: Install 🔧
        run: npm install

      - name: Run Test 🔨
        run: npm run test

      - name: Build 👷
        run: npm run build

      - name: Deploy 🚀
        uses: JamesIves/[email protected]
        with:
          # в значение GITHUB_TOKEN помещается ссылка на ваш секрет в репозитории
          # в данном случае его название KEY
          GITHUB_TOKEN: ${{ secrets.KEY }}
          BRANCH: gh-pages
          FOLDER: public
          CLEAN: true

Ссылку на gh-pages можно мосмотреть в настройках репозитория, почти в самом низу.


И напоследок можно добавить бэйджик данного workflow в readme.md

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment