Leider gibt es nur eine Seite, die ich finden kann. Ich versuchte es auch mit einfacheren Pipelines wie Hallo Welt, aber ich konnte es nicht funktionieren. Nur teilen kann vielleicht jemand von it profitieren.
Ich habe Teile wie das Erzeugen von ssh-Schlüssel, Vorbereitung von TSA weggelassen.
Vorbereiten des Windows-Worker
Nun wenden wir unsere Aufmerksamkeit auf unseren Windows-Server, in der wir einen Concourse Arbeiter drehen werden.
Zuerst wir wollen ein Verzeichnis etablieren unsere Binärdateien für den Arbeiter-Dienst und seine Daten Hause dh C: \ concourse
C:\> mkdir concourse
C:\> cd concourse
C:\concourse>
nun den Windows-concourse binären herunterladen (mit dem Namen etwas wie „concourse_windows_amd64.exe ") von der Concourse-Download-Seite und legen Sie sie in unser Arbeitsverzeichnis. Außerdem werden wir auch die Dateien "tsakey.pub" und "workerkey" kopieren.
Die Tatsache, dass wir unsere lokale Verbindungs-Binärdatei mit "tsakey.pub" bereitstellen, stellt fest, dass wir den TSA-Server kryptografisch von unserer Bereitstellung aus vertrauen.
Wir sind jetzt bereit, den Arbeiter zu starten und sich bei der TSA registrieren zu lassen.
C:\concourse> .\concourse_windows_amd64.exe worker \
/work-dir .\work /tsa-host <IP of the TSA> \
/tsa-public-key .\tsakey.pub \
/tsa-worker-private-key .\workerkey
Wenn alles gut geht sollten wir Ausgabe sehen ähnlich wie:
{"timestamp":"1478361158.394949198","source":"tsa","message":"tsa.connection.forward-worker.register.done","log_level":1
,"data":{"remote":"<IP:SOURCE-PORT of the TSA>","session":"3.1.4","worker-address":"<IP:PORT of this worker>","worker-platform":"windows",
"worker-tags":""}}
und der neue Arbeiter in der Liste über die Concourse CLI als solche erscheinen:
~/ $ fly -t ci workers
name containers platform tags team
2a334e70-c75c 3 linux none none
WORKERSHOSTNAME 0 windows none none
Testing Things Out
Angenommen, das .NET-Framework ist auf unserem Worker mit den Build-Tools im Pfad wir c Testen Sie dies, indem Sie dieses einfache .NET Console-App-Projekt erstellen: https://github.com/chrisumbel/DatDotNet.git.
Betrachten Sie die Pipeline:
resources:
- name: code
type: git
source:
uri: https://github.com/chrisumbel/DatDotNet.git
branch: master
jobs:
- name: build
plan:
- aggregate:
- get: code
trigger: true
- task: compile
privileged: true
file: code/Pipeline/compile.yml
mit der Build-Task:
platform: windows
inputs:
- name: code
run:
dir: code
path: msbuild
Beachten Sie, dass die Plattform in der Build-Task angegeben ist "Fenster". Dies weist die Halle an, die Aufgabe einem Windows-Mitarbeiter zuzuweisen.
Wenn alles gut gegangen ist sollten wir einen erfolgreichen Build mit Ausgabe ähnlich sehen:
~/ $ fly -t ci trigger-job -j datdotnet/build --watch
started datdotnet/build #8
using version of resource found in cache
initializing
running msbuild
Microsoft (R) Build Engine version 4.6.1085.0
[Microsoft .NET Framework, version 4.0.30319.42000]
Copyright (C) Microsoft Corporation. All rights reserved.
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
Build started 11/5/2016 4:04:00 PM.
...
nces, or take a dependency on references with a processor architecture that matches the targeted processor architecture of your project. [C:\concourse\work\containers\00000arl2se\tmp\build\36d0981b\code\DatDotNet\DatDotNet.csproj]
3 Warning(s)
0 Error(s)
Time Elapsed 00:00:00.22
succeeded
Haben Sie jemals einen Weg finden, diese Arbeit zu machen? Ich fragte und wurde gesagt, dass es nicht unterstützt wird. –