2017-02-20 1 views
2

나는 서버와 많은 빌드/테스트/배포 도구와 관련된 많은 지식을 필요로하는 상당히 구체적인 질문이 있습니다.연속적인 배송 파이프 라인 구축

.NET 용 연속 파이프 전달 파이프 라인을 만들었지 만 결국에는 약간 비싸게 보입니다. 우리는 아직 ASP .NET MVC와 같은 몇 가지 프로젝트를 점차적으로 성장시킬 팀을 만들지 않습니다.

기본적으로 Visual Studio, Jira 및 BitBucket Cloud에서 작업해야합니다. 그래서 테스트 및 코드 품질 메트릭을 위해 NUnit과 Resharper를 추가했습니다. TeamCity를 CI 도구로 추가했습니다. 결국 자동화 배포 도구 용 Octopus Deploy에 대한 합의를 마쳤습니다.

짐작할 수 있겠지만, 꽤 비싸게 보입니다. 이미 Visual Studio, Jira 및 Bitbucket에 대한 비용을 지불했습니다. 그것과는 별도로, Resharper는 TeamCity와 마찬가지로 유료 도구입니다. 처음에는 무료이지만, 프로세스가 성장한 후에 (3 개 이상의 빌드 에이전트) 실제로 비용이 많이들 것입니다. Octopus Deploy는 비용이 많이 든다.

그래서 지금 사용했던 도구 중 일부를 대체하고 싶습니다. 그러나 내가 읽은 모든 자료가 다른 측면을 조사하고 있기 때문에 새로운 것을 고르기가 어렵습니다. 나는 분기가 커밋 된 것으로 감지되어 솔루션 (+ nuget 패키지)을 컴파일하고 단위 테스트를 실행하며 모든 것이 자동으로 지정된 환경에 새 커밋으로 버전을 배포하는 파이프 라인을 갖고 싶습니다. . 우선 순위는 .NET 응용 프로그램에서 구현되는 가격과 쉬운 방법입니다. 나는 나머지 부분과 함께 작업 할 수있는 솔루션을 발견하지 못했으며 그림에 적합하지 않았습니다.

저는 Jenkins와 MSDeploy를 살펴 보았지만 위의 지정된 문제에 대한 조언이 필요합니다. 또한 한 번 설정해야하고 더 이상 처리하지 않아야하므로 가능한 솔루션이어야합니다.

답변

1

우선 순위가 정말 .NET에서 구현되는 것이 쉬운 경우라면 하루 종일 젠킨스보다 TeamCity를 선택하는 것이 좋습니다. 저는 TeamCity와 TeamCity를 모두 사용하여보다 안정적으로 작업하고 있습니다. 젠킨스는 나에게 많은 문제를 야기하고 상당한 시간을 낭비했다.

Octopus 또는 다른 도구를 사용하기 전에 잠시 동안 수동 배포를 고려하십시오. .NET을 사용하면 일반적으로 1 ~ 2 분 안에 모든 앱을 게시 할 수 있습니다. 하루에 몇 번 배포하면됩니까? 이런 도구를 즉시 사용해야하는 경우에는 매우 집중적 인 것이어야합니다.

기본적으로 구성을 유지하고 낙지를 떨어 뜨리는 것이 좋습니다. TeamCity에서 Jenkins (.NET 용 말하기)까지 큰 걸음을 뗄 수 있습니다.

2

비주얼 스튜디오, jenkins, nexus, jira, gitblit.

젠킨스, 넥서스 및 gitblit은 무료입니다. Jenkins는 gitblit에서 변경 사항을 폴링하고 build를 실행하며 nuget 플러그인을 사용하여 패키지를 생성하고이를 nexus에 업로드하여 Visual Studio에서 사용할 수 있습니다.

젠킨스도 배포에 사용할 수 있습니다. 문어보다 많은 작업이 필요할 수 있지만 모든 문어판은 멋진 powershell 스크립트입니다. jenkins 빌드 작업에 모든 것을 직접 작성해야합니다.

젠킨스, 리눅스 서버에 자바 응용 프로그램을 배포 할 젠킨스 다시

  • 복사 테스트 결과를 runtest.jar -jar

    1. 빌드 항아리
    2. SCP 항아리
    3. 을 통해 ssh를 자바 작업을 배포하거나 소비 직접
  • 관련 문제