TIL(Today I Learned)
2월 26일(일)
공부한 내용을 제 언어로 빠르게 정리한 내용이라서 잘못된 내용이 있을 수 있습니다.
- Github Actions
- 자동화 도구
- 유사한 서비스로 Travis-CI, GitLab CI/CD, Jenkins 등이 있다.
- 코드에 변화가 생기면 지정해 놓은 작업들을 자동으로 수정해준다.
- 사용
- Deployment(배포)
- Code Linting(코딩 스타일 준수 여부 체크)
- Unit test
- 작동 방식
- Trigger(Push to Github) -> Job(Run Unit Test) -> Result(Success/Fail)
- 로컬에서 작업한 내용을 깃헙에 푸쉬하면, 깃헙에 미리 지정해놓은 작업들을 자동으로 수행하고 결과를 알려주는 방식으로 작동.
- 가격
- 분단위로 지불
- 2000분은 무료로 사용가능
- 세팅 방법
- “.github/workflows/checks.yml” 경로에 트리거를 기재하고 린팅, 테스팅 등의 작업들을 기재해놓으면 된다.
- 예)
--- name: Checks on: [push] jobs: test-lint: name: Test and Lint runs-on: ubuntu-20.04 steps: - name: Login to Docker Hub uses: docker/login-action@v1 with: username: $ password: $ - name: Checkout uses: actions/checkout@v2 - name: Test run: docker-compose run --rm app sh -c "python manage.py test" - name: Lint run: docker-compose run --rm app sh -c "flake8"