2011-02-13 2 views
6

매개 변수화 된 허드슨 작업에 대해 다음을 달성하려고합니다. 사용자가 '지금 빌드'를 클릭하면 3 개의 드롭 다운 목록 매개 변수, 즉 환경, 서버, 포트가 표시되어야합니다. 나는 드롭 다운을 동적으로, 즉 환경의 가치를 변화시킬 때 서버의 목록이 그에 따라 바뀌어야하고 비슷하게 포트의 값은 선택된 서버를 기준으로 바뀌어야한다.맞춤형 Hudson 플러그인의 매개 변수화 된 빌드 페이지에서 목록을 동적으로 드롭 다운하는 방법은 무엇입니까?

사용자가 최종 선택을하면 드롭 다운의 세 값을 모두 사용하여 빌드 작업에 매개 변수로 전달되는 단일 값을 만듭니다. 단일 매개 변수에서이를 달성하고이를 동적으로 만드는 방법에 대해 고민하고 있습니다. 내 사용자 정의 플러그인에서 나는 ParameterDefinition 클래스를 확장하고 그 안에 정적 중첩 클래스가이 세 필드에 대한 doFillXXXItems() ParameterDescriptor 클래스를 확장했습니다. 환경 드롭 다운의 값은 로그인 된 사용자 이름에 따라 채워집니다. 누군가가 드롭 다운을 동적으로 만드는 방법을 찾도록 도와 주시면 정말 감사하겠습니다. 나는 당신이 hudson.model.ChoiceParameterDefinition을 상속하고, getChoicesText 자사의 메소드를 오버라이드 (override) 할 수 이미 플러그인 UI-샘플 목록 상자 아래 동적 드롭을 시도했지만 내 경우 :(

답변

1

에서 작동하지 않는 그. 옵션을 반환 당신이 원하는에 따라, 상황에, 당신은 Hudson.getInstance()에서 환경을 얻을 수. 조각 아래

이 환경 변수를 얼마나 표시됩니다

.

Hudson.getInstance().getGlobalNodeProperties() 
     .get(EnvironmentVariablesNodeProperty.class).getEnvVars().get(name); 
관련 문제