8

Я пытаюсь настроить сервер сборки зала (http://concourse-ci.org/), который поддерживает как можно больше языков/платформ.Зал с контейнерами Windows

Я читал, что, начиная с Windows Server 2016, можно будет использовать Windows в качестве контейнеров. По мере того, как на сайте он пишет, что поддерживаются несколько платформ (включая Windows), я задаюсь вопросом, означает ли это, что можно использовать контейнеры Windows?

Если невозможно запустить контейнеры Windows, могу ли я каким-то образом запустить виртуальные машины вместо контейнеров?

+0

ли вы когда-нибудь найти способ, чтобы сделать эту работу? Я спросил, и мне сказали, что он не поддерживается. –

ответ

0

В теории это должно быть возможно сделать через Garden-Windows, поскольку Concourse делегирует все контейнерные API сада.

Никогда не делал этого раньше, я бы не знал, с чего начать.

4

К сожалению, есть только страница, которую я могу найти. Я также попробовал его с более простыми конвейерами, такими как мир привет, но не мог заставить его работать. Просто поделитесь, может быть, кто-то может выиграть от it.

Я ушел из таких частей, как генерация ключа ssh, подготовка TSA.

Подготовка окон Рабочий

Теперь обратим внимание на наш сервер Windows, что мы будем в поворот к Залу работника.

Сначала мы хотим создать каталог для размещения наших двоичных файлов для службы работника и его данные т.е. C: \ стечение

C:\> mkdir concourse 
C:\> cd concourse 
C:\concourse> 

Теперь скачать стечении бинарные файлы (с именем что-то вроде «concourse_windows_amd64.exe ") со страницы загрузки Concourse и поместите ее в наш рабочий каталог. Кроме того, мы захотим также скопировать файлы «tsakey.pub» и «workerkey».

Тот факт, что мы предоставим наш локальный двоичный код с помощью «tsakey.pub», устанавливает, что мы криптографически доверяем TSA-серверу из нашего развертывания.

Теперь мы готовы начать рабочий и зарегистрировать его в TSA.

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 

Если все пойдет хорошо, мы должны увидеть результат, похожий на:

{"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":""}} 

и новый работник должен появиться в списке через Зал CLI как таковые:

~/ $ fly -t ci workers 
name   containers platform tags team 
2a334e70-c75c 3   linux  none none 
WORKERSHOSTNAME 0   windows none none 

тестирование вещи Out

Предполагая, что .NET Framework присутствует на нашем Рабочем с инструментами построения на пути, который мы c ould проверить это, создав этот простой проект приложения .NET Console: https://github.com/chrisumbel/DatDotNet.git.

Рассмотрим трубопровода:

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 

с задачей построения:

platform: windows  
inputs: 
    - name: code 
run: 
    dir: code 
    path: msbuild 

Обратите внимание, что платформа указана в задаче сборки "окно". Это указывает на то, чтобы поставить задачу на рабочего Windows.

Если все прошло хорошо, мы должны увидеть успешную сборку с выходом аналогично:

~/ $ 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 
+1

@TobySpeight спасибо, исправил его! – celebi

+0

Это приведет к тому, что сборка будет выполняться на рабочем месте, а не на рабочем столе. –