2013-06-30 34 views
5

Tôi đang chạy TeamCity 8 Server và Xây dựng Agent (được cài đặt với WebStart) trên Mac OSX 10.8Tại sao đại lý xây dựng TeamCity được đánh dấu là "Không tương thích"?

của tôi chỉ xây dựng đại lý là sắp lên như không tương thích với lý do

Implicit requirements: 
AppBuildType defined in Build step: Command Line 

Tuy nhiên, xây dựng đại diện của tôi sẽ liệt kê:

.NET Process Runner: Runner to run .NET processes under specified runtime, framework  version and with/without code coverage 
Ant: Runner for Ant build.xml files 
Command Line: Simple command execution 
Duplicates finder (Java): Runner for gathering IntelliJ IDEA duplicates results 
Gradle: Runner for Gradle projects 
Inspections (IntelliJ IDEA): Runner for gathering IntelliJ IDEA inspection results 
IntelliJ IDEA Project: Runner for IntelliJ IDEA projects 
Ipr (obsolete runner): Runner for IntelliJ IDEA project (.ipr) files 
Maven: Runner for Maven builds 
MSBuild: Runner for MSBuild files 
NAnt: Runner for NAnt build files 
NUnit: NUnit tests runner 
Rake: Runner for executing Rake tasks, Test::Unit and RSpec tests 
Visual Studio (sln): Microsoft Visual Studio solution (.sln) runner 
Visual Studio 2003: Microsoft Visual Studio .NET 2003 solution file build runner 
Xcode Project: Runner for Xcode projects 

Bạn có thể thấy rằng Command Line: Simple command execution thực sự là trong danh sách các loại xây dựng tương thích của đại lý xây dựng của tôi - nhưng nó đã được đánh dấu là KHÔNG tương thích.

Điều gì khác có thể khiến điều này xảy ra? Tôi có sai khi mong đợi rằng nó phải tương thích bởi vì các loại được xây dựng phù hợp?

Lưu ý: Tôi đã thử tắt bước xây dựng đó và sau đó nó thực sự trở thành 'tương thích'. Renable, và nó trở lại 'không tương thích' một lần nữa.

Trả lời

5

chung

Khi bạn thấy điều này, kiểm tra lại bước xây dựng của bạn. Một trong các bước của bạn sử dụng dòng lệnh có một số đối số không hợp lệ.

Cách dễ nhất để thu hẹp nó là vô hiệu hóa tất cả các bước (hoặc chỉ với các bước có dòng lệnh) và sau đó bắt đầu chuyển từng bước một, xem để xem liệu nó có tác động đến tính tương thích của bạn hay không.

Trong trường hợp của bạn ...

Bạn dường như chỉ có bước dòng một lệnh, do đó nên được dễ dàng. Vô hiệu hóa nó, và nó sẽ cho bạn thấy rằng bây giờ bạn có các tác nhân tương thích một lần nữa. Kích hoạt lại nó và hack vào nó cho đến khi bạn có thể làm cho nó hoạt động. Tôi đã nhìn thấy vấn đề trước khi với các đối số, đường dẫn đến các tập tin, vv, và bạn không nhận được một thông báo lỗi rất hữu ích.

+0

Cảm ơn Damon - Tôi sẽ thử cái này - tôi chắc chắn không mong đợi điều này bởi vì tôi không ngờ TeamCity sẽ cố gắng 'phân tích cú pháp' dòng lệnh của tôi. Tôi nghĩ rằng nó sẽ chỉ biết có một vấn đề khi nó đến để thực thi kịch bản. – Adam

+0

Không sao cả; nếu bạn thu hẹp nó nhưng vẫn không thể thực hiện được bước đó, hãy đăng các thiết lập đã được vệ sinh và tôi sẽ xem liệu có bất cứ điều gì nhảy ra ngoài không. Một trong những nơi mà nó đã cho tôi là một cái gì đó ngớ ngẩn, và tôi đã xung quanh nó bằng cách đặt lệnh vào một kịch bản và gọi kịch bản thay vì làm tất cả trong hộp lệnh. – Damon

+2

Ok - đây là vấn đề. Tôi không thể có được "Command Line" làm việc bây giờ quan trọng những gì tôi đã làm (bao gồm giảm kịch bản của tôi để chỉ 'echo hello') - tuy nhiên, tôi đã thay đổi loại thành "Executable" và sau khi ban đầu có vấn đề với nó quá - tôi theo dõi một các biến được sử dụng trong các tham số của tôi không nằm trong danh sách các tùy chọn của TeamCity 8. Nếu bất cứ ai từ TeamCity đang đọc này - hãy cập nhật lỗi của bạn cho kịch bản này, bởi vì nó gây hiểu lầm. Nếu bạn phân tích cú pháp tập lệnh để xác thực các biến và một tập lệnh không hợp pháp, hãy hiển thị điều này trên trang web ở đâu đó! Cảm ơn Damon – Adam

Các vấn đề liên quan