Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: initial windows workers #317

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

ramonskie
Copy link
Contributor

got this working so you could add windows workers to your concourse on GKE

i created a extra gke-windows nodepool

gcloud container node-pools create concourse-windows-workers \
  --cluster=$CLUSTER_NAME \
  --machine-type=n1-standard-4 \
  --image-type=WINDOWS_LTSC_CONTAINERD \
  --enable-autoscaling \
  --enable-autoupgrade \
  --num-nodes=1 \
  --min-nodes=1 \
  --max-nodes=2 \
  --local-ssd-count 1 \
  --region "$PROJECT_REGION" \
  --tags=workers \
  --node-taints=workers=true:NoSchedule \
  --service-account=${CONCOURSE_SA}@${PROJECT_ID}.iam.gserviceaccount.com

and add the following to helm chart values.

windows_worker:
  enabled: true
  replicas: 1
  tolerations:
    - key: "workers"
      operator: "Equal"
      value: "true"
      effect: "NoSchedule"
    - key: "node.kubernetes.io/os"
      operator: "Equal"
      value: "windows"
      effect: "NoSchedule"
  kind: Deployment
  nodeSelector:
    cloud.google.com/gke-local-ssd: "true"
    cloud.google.com/gke-nodepool: "concourse-windows-workers"
  resources:
    requests:
      cpu: "3000m"

this code needs some cleanup and a good review. as in its current state its a bit hacky.

we are currently using this in our project https://github.com/cloudfoundry/bosh-community-stemcell-ci-infra
this will setup a complete concourse cluster with credhub, uaa, and certs generation etc.

@ramonskie ramonskie changed the title WIP initial windows workers WIP: initial windows workers Nov 23, 2022
@ramonskie
Copy link
Contributor Author

ramonskie commented Nov 23, 2022

the dockerfile to create the windows docker image is.

# escape=`
FROM mcr.microsoft.com/windows/servercore:ltsc2019 as download

SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]

ENV CONCOURSE_VERSION="7.8.3"

# Download file
RUN Invoke-WebRequest ('https://github.com/concourse/concourse/releases/download/v{0}/concourse-{0}-windows-amd64.zip' -f $env:CONCOURSE_VERSION) -OutFile 'concourse.zip' -UseBasicParsing ; `
    Expand-Archive concourse.zip -DestinationPath C:\ ; `
    Remove-Item -Path concourse.zip

# clean env
FROM mcr.microsoft.com/windows/servercore:ltsc2019

COPY --from=download C:\concourse\bin\concourse.exe /concourse.exe


ENTRYPOINT ["\\concourse.exe"]

i created this PR to check if anyone has any intrest in it what so ever

@ramonskie ramonskie mentioned this pull request Nov 23, 2022
@xtremerui xtremerui self-assigned this Nov 28, 2022
@rkoster
Copy link

rkoster commented Feb 1, 2023

@xtremerui did you have a change to take a look at this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants