2014-12-11 2 views
0

이야기의 여러 속성을 수정하기 위해 VersionOne Java API와 함께 작업하고 있습니다. 그러나 VersionOne을 내 지속적인 통합 환경과 통합하려고합니다. BuildRuns에 대해 조금 읽었지만 API에서 buildrun을 작성한 다음 스토리에 할당하는 방법에 대해 많이 알지 못합니다. 누군가 buildrun이 수행하려고하는 것과 Java API를 사용하여 빌드하는 방법에 대한 간단한 아이디어를 줄 수 있습니까? 코드 예제가 도움이 될 것입니다.빌드 실행 개념

감사

답변

0

BuildRun는 작업중인 프로젝트의 빌드를 대표하고는이 관련되어있는 BuildProject, 포함 된 변경 집합 및 기사 및 결함 (PrimaryWorkitems)에 대한 정보가 포함되어 있습니다 그것에서 언급 된. 또한

는 BuildRuns는 자산 계층의 일부입니다 :

  • 프로젝트는
  • BuildProjects이 BuildRuns
  • BuildRuns이 변경 집합

당신은 BuildRun의 속성을 볼 수 있습니다를 가지고있다 BuildProjects이 이 VersionOne 메타 API 쿼리가있는 저작물 :

http://{server}/{instance}/meta.v1/BuildRun?xsl=api.xsl 

메타에서 볼 수 있듯이 BuildRun의 필수 속성은 BuildProject, 날짜 및 이름입니다. 즉, BuildRun을 만들려면 먼저 BuildProject를 만들어 연결해야합니다.

이미 BuildProject을 가지고,이 같은 BuildRun을 생성하는 HTTP POST를 발급 할 수 있습니다 가정 :

URL :

http://{server}/{instance}/rest-1.v1/Data/BuildRun 

XML 페이로드 :

<Asset> 
    <Attribute name="BuildProject" act="set">BuildProject:4049</Attribute> 
    <Attribute name="Name" act="set">My New BuildRun</Attribute> 
    <Attribute name="Date" act="set">12/17/2014</Attribute> 
</Asset> 

또는, Java SDK를 사용하면 다음과 같이 보입니다.

public static void createBuildRun() throws V1Exception { 

    V1APIConnector _dataConnector = new V1APIConnector("http://{server}/{instance}/rest-1.v1/", "username", "password"); 
    V1APIConnector _metaConnector = new V1APIConnector("http://{server}/{instance}/meta.v1/"); 

    IMetaModel _metaModel = new MetaModel(_metaConnector); 
    IServices _services = new Services(_metaModel, _dataConnector); 

    Oid buildProjectId = Oid.fromToken("BuildProject:4049", _metaModel); 
    IAssetType assetType = _metaModel.getAssetType("BuildRun"); 
    Asset newAsset = _services.createNew(assetType, buildProjectId); 
    IAttributeDefinition nameAttribute = assetType.getAttributeDefinition("Name"); 
    IAttributeDefinition dateAttribute = assetType.getAttributeDefinition("Date"); 
    newAsset.setAttributeValue(nameAttribute, "My New BuildRun"); 
    newAsset.setAttributeValue(dateAttribute, new Date("12/17/2014")); 
    _services.save(newAsset); 
}