GITHUB ACTIONS Flashcards
Користење на Jenkins vs GitHub или GitLab Actions?
Jenkins е одлична алатка за правење на pipelines за интеграција и испорака. Нуди голема флексибилност кога правиме пајплајнс за свои проекти. Сепак е надворешна алатка која треба самите да ја конфигурираме и се менаџира и одржува засебно.
GitHub и GitLab нудат свој систем за менаџирање на пајплајнс и нема потреба сами да го конфигурираме.
Што прават GitHub Actions?
Стартуваат workflow при било каков GitHub настан: push, issue creation, new release, etc.
Акциите може да се комбинираат и конфигурираат за сервисите кои ги користиме и за потребите кои ги имаме.
Постојат community defined actions.
Од кој тип се Actions датотеките за GitHub?
YAML
Во кој директориум се дефинираат акциите на GitHub?
.github/workflows
Доколку имаме дефинирано тајни/креденцијали во GitHub како истите се пристапуваат во workflow.yml
${{secrets.SECRET_NAME}}
Како се конфигурира pipeline во GitLab
Конфигурацијата на пајплајнот се врши од страна на една датотека .gitlab-ci.yml која треба да се наоѓа во коренот на репозиториумот.
Дали stages во GitLab pipeline работат паралелно?
Не, тие се извршуваат редоследно.
Дали jobs работат паралелно во GitLab actions?
Да.
Кој ги извршува jobs во GitLab?
GitLab Runner agent.
Дали се користат secrets во GitLab?
Не, во GitLab креденцијалите се Hidden Variables
Што значи GitOps?
Верување на Git да ја зачува посакуваната состојба на системот и ослонување на авоматизирани операции.
Што е пример за Kubernetes GitOps?
ArgoCD.
Argo cd e декларативен, менаџира инфраструктура и софтверски развој.
Infrastructure as code
Состојбата е синхронизирана во живо кога има промени на репозиториумот преку pull requests. Се верзионира, контролира и се прегледува од човек. Автоматизацијата помага во процесот.
GitSources
GitHub, GitLab, BitBucket, CodeCommit
IaC
Terraform, CloudFormation
IaC with languages: AWS CDK, CDKtf