GitHub Actions
| Введение | |
| Создать бесплатный репозиторий на GitHub | |
| Создать Simple Workflow | |
| Анализ ошибок | |
| Редактирование .yml файла | |
| Запус вручную | |
| Другие статьи про Git |
Введение
В этой статье мы разберем GitHub Actions на примере бесплатного репозитория. Про корпоративные репозитории вы можете прочитать здесь
Создать бесплатный репозиторий на GitHub
Для демонстрации возможностей GitHub Actions создадим новый репозиторий
Создать Simple workflow
Приступим к созданию простейшего workflow в новом репозитории
Полный код на январь 2025-го года.
# This is a basic workflow to help you get started with Actions name: CI # Controls when the workflow will run on: # Triggers the workflow on push or pull request events but only for the "main" branch push: branches: [ "main" ] pull_request: branches: [ "main" ] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: # 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@v4 # Runs a single command using the runners shell - name: Run a one-line script run: echo Hello, world! # Runs a set of commands using the runners shell - name: Run a multi-line script run: | echo Add other actions to build, echo test, and deploy your project.
Внесём небольшие изменения. Сделаем несколько echo, плюс раз этот workflow запускается на Ubuntu выведем на экран информацию о хосте .
# This is a basic workflow to help you get started with Actions name: Devhops.ru # Controls when the workflow will run on: # Triggers the workflow on push or pull request events but only for the "main" branch push: branches: [ "main" ] pull_request: branches: [ "main" ] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: # 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@v4 # Runs a single command using the runners shell - name: Run a one-line script run: echo Thank you for visiting https://devhops.site # Runs a set of commands using the runners shell - name: Run a multi-line script run: | echo Our telegram channel is, echo https://t.me/aofeed echo You are welcome to subscribe! hostnamectl
Просмотр этих логов может быть очень полезен для выяснения причин ошибки.
Анализ ошибок
Предположим, что мы допустили ошибку в .yml файле.
… # Runs a set of commands using the runners shell - name: Run a multi-line script run: | echo Our telegram channel is, echo https://t.me/aofeed echo You are welcome to subscribe! ${ hostnamectl }
Прочитав лог можно понять, что ошибка на четвёртой строке нашего многострочного скрипта
… line 4: ${ hostnamectl }: bad substitution
Редактирование .yml файла
Чтобы внести изменения в существуюй workflow нужно отредактирвоать .yml файл.
Перейти к .yml файлу можно несколькими способами
Запус вручную
Чтобы внести изменения в существуюй workflow нужно отредактирвоать .yml файл.
Перейти к .yml файлу можно несколькими способами
Автор статьи: Андрей Олегович
| Git remote | |
| Git | |
| GitHub | |
| Actions | |
| Переход с https аутентификации на ssh | |
| GitLab |