Секреты

Секреты – это конфиденциальные данные, которые используются в рабочих процессах CI/CD.

Детальный пример создания ранера смотрите в разделе Использование секретов.

Создание секрета

Для создания секрета на странице настроек репозитория нажать Добавить секрет:

Получение токена

Пример конфигурационного файла с секретом

Данный yaml обработает секрет и отправит сообщение при выполнении условия:

on: [push]
jobs:
  build-test:
    name: Build & Test
    runs-on: ubuntu-latest
    steps:
      - if: ${{ secrets.MY_SECRET == 'secret' }}
        name: Check if secret is correct
        run: echo "true"
      

На примере успешно обработанный секрет:

отображение работы yaml с секретом

Типы секретов

Секрет это произвольное буквенное-цифровое сочетания, к которому присваивается имя. Далее содержание секрета никому недоступно, но можно к нему обращаться через конфигурационный файл. Наиболее часто используемые секреты:

  • токены доступа - API keys, OAuth tokens;
  • пароли, SSH-ключи;
  • сертификаты: SSL/TLS сертификаты и др.

Применение секретов

  • Секреты зашифрованы и могут быть использованы в workflow-файлах YAML.

Преимущества применения секретов

  • Повышение безопасности: Секреты не хранятся в открытом виде.
  • Удобство управления: Секреты можно легко добавлять, редактировать и удалять.
  • Повышение читаемости workflow: Секреты не загромождают workflow-файлы.

Важные моменты

  • Используйте секреты только для конфиденциальных данных.
  • Не храните секреты в открытом виде.
  • Используйте надежные методы шифрования.
  • Регулярно проверяйте и обновляйте секреты.