IBM® UrbanCode Deploy에
빌드 시스템에 대한 소스 구성 유형이 없으면 udclient 명령행 클라이언트를
사용하여 컴포넌트를 관리할 수 있습니다.
이 태스크 정보
이 방법으로
udclient 클라이언트를 사용하면
새 버전의 컴포넌트를 서버에 푸시할 수 있으며 프로세스를 시작할 수 있으며
외부 소스에 링크를 추가할 수 있으며
IBM UrbanCode Deploy 서버에서
빌드 프로세스의 일부로 여러 기타 태스크를 실행할 수 있습니다. 이 방법을 사용하는 경우,
빌드 기술을 변경하지 않고
IBM UrbanCode Deploy에서
사용자의 컴포넌트를 사용하여 작업할 수 있습니다.
프로시저
다음 일반 단계에 따라 명령행 클라이언트를 사용하는 컴포넌트를 설정하십시오.
- IBM UrbanCode Deploy에서
하나 이상의 컴포넌트를 작성하여
사용자 빌드의 컴포넌트를 표시하십시오. 새 컴포넌트 작성 창에서 다음과 같은 매개변수를 사용하십시오.
- 소스 구성 유형 필드에서 없음을 선택하십시오.
- 자동으로 버전 가져오기 선택란을 선택 취소하십시오.
- 창의 나머지 필드를 평소처럼 완료하십시오.
- 컴포넌트에 대한 빌드 스크립트에서
udclient 클라이언트 명령을 호출하는 코드를 추가하여
컴포넌트 버전을 작성하고 아티팩트를
IBM UrbanCode Deploy 서버에 업로드하십시오. 대부분의 경우에, 버전을 작성하기 위해 여러 가지 다른 명령을 사용합니다. 다음 단계에서는
사용 가능한 몇 가지 명령의 예를 보여줍니다.
참고: 이러한 예는 Apache Ant 빌드 파일 내의 코드를 사용합니다. 특히
Ant <exec> 명령을 사용하여
udclient 클라이언트를 호출하고 이는 외부 프로그램을 호출합니다. 다른 빌드 기술을 사용하고 있는 경우에는
udclient 클라이언트를 호출하기 위한 사용자의 빌드 기술에 위의 예를 적용해야 합니다.
- createVersion 명령을
사용하여 새 버전을 작성하십시오. 다음 예제 코드가 mycomponent라는 이름의 컴포넌트 버전을 작성합니다. 버전 이름은
빌드의 시간소인으로 설정됩니다. ${udclient.weburl}, ${udclient.username} 및
${udclient.password} 변수는 서버의 URL, 서버의 사용자 이름 및 비밀번호를 표시합니다.
<exec executable="/bin/bash"
outputproperty="mycomponent.component.output">
<arg value="/opt/udclient/udclient"/>
<arg value="-weburl"/>
<arg value="${udclient.weburl}"/>
<arg value="-username"/>
<arg value="${udclient.username}"/>
<arg value="-password"/>
<arg value="${udclient.password}"/>
<arg value="createVersion"/>
<arg value="-component"/>
<arg value="mycomponent"/>
<arg value="-name"/>
<arg value="${buildTimestamp}"/>
</exec>
- addVersionFiles 명령을
사용하여 아티팩트를 컴포넌트 버전에 업로드하십시오. 다음 예제 코드는 ${destdir} 폴더 내의 파일을 서버에 업로드합니다.
<exec executable="/bin/bash">
<arg value="/opt/udclient/udclient"/>
<arg value="-weburl"/>
<arg value="${udclient.weburl}"/>
<arg value="-username"/>
<arg value="${udclient.username}"/>
<arg value="-password"/>
<arg value="${udclient.password}"/>
<arg value="addVersionFiles"/>
<arg value="-component"/>
<arg value="mycomponent"/>
<arg value="-version"/>
<arg value="${buildTimestamp}"/>
<arg value="-base"/>
<arg value="${destdir}"/>
</exec>
- 옵션: 컴포넌트 버전으로부터 링크를 추가하십시오. addVersionLink 명령을
사용하여 버전에서 외부 빌드 자원(빌드 결과에 대한 정보를 표시하는 페이지 등)으로 링크를 추가할 수 있습니다. 이러한
링크는 컴포넌트 버전에 대한 정보 페이지의 맨 위에 표시됩니다. 다음은
소스 코드 관리 시스템 내의
관련 빌드 작업 및 관련 빌드 결과에 대한 링크가 있는 컴포넌트 버전을
표시하는 그림입니다. 예를 들어, 다음 코드는 URL이
http://build.example.com/projects/mycomponent/${buildResultUUID}인
빌드 결과 페이지에 링크를 추가합니다.
<exec executable="/bin/bash">
<arg value="/opt/udclient/udclient"/>
<arg value="-weburl"/>
<arg value="${udclient.weburl}"/>
<arg value="-username"/>
<arg value="${udclient.username}"/>
<arg value="-password"/>
<arg value="${udclient.password}"/>
<arg value="addVersionLink"/>
<arg value="-component"/>
<arg value="mycomponent"/>
<arg value="-version"/>
<arg value="${buildTimestamp}"/>
<arg value="-linkName"/>
<arg value="External build result"/>
<arg value="-link"/>
<arg value="http://build.example.com/projects/mycomponent/${buildResultUUID}"/>
</exec>
결과
이제 외부 빌드 도구에서
빌드를 실행하면 빌드 프로세스가 컴포넌트 버전을 작성하고 버전에 대한 아티팩트를
IBM UrbanCode Deploy 서버에 업로드합니다.
이 지점부터 평소처럼 서버에서 컴포넌트 및 버전을
사용하여 작업할 수 있습니다. 예를 들어, 프로세스 실행 등을 수행할 수 있습니다.
또한
사용자의 빌드 스크립트에 기타 명령을 추가할 수 있습니다. 예를 들어,
requestApplicationProcess 명령을
사용하여 애플리케이션 프로세스를 시작할 수 있습니다.