From eb27c558ce88bf9ad6a43e83b90f553b90e39850 Mon Sep 17 00:00:00 2001 From: Mikhail Goncharov Date: Mon, 23 Oct 2023 14:07:26 +0200 Subject: [PATCH] buildbot linux config --- containers/buildbot-linux/entrypoint.sh | 14 +++--- kubernetes/buildbot/linux-test.yaml | 59 +++++++++++++++++++++++++ kubernetes/buildbot/linux.yaml | 2 +- kubernetes/buildkite/linux.yaml | 2 +- 4 files changed, 70 insertions(+), 7 deletions(-) create mode 100644 kubernetes/buildbot/linux-test.yaml diff --git a/containers/buildbot-linux/entrypoint.sh b/containers/buildbot-linux/entrypoint.sh index dc9598e..cecdfbe 100755 --- a/containers/buildbot-linux/entrypoint.sh +++ b/containers/buildbot-linux/entrypoint.sh @@ -35,11 +35,15 @@ gosu "$USER" bash -c 'SCCACHE_DIR="${SCCACHE_DIR}" SCCACHE_IDLE_TIMEOUT=0 SCCACH # configure buildbot mkdir -p /build/buildbot -buildbot-worker create-worker /build/buildbot $BUILDBOT_ADDRESS $BUILDBOT_NAME $BUILDBOT_PASSWORD -# TODO: update buildbot information. -chown -R ${USER}:${USER} /build/buildbot - -gosu "$USER" bash -c 'CC=clang CXX=clang++ LD=LLD buildbot-worker start /build/buildbot' +if [[ -z "${BUILDBOT_ADDRESS+x}" ]]; then + echo "Not starting buildbot as BUILDBOT_ADDRESS is not set" +else + buildbot-worker create-worker /build/buildbot $BUILDBOT_ADDRESS $BUILDBOT_NAME $BUILDBOT_PASSWORD + echo "llvm-premerge-buildbots " > /build/buildbot/info/admin + echo "Setup analogous to linux agent for to Pull Request checks" > /build/buildbot/info/host + chown -R ${USER}:${USER} /build/buildbot + gosu "$USER" bash -c 'CC=clang CXX=clang++ LD=LLD buildbot-worker start /build/buildbot' +fi # Run with tini to correctly pass exit codes. exec /usr/bin/tini -g -- $@ diff --git a/kubernetes/buildbot/linux-test.yaml b/kubernetes/buildbot/linux-test.yaml new file mode 100644 index 0000000..6f9d922 --- /dev/null +++ b/kubernetes/buildbot/linux-test.yaml @@ -0,0 +1,59 @@ +# Copyright 2021 Google LLC +# +# Licensed under the the Apache License v2.0 with LLVM Exceptions (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://llvm.org/LICENSE.txt +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: apps/v1 +kind: Deployment +metadata: + name: buildbot-linux-test +spec: + replicas: 1 + strategy: + rollingUpdate: + maxUnavailable: 1 + maxSurge: 0 + type: RollingUpdate + selector: + matchLabels: + app: buildbot-linux-test + template: + metadata: + labels: + app: buildbot-linux-test + spec: + containers: + - name: runner + image: us-central1-docker.pkg.dev/llvm-premerge-checks/docker/buildbot-linux:latest + resources: + limits: + cpu: 55 + memory: 200Gi + requests: + cpu: 55 + memory: 200Gi + volumeMounts: + - name: workdir + mountPath: /build + env: + - name: POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + # BUILDBOT_ADDRESS is not set so it will not start the buildbot + # see entrypoint of container. + volumes: + - name: workdir + emptyDir: {} + nodeSelector: + cloud.google.com/gke-nodepool: linux-56 + terminationGracePeriodSeconds: 30 diff --git a/kubernetes/buildbot/linux.yaml b/kubernetes/buildbot/linux.yaml index 54aac5a..17339d7 100644 --- a/kubernetes/buildbot/linux.yaml +++ b/kubernetes/buildbot/linux.yaml @@ -33,7 +33,7 @@ spec: spec: containers: - name: runner - image: gcr.io/llvm-premerge-checks/buildbot-linux:latest + image: us-central1-docker.pkg.dev/llvm-premerge-checks/docker/buildbot-linux:latest resources: limits: cpu: 55 diff --git a/kubernetes/buildkite/linux.yaml b/kubernetes/buildkite/linux.yaml index ccac87c..7677098 100644 --- a/kubernetes/buildkite/linux.yaml +++ b/kubernetes/buildkite/linux.yaml @@ -34,7 +34,7 @@ spec: spec: containers: - name: runner - image: gcr.io/llvm-premerge-checks/buildkite-linux:latest + image: us-central1-docker.pkg.dev/llvm-premerge-checks/docker/buildkite-linux:latest resources: limits: cpu: 55