Teamcity realiza GIT Checkout

El agente de la ciudad del equipo que actualmente realiza la compilation no tiene instalado 'git' es un cuadro de Linux. No puedo haber instalado git allí.

¿Hay algún método nativo en teamcity que pueda soportar el siguiente paso de compilation?

git checkout -b %dynamicversion% 

Dentro de la configuration de raíz de VCS, puede configurar la especificación de twig. La especificación de sucursal le permitirá ejecutar una sucursal específica (es decir: +:feature/* )

Luego aparecerá un cuadro combinado en la parte superior de su proyecto, para seleccionar su proyecto.

Si la twig para comstackr depende de algo en su código, puede hacer múltiples configuraciones, con dependencies y desencadenando mediante API.

Build 1

Construya en <default> donde obtiene la twig para ejecutar. API Call en teamcity que llamará a Build 2 con la branch parámetro establecida en el valor especificado:

 # RunSpecificBranch.ps1 # PowerShell: Run Build Configuration on a specific branch Param( [Parameter(Mandatory=$true)][string]$branchName, [Parameter(Mandatory=$true)][string]$BuildToRun ) Begin { $TCUrl = "http://&lt;teamcityURL&gt;/httpAuth/app/rest/buildQueue" Execute-HTTPPostCommand $TCUrl "<build branchName=""$branchName""><buildType id=""$buildToRun""/></build>" } 

Y RunSpecificBranch.ps1 -branchName: feature/ME/AwesomeFeature -buildToRun: Project_SubProject_SpecificBuildOnBranch este script como: RunSpecificBranch.ps1 -branchName: feature/ME/AwesomeFeature -buildToRun: Project_SubProject_SpecificBuildOnBranch dentro de su compilation Paso.

El pago de la sucursal será realizado por el server antes de ejecutar la configuration de compilation Project_SubProject_SpecificBuildOnBranch

Build 2

Especificado para ejecutarse en varias sucursales como se especifica a continuación, aquí hará su lógica personalizada que necesita.

Responde a tu pregunta Debes asegurarte de que el package git esté instalado en el cuadro de Linux, para ello puedes hacer lo siguiente.

Supongo que usarás pistas en tu agente de la ciudad de Team para ejecutar el linux.

Si usa makefile o script, puede agregar un destino que sea llamado prepare-dev o "anymeaningfull_name" en el que puede intentar instalar el package git como requisitos previos.

 git checkout -b %dynamicversion% 

Lo que entendí es que desea consultar la última twig que tiene la label buildversion.

Puede crear el file ts.native.ini agregar el package de dependencia,

 suite: precise mirror: http://xx.archive.ubuntu.com/ubuntu components: main restricted universe packages: mtools devscripts gcc make git libgnutls28-dev libboost-test-dev sudo e2fsprogs prepare: make prepare-dev preparefiles: Makefile 

Una vez que hayas hecho esto, puedes agregar el objective. Puedes usarlo en tu script.

 #!/bin/sh set -e if [ "$(whoami)" != "root" ]; then echo "Please run as root" exit 1 fi git clean -xfd trap "$TRACKS -u" EXIT _mkdebs() { export TRACKS_INIFILE=ts.trusty(native).ini $TRACKS -b -- make mkdebs CCACHE_DIR=$CCACHE_DIR } 

Puede agregar el file de seguimiento ts.native.ini en su agente teamcity para que instale todas las prerrequisitos necesarias.