GithubAction

  • repository의 이벤트에 반응하여 자동화된 워크 플로우를 실행하는 시스템
  • .github/workflows내 yaml로 정의된다.
  • jobs, steps, actions 등을 설정할 수 있다.
  • workflow는 이벤트 발생 시 지정된 환경에서 컨테이너 또는 가상 머신 위에서 실행된다.
  • job은 서로 독립, 병렬로 실행될 수 있다.
  • build, test, deploy 등의 작업 수행이 가능해진다.
  • workflow는 githubAction에서 실행되는 자동화 프로세스를 정의하는 단위다. 각 작업은 독립적으로 실행되며, 여러 개의 단계로 구성될 수 있다.
  • step은 각 작업 내에서 순차적으로 실행되며, 성공적으로 완료되어야 작업이 성공적으로 완료된다.
    • 작업 간: 각각 작업은 독립적인 가상 머신 또는 컨테이너에서 실행되며, 서로 격리되어 있다.
    • 단계 간: 동일한 작업 내의 단계는 같은 환경을 공유하므로, 각 단계가 별도의 컨테이너에서 실행되는 것은 아니다.
  • Action은 Marketplace에서 가져오거나 직접 작성한 재사용 가능한 코드 조각이다.
  • 이를 재활용하여 배포 등과 같은 다양한 작업을 자동화할 수 있다.
  • Secrets는 레포지토리의 중요한 데이터를 안전하게 저장하고 관리하는데 사용한다.
  • API Token, SSH 키, 암호 등과 같이 민감한 정보를 포함할 수 있다.
  • Secrets는 보안을 유지하기 위해서 암호화되어 저장되며, 워크플로우 실행 중에서 필요할 때만 복호화되어 사용된다.