Архив рубрики: Git

Git is a distributed version-control system for tracking changes in source code during software development.

Git: сканирование репозиториев с Gitleaks и запуск из Jenkins

12 августа 2021
 

 Утечка конфиденциальных данных, таких как пароли или RSA-ключи в репозиторий Github, даже в приватный – очень неприятное событие, и хотелось бы иметь представление о том, кто и что пушит в репозитории нашей Github-организации. Утилиты сканирования Для проверки репозиториев имеется достаточно много утилит: Gittyleaks – выглядит неплохо, но последнее обновление репозитория 2 года тому Repo Supervisor… Читать далее »

ArgoCD: декларативные Projects, Applications и деплой ArgoCD из Jenkins

18 мая 2021
 

 Создать новое приложение, кластер или репозиторий в ArgoCD можно как используя WebUI, так и описав его в виде Kubernetes-манифеста, который потом можно передать kubectl для создания ресурса. Например, приложения являются CustomResources и описаны в Kubernets CRD applications.argoproj.io: Которые потом доступны в неймспейсе ArgoCD в виде обычных Kubernetes-ресурсов: Удобен этот подход тем, что при создании нового… Читать далее »

Github: обзор Github Actions и деплой с ArgoCD

6 мая 2021
 

 Github Actions уже достаточно давно и плотно используются нашими разработчиками, дошли и у меня руки, что бы поближе познакомиться с этим сервисом от горячолюбимого Microsoft, так как в Github они появились уже после покупки Github этой прекрасной компанией. По сути, Github Actions весьма схож с TravisCI, но более тесно интегрирован в сам Github, вплоть до того,… Читать далее »

ArgoCD: CIOps vs GitOps и деплой приложения из TravisCI

28 ноября 2020
 

 Штош, пришло время подумать о том, как мы будем деплоить наши приложения. Сейчас у нас используются Github-репозитории с кодом и Helm-шаблонами, и Jenkins. Билд в Jenkins в большинстве проектов запускается вручную, после чего: Jenkins-джоба клонирует репозиторий с кодом и манифестами, билдит Docker-образ пушит его в Docker Hub вызывает helm upgrade –install, которому через –set передаёт… Читать далее »

ArgoCD: обзор, запуск, настройка SSL, деплой приложения

19 ноября 2020
 

 ArgoCD помогает деплоить приложения в Kubernetes, используя GitOps подход, т.е. когда приложения, конфиги, манифесты и тому подобные данных хранятся в Git-репозитории. Поддерживает работу с “голыми” манифестами Kubernetes, kustomize, ksonnet, jsonnet и то, чем пользуемся мы – Helm-шаблонами. ArgoCD запускает свой контроллер в Kubernetes-кластере, и отслеживает изменения в Git-репозиториях, синхронизируя приложения в кластере с их манифестами… Читать далее »

Git: git clone – fatal: unable to fork и RSA key fingerprint

23 октября 2020
 

 Имеется Docker-образ с установленным Git. Задача – во время запуска контейнера склонировать в него репозиторий. git clone – fatal: unable to fork Во время попытки выполнения git clone в Docker-контейнере – получаем ошибку “unable to fork“: Причина – тут git для аутентификации использует SSH (git@github.com), которого нет в системе: Устанавливаем: The authenticity of host ‘github.com’… Читать далее »

Kubernetes: дебаг Init containers при запуске SQL-миграций

15 октября 2020
 

 Имеется приложение в Kubernetes. Деплоится из Helm-чарта. При очередном деплое – новые поды не стартуют, а сам деплой падает со стандартной ошибкой “Upgrade “CHARTNAME” failed: timed out waiting for the condition“: wait.go:225: [debug] Deployment is not ready: eks-dev-1-community-api-ns/community-api. 0 out of 3 expected pods are ready upgrade.go:367: [debug] warning: Upgrade “community-api” failed: timed out waiting… Читать далее »

Github: SAML Okta – настройка SSO в Github Enterprise Cloud – Organization

21 октября 2019
 

 В продолжение темы SSO, Okta и SAML. Для Jenkins всё сделано (см. Jenkins: SAML, Okta, группы пользователей и Role-Based Security) – теперь пришёл черёд Github. Идея та же: в Okta держим список пользователей, при логине в Github (наш Service provider, SP) – он должен запросить авторизацию у нашего Identity Provider, IDP – Okta, используя SAML.… Читать далее »

SonarQube: ошибка “SCM provider autodetection failed”

19 июня 2019
 

 Имеется свежая установка SonarQube, см пост SonarQube: запуск в Docker и вызов из Jenkins Pipeline. Проблема Но в дашборде проекта постоянно висит сообщение вида: SCM provider autodetection failed. Please use “sonar.scm.provider” to define SCM of your project, or disable the SCM Sensor in the project settings. И оно же выводится в логах билда в Jenkins.… Читать далее »

Jenkins: запуск PHPUnit из Codeception по Pull Reguest в Github и Allure-репорты

6 июня 2019
 

 Задача – запускать PHPUnit для тестов кода бекенда. Сам PHPUnit будет запускаться из Codeception. Задача в Jenkins должна триггериться из Github, при создании Pull Request – используем Github Pull-Request Builder плагин. Для просмотра отчётов о тестах – используем Allure. Jenkins запущен в Docker-контейнере, и все процессы будет запускать в контейнерах. Проверка тестов Что бы получить… Читать далее »