맨위로가기

Travis CI

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

Travis CI는 소프트웨어 프로젝트의 지속적인 통합 및 지속적인 제공을 위한 서비스이다. 저장소의 루트 디렉토리에 `.travis.yml` 파일을 추가하여 구성하며, 이 파일은 프로그래밍 언어, 빌드 및 테스트 환경 등을 지정한다. GitHub와 연동되어 커밋 푸시 또는 풀 리퀘스트 시 빌드를 실행하고, 테스트 결과를 개발자에게 알린다. 다양한 운영 체제 및 프로그래밍 언어를 지원하며, 코드 커버리지 분석과 같은 외부 도구와의 통합도 가능하다. 2011년 독일 베를린에서 설립되었으며, 2019년 Idera, Inc.에 인수되었다. 2020년 11월, travis-ci.org를 travis-ci.com으로 통합하면서 오픈 소스 계정의 무료 지원을 중단했다.

더 읽어볼만한 페이지

  • 지속적 통합 - 젠킨스 (소프트웨어)
    젠킨스는 소프트웨어 개발 프로세스 자동화를 위한 오픈 소스 CI/CD 도구로, 플러그인을 통해 기능을 확장할 수 있으며 빌드, 테스트, 배포 등 다양한 기능을 제공하여 개발 생산성 향상에 기여하는 가장 널리 사용되는 도구 중 하나이다.
  • 지속적 통합 - 애저 데브옵스 서버
    애저 데브옵스 서버는 팀 파운데이션 서버에서 시작하여 변경된 마이크로소프트의 온-프레미스 데브옵스 솔루션으로, 다중 계층 아키텍처를 기반으로 작업 항목, 소스 제어, 보고 기능, 팀 빌드, 릴리스 관리 등의 기능을 제공한다.
  • 루비로 작성된 자유 소프트웨어 - 루비 온 레일즈
    루비 온 레일즈는 데이비드 헤이네마이어 한손이 개발한 MVC 아키텍처 기반의 웹 애플리케이션 프레임워크로, "설정보다 관례"와 "반복 금지" 원칙을 핵심 철학으로 삼아 다양한 웹 서비스 개발에 사용되며 다른 프레임워크에 영향을 주었다.
  • 루비로 작성된 자유 소프트웨어 - 마스토돈 (소프트웨어)
    마스토돈은 ActivityPub 표준을 사용하여 서버 간 통신을 구현하는 분산형 소셜 네트워크 소프트웨어이며, 공개, 비공개 등 다양한 개인 정보 보호 기능을 제공하고 Affero GPL 라이선스 하에 자유 및 오픈 소스로 배포된다.
  • MIT 라이선스 소프트웨어 - MS-DOS
    MS-DOS는 마이크로소프트가 개발한 개인용 컴퓨터용 디스크 운영 체제로, IBM PC의 표준 운영 체제로 널리 사용되었으며, 단일 작업 환경과 명령줄 인터페이스를 특징으로 한다.
  • MIT 라이선스 소프트웨어 - Zcash
    Zcash는 존스 홉킨스 대학교 연구를 기반으로 개발된 익명성 강화 암호화폐로, zk-SNARK 영지식 증명을 통해 거래 당사자의 익명성을 보장하지만, 범죄 악용 우려와 규제 대상 가능성이 존재한다.
Travis CI - [IT 관련 정보]에 관한 문서
개요
유형지속적 통합 서비스
개발사Idera
프로그래밍 언어루비
플랫폼
라이선스독점 라이선스
웹사이트Travis CI 공식 웹사이트
세부 정보
지원 버전 관리 시스템GitHub
비트버킷

2. 설정

Travis CI는 저장소의 루트 디렉토리에 `.travis.yml`이라는 이름의 파일을 추가하여 구성한다. 이 파일은 YAML 형식의 텍스트 파일이다.[6] 이 파일은 사용된 프로그래밍 언어, 원하는 빌드 및 테스트 환경(소프트웨어를 빌드하고 테스트하기 전에 설치해야 하는 종속성을 포함) 및 다양한 기타 매개변수를 지정한다.

3. 운영

