이 튜토리얼에서는 TeamCity의 아티팩트 규칙에 대해 설명합니다. 아티팩트 규칙은 간단하지만 고려해야 할 몇 가지 미묘한 부분이 있습니다.
이 빌드에서 아티팩트 아이콘 위로 마우스를 가져가면 폴더 구조가 없는 애플리케이션 로그 파일과 Selenium .mp4 기록의 두 가지 아티팩트가 있음을 알 수 있습니다.
Build Configuration settings(빌드 구성 설정) | Artifact paths(아티팩트 경로)로 이동하면 두 아티팩트의 출처가 calculator-service/artifacts/*
디렉터리라는 것을 알 수 있습니다.
아티팩트 경로를 지정하는 데에는 다양한 옵션을 사용할 수 있습니다. 예를 들어,
+:**/* => target_directory
-:directory1 => target_directory
는 directory1
을 제외한 모든 파일을 target_directory
에 게시하도록 TeamCity에 지시합니다.
이 예에서는 계산기 디렉터리 내에 모든 항목을 포함하고 이를 모든 빌드에 있는 아티팩트 폴더에 넣도록 TeamCity에 지시합니다. 이 폴더는 Amazon S3 또는 다른 스토리지 공급자에 저장될 수 있습니다.
다음 두 줄은 동일합니다.
다른 아티팩트 경로를 지정해 보겠습니다. artifacts
하위 폴더에 모든 항목을 포함하는 대신 파일을 another_directory
로 이동하도록 TeamCity에 지시하겠습니다. 또한 모든 .log
파일이 스토리지로 복사되지 않도록 제외할 것입니다.
이러한 규칙은 추가적이므로 모든 파일을 포함하고 이를 다른 디렉터리로 이동하도록 TeamCity에 지시합니다. 그 외에도 .log
파일을 제외하도록 TeamCity에 지시합니다.
마무리하기 위해 다른 규칙을 추가해 보겠습니다.
+:calculator-service/**/application.log => hello_world/whatever.log
이 규칙을 사용하여 calculator-service
디렉터리의 모든 하위 디렉터리 **
에서 애플리케이션 로그 application.log
를 가져와 hello_world
폴더에 넣으라고 TeamCity에 지시합니다. 또한 application.log
파일의 이름을 whatever.log
로 바꾸도록 TeamCity에 지시합니다.
변경 사항을 저장하고 빌드를 실행하면 아티팩트 스토리지 경로가 변경된 것을 확인할 수 있습니다. 이제 아티팩트가 여러 폴더와 하위 디렉터리에 저장됩니다.
첫 빌드 파이프라인 만들기 및 Jira와 같은 외부 플랫폼에 빌드 정보 보내기에 관한 다른 튜토리얼도 확인해 보세요.
즐겁게 빌드하세요!
자세한 내용은 TeamCity 아티팩트 종속성 문서를 참조하세요.
TeamCity CI/CD 가이드에서 아티팩트 저장소가 무엇인지 알아보세요.