워크플로 아티팩트 살펴보기
워크플로 아티팩트 살펴보기
GitHub Actions 워크플로의 아티팩트로 데이터를 저장하고 공유하는 방법을 알아볼게요.
본문
워크플로 아티팩트 소개
아티팩트는 워크플로 실행 중에 생성된 파일 또는 파일 모음이에요. 아티팩트를 사용하면 작업이 완료된 후 데이터를 유지하고, 같은 워크플로의 다른 작업과 그 데이터를 공유할 수 있어요. 예를 들어 아티팩트를 사용해 워크플로 실행이 끝난 후 빌드 및 테스트 출력을 저장할 수 있어요.
GitHub은 빌드 아티팩트를 업로드하고 다운로드하는 데 사용할 수 있는 두 가지 액션을 제공해요. upload-artifact와 download-artifact예요.
일반적인 아티팩트는 다음과 같아요:
- 로그 파일과 코어 덤프
- 테스트 결과, 실패, 스크린샷
- 바이너리 또는 압축 파일
- 스트레스 테스트 성능 출력과 코드 커버리지 결과
아티팩트 대 의존성 캐싱
아티팩트와 캐싱은 GitHub에 파일을 저장하는 기능을 제공한다는 점에서 비슷하지만, 각 기능은 다른 사용 사례를 제공하며 서로 바꿔 사용할 수 없어요.
- 워크플로 실행 사이에 자주 변하지 않는 파일을 재사용하려면 캐싱을 사용하세요. 예를 들어 패키지 관리 시스템이 다운로드한 의존성, 중간 빌드 출력, 재생성 비용이 비싼 기타 파일이 있어요. 이 파일들을 캐싱하면 워크플로 실행 속도를 높일 수 있어요. 다만 캐시가 없으면 작업이 항상 이 파일들을 재다운로드하거나 재생성할 수 있어야 해요.
- 작업이 생성한 파일을 워크플로 실행이 끝난 후 사용하거나 보기 위해 저장하고 싶을 때, 예를 들어 빌드된 바이너리나 빌드 로그, 또는 워크플로의 작업 사이에 파일을 전달하고 싶을 때는 아티팩트를 사용하세요.
의존성 캐싱에 대한 자세한 내용은 의존성 캐싱 참조를 참고하세요.
빌드용 아티팩트 증명 생성하기
아티팩트 증명을 사용하면 구축한 소프트웨어에 대해 위조할 수 없는 출처와 무결성 보증을 만들 수 있어요. 그러면 소프트웨어를 소비하는 사람들이 소프트웨어가 어디서 어떻게 빌드됐는지 검증할 수 있어요.
소프트웨어와 함께 아티팩트 증명을 생성하면 빌드의 출처를 확립하는 암호학적으로 서명된 주장을 만들게 되며, 여기에는 다음 정보가 포함돼요:
- 아티팩트와 연결된 워크플로 링크
- 아티팩트의 리포지토리, 조직, 환경, 커밋 SHA, 트리거링 이벤트
- 출처 확립에 사용된 OIDC 토큰의 기타 정보. 자세한 내용은 OpenID Connect를 참고하세요.
관련 소프트웨어 자재 명세서(SBOM)가 포함된 아티팩트 증명을 생성할 수도 있어요. 빌드를 빌드에 사용된 오픈소스 의존성 목록과 연결하면 투명성을 제공하고 소비자가 데이터 보호 표준을 준수할 수 있게 해줘요.
빌드 실행 후, 빌드가 생성한 아티팩트 목록 아래에서 증명에 접근할 수 있어요.
자세한 내용은 아티팩트 증명을 사용해 빌드 출처 확립하기를 참고하세요.
삭제된 워크플로 실행의 아티팩트
워크플로 실행이 삭제되면 그 실행과 연결된 모든 아티팩트도 스토리지에서 삭제돼요. GitHub Actions UI, REST API, GitHub CLI를 사용해 워크플로 실행을 삭제할 수 있어요. 참고: 워크플로 실행 삭제하기, 워크플로 실행 삭제, 또는 gh run delete.