2014-01-25 2 views

ответ

0

Вам нужно муравейника SDK (нажмите на ссылку «Инструменты» в верхней части экрана Pro Муравейник)

Добавьте remoting/lib и remoting/conf вам CLASSPATH. Используя эти импортные товары:

import com.urbancode.anthill3.domain.buildrequest.BuildRequest; 
import com.urbancode.anthill3.domain.buildrequest.RequestSourceEnum; 
import com.urbancode.anthill3.domain.project.Project; 
import com.urbancode.anthill3.domain.project.ProjectFactory; 
import com.urbancode.anthill3.domain.security.User; 
import com.urbancode.anthill3.domain.security.UserFactory; 
import com.urbancode.anthill3.domain.trigger.remoterequest.repository.RepositoryRequestTrigger; 
import com.urbancode.anthill3.domain.workflow.Workflow; 
import com.urbancode.anthill3.main.client.AnthillClient; 
import com.urbancode.anthill3.persistence.UnitOfWork; 
import com.urbancode.anthill3.runtime.scripting.helpers.WorkflowLookup; 
import com.urbancode.anthill3.services.build.BuildService; 

Этот код будет искать проект и рабочий процесс, а затем начать сборку.

AnthillClient anthill = AnthillClient.connect(hostStage, remotingPort, username, password); 
    UnitOfWork uow = anthill.createUnitOfWork(); 

    Project prj = ProjectFactory.getInstance().restoreForName("My Project"); //'My Project' is the project name. 
    Workflow wflow = WorkflowLookup.getForProjectAndName(prj, "My Workflow"); //'My Workflow' is the workflows name/key 

    User usr = UserFactory.getInstance().restoreForName("username"); 

    RepositoryRequestTrigger req1 = new RepositoryRequestTrigger(); 
    req1.setWorkflow(wflow); 
    req1.setNew(); 
    req1.setName("Git Repository Trigger"); 

    uow.register(req1); 
    uow.commit(); 

    BuildRequest br = BuildRequest.createOriginatingRequest(wflow.getBuildProfile(),usr, RequestSourceEnum.EVENT,req1); 
    br.setForcedFlag(true); 

    //Set any build properties here 
    br.setPropertyValue("gitBranch","develop",false); 
    BuildService.getInstance().runBuild(br); 
2

Альтернативный (более простой, но менее гибкий) подход ... Создание триггера на рабочем процессе сборки и использовать Wget или локон, чтобы отправить HTTP POST, чтобы муравейник передавая необходимые параметры с POST.

Вот способ отправки HTTP POST с использованием HTML FORM.

http://anthillizer.com/display/main/How+to+create+a+simple+tool+to+fire+an+AnthillPro+CI+Trigger Вы можете сделать то же самое с wget.

Надеюсь, это поможет! Eric

+0

Спасибо за сообщение! Это был наш нынешний подход, однако мы не знали, как передать любой из требуемых параметров, таких как настройка ветви SCM. Я вижу, что в этой статье указывается, как это сделать. Я тоже поиграю с этим. – checketts

Смежные вопросы