Travis CI는 특정 저장소에 대해 활성화되면 GitHub에 새로운 커밋이 푸시되거나 풀 리퀘스트가 제출될 때마다 이를 알린다. 특정 브랜치 또는 특정 패턴과 일치하는 이름을 가진 브랜치에 대해서만 실행되도록 구성할 수도 있다. 그러면 Travis CI는 관련 브랜치를 체크아웃하고 '.travis.yml'에 지정된 명령을 실행하며, 일반적으로 소프트웨어를 빌드하고 자동화된 테스트를 실행한다. 해당 프로세스가 완료되면 구성된 방식으로 개발자에게 알린다[6]. 예를 들어 테스트 결과(성공 또는 실패 표시)가 포함된 이메일을 보내거나 IRC 채널에 메시지를 게시하는 방식이다.

Travis CI는 다양한 소프트웨어가 설치된 다양한 머신(예: 호환성 테스트를 위한 프로그래밍 언어 구현의 이전 버전)에서 테스트를 실행하도록 구성할 수 있다.

Travis CI가 Perforce 기반 저장소를 빌드하고 있으며 통과 상태입니다.


C, C++, C#, Clojure, D, Erlang, F#, Go, Groovy, Haskell, Java, JavaScript, Julia, Perl, PHP, Python, R, Ruby, Rust, Scala, Visual Basic 등 다수의 언어를 지원한다. Plone, Ruby on Rails, 루비, Node.js와 같은 저명한 오픈 소스 프로젝트에 채택되었으며, 2013년 2월 시점에서 8056개 이상의 JavaScript 프로젝트가 사용하고 있다.

3. 1. 지원 아키텍처

Travis CI 빌드에서 사용되는 기본 CPU 아키텍처는 `amd64`이다. `arch` 키가 없을 때 이 아키텍처가 사용된다. 빌드 작업이 어떤 CPU 아키텍처에서 실행되는지는 GUI를 통해 확인할 수 있다.

  • 빌드 작업 목록에는 `arch` 태그 값을 기반으로 특정 레이블과 아키텍처 이름이 표시된다.
  • 빌드 작업 보기에서는 운영 체제 식별자 근처에 동일한 특정 레이블이 표시된다.


아키텍처오픈 소스상업용
amd64
ppc64le아니요
s390x아니요
arm64 (v8)아니요
arm64-graviton2 (v8)



LXD 컨테이너 내에서는 여러 CPU 아키텍처 기반 빌드에서 도커를 사용하는 것이 가능하다. 기본적으로 특정 CPU 아키텍처를 준수하는 도커 이미지가 필요하거나, 빌드에 필요한 관련 라이브러리가 `Dockerfile`에 추가되었는지 확인해야 할 수 있다.

3. 2. 알림

Travis CI가 특정 저장소에 대해 활성화되면, GitHub는 새로운 커밋이 해당 저장소에 푸시되거나 풀 리퀘스트가 제출될 때마다 이를 알린다. 특정 브랜치 또는 특정 패턴과 일치하는 이름을 가진 브랜치에 대해서만 실행되도록 구성할 수도 있다. 그러면 Travis CI는 관련 브랜치를 체크아웃하고 '.travis.yml'에 지정된 명령을 실행하며, 일반적으로 소프트웨어를 빌드하고 자동화된 테스트를 실행한다. 해당 프로세스가 완료되면 Travis는 구성된 방식으로 개발자에게 알린다[6]. 예를 들어 테스트 결과(성공 또는 실패 표시)가 포함된 이메일을 보내거나 IRC 채널에 메시지를 게시하는 방식이다. 풀 리퀘스트의 경우, GitHub 통합을 사용하여 풀 리퀘스트에 결과와 빌드 로그 링크가 주석으로 표시된다.

4. 통합

커버리지 분석이나 정적 분석 등을 수행하는 외부 도구를 이용할 수 있다.[30]

5. 회사

이 회사는 독일 베를린에 본사를 두고 있으며, 2011년에 설립되었다.[8] 2012년에 이 프로젝트는 상당한 성장을 경험했으며[9] 수십 개의 기술 회사들이 후원한 추가 개발 자금을 조달하기 위해 크라우드 펀딩 캠페인을 시작했다.[10][11] 2019년 3월, Travis CI 인프라는 3월 27일부터 3월 29일까지 대규모 정전을 겪었다.[13][14][15] 2020년 3월, Travis CI는 Montana Mendy가 작성한 일반적인 사용 사례에 대한 튜토리얼이 포함된 '요리책'을 소개했다.[16]

5. 1. 요금 정책 변화와 오픈 소스 지원 논란

2019년 1월, Idera, Inc.에 인수되었다.[12]

