Skip to content

Commit 3dd019a

Browse files
[CI] Add container image for postsubmit testing of premerge config
This patch adds a container image and some necessary setup code so we can run this through buildbot. Reviewers: Keenuts, cmtice, dschuff, gburgessiv, lnihlen Reviewed By: cmtice, Keenuts Pull Request: #527
1 parent 012bd17 commit 3dd019a

File tree

4 files changed

+70
-1
lines changed

4 files changed

+70
-1
lines changed

premerge/buildbot/Dockerfile

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
FROM ubuntu:24.04
2+
RUN apt-get update && apt-get install -y python3 python3-pip
3+
COPY requirements.lock.txt /requirements.lock.txt
4+
RUN pip3 install --break-system-packages -r /requirements.lock.txt && rm /requirements.lock.txt
5+
RUN mkdir /app
6+
WORKDIR /app
7+
COPY dispatch_job.py .
8+
COPY startup.sh .
9+
RUN chmod +x startup.sh
10+
ENTRYPOINT /app/startup.sh

premerge/buildbot/requirements.lock.txt

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,46 @@
44
#
55
# pip-compile --output-file=requirements.lock.txt requirements.txt
66
#
7+
attrs==25.3.0
8+
# via twisted
9+
autobahn==24.4.2
10+
# via buildbot-worker
11+
automat==25.4.16
12+
# via twisted
13+
buildbot-worker==3.11.7
14+
# via -r requirements.txt
715
cachetools==5.5.2
816
# via google-auth
917
certifi==2025.7.14
1018
# via
1119
# kubernetes
1220
# requests
21+
cffi==1.17.1
22+
# via cryptography
1323
charset-normalizer==3.4.2
1424
# via requests
25+
constantly==23.10.4
26+
# via twisted
27+
cryptography==45.0.5
28+
# via autobahn
1529
durationpy==0.10
1630
# via kubernetes
1731
google-auth==2.40.3
1832
# via kubernetes
33+
hyperlink==21.0.0
34+
# via
35+
# autobahn
36+
# twisted
1937
idna==3.10
20-
# via requests
38+
# via
39+
# hyperlink
40+
# requests
41+
incremental==24.7.2
42+
# via twisted
2143
kubernetes==33.1.0
2244
# via -r requirements.txt
45+
msgpack==1.1.1
46+
# via buildbot-worker
2347
oauthlib==3.3.1
2448
# via
2549
# kubernetes
@@ -30,6 +54,8 @@ pyasn1==0.6.1
3054
# rsa
3155
pyasn1-modules==0.4.2
3256
# via google-auth
57+
pycparser==2.22
58+
# via cffi
3359
python-dateutil==2.9.0.post0
3460
# via kubernetes
3561
pyyaml==6.0.2
@@ -44,11 +70,23 @@ rsa==4.9.1
4470
# via google-auth
4571
six==1.17.0
4672
# via
73+
# buildbot-worker
4774
# kubernetes
4875
# python-dateutil
76+
twisted==25.5.0
77+
# via buildbot-worker
78+
txaio==25.6.1
79+
# via autobahn
80+
typing-extensions==4.14.1
81+
# via twisted
4982
urllib3==2.5.0
5083
# via
5184
# kubernetes
5285
# requests
5386
websocket-client==1.8.0
5487
# via kubernetes
88+
zope-interface==7.2
89+
# via twisted
90+
91+
# The following packages are considered to be unsafe in a requirements file:
92+
# setuptools

premerge/buildbot/requirements.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
kubernetes==33.1.0
2+
buildbot-worker==3.11.7

premerge/buildbot/startup.sh

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/bin/bash
2+
3+
# This script performs all the necessary setup and then starts the buildbot
4+
# worker.
5+
6+
mkdir /worker
7+
buildbot-worker create-worker /worker \
8+
lab.llvm.org:9994 \
9+
$BUILDBOT_USERNAME \
10+
$BUILDBOT_PASSWORD
11+
12+
echo "Google LLVM Premerge Infra Rotation <[email protected]>" \
13+
> /worker/info/admin
14+
15+
{
16+
echo "Premerge container (https://github.com/llvm/llvm-project/pkgs/container/ci-ubuntu-24.04)"
17+
echo "GCP n2/n2d standard instances."
18+
} > /worker/info/host
19+
20+
buildbot-worker start /worker

0 commit comments

Comments
 (0)