2020년 11월, Travis CI는 travis-ci.org를 2020년 12월 31일까지 폐쇄하고, 기존 및 신규 계정 모두 travis-ci.com으로 마이그레이션한다고 발표했다. "travis-ci.com에서 오픈 소스 계정을 완전히 무료로 유지하겠다"는 공식 약속에도 불구하고,[17] 오픈 소스 프로젝트들은 빌드 작업이 중단되었다고 보고했다.[18] Travis CI는 더 이상 오픈 소스 계정에 대해 무료가 아니며, 유료 기능을 평가하기 위한 "30일 동안 사용할 수 있는 10,000 크레딧"의 갱신 불가 가입 보너스만 제공한다.[19]

참조

[1] 웹사이트 travis-ci/README.md https://github.com/t[...] 2019-02-24
[2] 웹사이트 Customizing the Build: What Repository Providers or Version Control Systems Can I Use? https://docs.travis-[...] 2019-02-24
[3] 웹사이트 Test your Bitbucket projects with Travis CI Atlassian 2020-04-02
[4] 웹사이트 Migrating Your Open Source Builds Off Of Travis CI https://earthly.dev/[...] 2024-05-01
[5] Github Travis CI at GitHub with many repositories with MIT License https://github.com/t[...]
[6] 웹사이트 Meet Travis CI: Open Source Continuous Integration https://www.infoq.co[...] 2019-02-24
[7] 웹사이트 Travis CI Blog https://blog.travis-[...] 2022-12-06
[8] 웹사이트 About Us {{!}} Travis CI – Testing your Building Blocks since 2011. https://www.travis-c[...] 2022-08-28
[9] 웹사이트 The Travis CI Blog: 2012 at Travis CI - what a blast! https://blog.travis-[...] 2019-02-24
[10] 웹사이트 All you need is love.travis-ci.org https://bendyworks.c[...] 2019-02-24
[11] 웹사이트 Thank you, sponsors http://love.travis-c[...] 2019-02-24
[12] 웹사이트 Travis CI joins the Idera family https://blog.travis-[...] 2019-02-24
[13] 웹사이트 Travis CI users left hanging as platform lies down • DEVCLASS https://devclass.com[...] 2020-10-29
[14] 웹사이트 Slow booting Linux builds https://www.travisci[...] 2020-10-29
[15] 웹사이트 Incident review for slow booting Linux builds outage https://blog.travis-[...]
[16] 웹사이트 A Short Journey into Source Control Branching and Release Patterns https://blog.travis-[...] 2020-11-30
[17] 웹사이트 Open Source at Travis CI - An Update https://blog.travis-[...] 2020-12-28
[18] 웹사이트 .org -> .com migration unexpectedly comes with a plan change for OSS. What exactly is the new deal? https://travis-ci.co[...] 2020-12-28
[19] 웹사이트 Billing Overview https://docs.travis-[...] 2023-11-26
[20] Github Travis CI LICENSE https://github.com/t[...]
[21] 웹사이트 Travis-CI README.textile: Goals https://github.com/t[...] 2012-10-04
[22] 웹사이트 Travis-CI README.textile: Setting server environment up https://github.com/t[...] 2012-10-04
[23] 웹사이트 How We Improved the Installation and Update Experience for Travis CI Enterprise https://blog.travis-[...] 2015-10-25
[24] 웹사이트 Test your Django app with Travis CI http://datadesk.lati[...] 2012-06-14
[25] 웹사이트 Travis documentation https://docs.travis-[...] 2015-02-27
[26] 웹사이트 Plone developer documentation http://developer.plo[...] 2013-06-02
[27] 웹사이트 Travis CI Announces Support for Java and Plans for Travis Pro http://www.infoq.com[...] 2012-02-23
[28] 웹사이트 Rails now tested on Travis CI http://weblog.rubyon[...] 2012-05-27
[29] 웹사이트 Meet Travis CI: Open Source Continuous Integration http://www.infoq.com[...] 2013-02-18
[30] 웹사이트 Travis CI Integration https://scan.coverit[...] 2016-01-22
[31] Github Travis CI LICENSE https://github.com/t[...]
[32] 웹인용 travis-ci/README.md https://github.com/t[...] 2019-02-24
[33] 웹인용 Customizing the Build: What Repository Providers or Version Control Systems Can I Use? https://docs.travis-[...] 2019-02-24
[34] 웹인용 How We Improved the Installation and Update Experience for Travis CI Enterprise https://blog.travis-[...] 2019-02-24



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com