From 5cc9d7b0e98dc2faa14f96ef004b01b791eafdc3 Mon Sep 17 00:00:00 2001 From: Bart van der Braak Date: Wed, 20 Nov 2024 16:02:13 +0100 Subject: [PATCH 1/2] Get back to original --- .env.local | 5 ++- .gitignore | 28 +++++++++++- Dockerfile | 0 {config => buildbot/config}/conf/__init__.py | 0 {config => buildbot/config}/conf/auth.py | 0 {config => buildbot/config}/conf/branches.py | 0 .../config}/conf/local/__init__.py | 0 .../config}/conf/local/auth.py | 0 .../config}/conf/local/machines.py | 0 .../config}/conf/local/worker.py | 0 {config => buildbot/config}/conf/machines.py | 0 {config => buildbot/config}/conf/worker.py | 0 {config => buildbot/config}/gitea/LICENSE | 0 {config => buildbot/config}/gitea/README.md | 0 {config => buildbot/config}/gitea/__init__.py | 0 {config => buildbot/config}/gitea/blender.py | 0 {config => buildbot/config}/gitea/reporter.py | 0 .../config}/pipeline/__init__.py | 0 {config => buildbot/config}/pipeline/code.py | 0 .../config}/pipeline/code_benchmark.py | 0 .../config}/pipeline/code_bpy_deploy.py | 0 .../config}/pipeline/code_deploy.py | 0 .../config}/pipeline/code_store.py | 0 .../config}/pipeline/common.py | 0 .../config}/pipeline/doc_api.py | 0 .../config}/pipeline/doc_developer.py | 0 .../config}/pipeline/doc_manual.py | 0 .../config}/pipeline/doc_studio.py | 0 {config => buildbot/config}/setup.py | 0 .../config}/worker/__init__.py | 0 {config => buildbot/config}/worker/archive.py | 0 .../config}/worker/blender/__init__.py | 0 .../config}/worker/blender/benchmark.py | 0 .../worker/blender/blender.applescript | 0 .../config}/worker/blender/bundle_dmg.py | 0 .../config}/worker/blender/compile.py | 0 .../config}/worker/blender/cpack_post.cmake | 0 .../config}/worker/blender/cpack_post.py | 0 .../config}/worker/blender/lint.py | 0 .../config}/worker/blender/msix_package.py | 0 .../config}/worker/blender/pack.py | 0 .../config}/worker/blender/sign.py | 0 .../config}/worker/blender/test.py | 0 .../config}/worker/blender/update.py | 0 .../config}/worker/blender/version.py | 0 {config => buildbot/config}/worker/code.py | 0 .../config}/worker/code_benchmark.py | 0 .../config}/worker/code_bpy_deploy.py | 0 .../config}/worker/code_deploy.py | 0 .../config}/worker/code_store.py | 0 .../config}/worker/configure.py | 0 .../config}/worker/deploy/__init__.py | 0 .../config}/worker/deploy/artifacts.py | 0 .../config}/worker/deploy/monitor.py | 0 .../config}/worker/deploy/pypi.py | 0 .../config}/worker/deploy/snap.py | 0 .../config}/worker/deploy/source.py | 0 .../config}/worker/deploy/steam.py | 0 .../config}/worker/deploy/windows.py | 0 {config => buildbot/config}/worker/doc_api.py | 0 .../config}/worker/doc_developer.py | 0 .../config}/worker/doc_manual.py | 0 .../config}/worker/doc_studio.py | 0 {config => buildbot/config}/worker/utils.py | 0 buildbot/master.cfg | 15 +++++++ config/master.cfg | 8 ---- docker-compose.override.yml | 24 ---------- docker-compose.yml | 45 ++++++++++++++++--- 68 files changed, 83 insertions(+), 42 deletions(-) delete mode 100644 Dockerfile rename {config => buildbot/config}/conf/__init__.py (100%) rename {config => buildbot/config}/conf/auth.py (100%) rename {config => buildbot/config}/conf/branches.py (100%) rename {config => buildbot/config}/conf/local/__init__.py (100%) rename {config => buildbot/config}/conf/local/auth.py (100%) rename {config => buildbot/config}/conf/local/machines.py (100%) rename {config => buildbot/config}/conf/local/worker.py (100%) rename {config => buildbot/config}/conf/machines.py (100%) rename {config => buildbot/config}/conf/worker.py (100%) rename {config => buildbot/config}/gitea/LICENSE (100%) rename {config => buildbot/config}/gitea/README.md (100%) rename {config => buildbot/config}/gitea/__init__.py (100%) rename {config => buildbot/config}/gitea/blender.py (100%) rename {config => buildbot/config}/gitea/reporter.py (100%) rename {config => buildbot/config}/pipeline/__init__.py (100%) rename {config => buildbot/config}/pipeline/code.py (100%) rename {config => buildbot/config}/pipeline/code_benchmark.py (100%) rename {config => buildbot/config}/pipeline/code_bpy_deploy.py (100%) rename {config => buildbot/config}/pipeline/code_deploy.py (100%) rename {config => buildbot/config}/pipeline/code_store.py (100%) rename {config => buildbot/config}/pipeline/common.py (100%) rename {config => buildbot/config}/pipeline/doc_api.py (100%) rename {config => buildbot/config}/pipeline/doc_developer.py (100%) rename {config => buildbot/config}/pipeline/doc_manual.py (100%) rename {config => buildbot/config}/pipeline/doc_studio.py (100%) rename {config => buildbot/config}/setup.py (100%) rename {config => buildbot/config}/worker/__init__.py (100%) rename {config => buildbot/config}/worker/archive.py (100%) rename {config => buildbot/config}/worker/blender/__init__.py (100%) rename {config => buildbot/config}/worker/blender/benchmark.py (100%) rename {config => buildbot/config}/worker/blender/blender.applescript (100%) rename {config => buildbot/config}/worker/blender/bundle_dmg.py (100%) rename {config => buildbot/config}/worker/blender/compile.py (100%) rename {config => buildbot/config}/worker/blender/cpack_post.cmake (100%) rename {config => buildbot/config}/worker/blender/cpack_post.py (100%) rename {config => buildbot/config}/worker/blender/lint.py (100%) rename {config => buildbot/config}/worker/blender/msix_package.py (100%) rename {config => buildbot/config}/worker/blender/pack.py (100%) rename {config => buildbot/config}/worker/blender/sign.py (100%) rename {config => buildbot/config}/worker/blender/test.py (100%) rename {config => buildbot/config}/worker/blender/update.py (100%) rename {config => buildbot/config}/worker/blender/version.py (100%) rename {config => buildbot/config}/worker/code.py (100%) rename {config => buildbot/config}/worker/code_benchmark.py (100%) rename {config => buildbot/config}/worker/code_bpy_deploy.py (100%) rename {config => buildbot/config}/worker/code_deploy.py (100%) rename {config => buildbot/config}/worker/code_store.py (100%) rename {config => buildbot/config}/worker/configure.py (100%) rename {config => buildbot/config}/worker/deploy/__init__.py (100%) rename {config => buildbot/config}/worker/deploy/artifacts.py (100%) rename {config => buildbot/config}/worker/deploy/monitor.py (100%) rename {config => buildbot/config}/worker/deploy/pypi.py (100%) rename {config => buildbot/config}/worker/deploy/snap.py (100%) rename {config => buildbot/config}/worker/deploy/source.py (100%) rename {config => buildbot/config}/worker/deploy/steam.py (100%) rename {config => buildbot/config}/worker/deploy/windows.py (100%) rename {config => buildbot/config}/worker/doc_api.py (100%) rename {config => buildbot/config}/worker/doc_developer.py (100%) rename {config => buildbot/config}/worker/doc_manual.py (100%) rename {config => buildbot/config}/worker/doc_studio.py (100%) rename {config => buildbot/config}/worker/utils.py (100%) create mode 100644 buildbot/master.cfg delete mode 100644 config/master.cfg delete mode 100644 docker-compose.override.yml diff --git a/.env.local b/.env.local index 0cdf0de..8099ed8 100644 --- a/.env.local +++ b/.env.local @@ -1,4 +1,5 @@ -SERVICE_USER_POSTGRESQL=buildbot -SERVICE_PASSWORD_POSTGRESQL=changeme! +POSTGRES_PASSWORD=buildbot +POSTGRES_PASSWORD=changeme! +BUILDBOT_CONFIG_URL='' GITEA_URL=https://projects.blender.org BUILDBOT_WEB_URL=http://localhost:8010/ \ No newline at end of file diff --git a/.gitignore b/.gitignore index 86e252f..8a2abc6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,29 @@ +# Hidden files .venv +.env.production .env.staging -.env.production \ No newline at end of file + +# Python +__pycache__ +*.py[cod] +Pipfile +Pipfile.lock + +# Editors +*~ +*.swp +*.swo +*# +TAGS +tags + +# Thumbnails +Thumbs.db +ehthumbs.db +Desktop.ini +.DS_Store + +# Local patches and logs +*.patch +*.diff +*.log \ No newline at end of file diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index e69de29..0000000 diff --git a/config/conf/__init__.py b/buildbot/config/conf/__init__.py similarity index 100% rename from config/conf/__init__.py rename to buildbot/config/conf/__init__.py diff --git a/config/conf/auth.py b/buildbot/config/conf/auth.py similarity index 100% rename from config/conf/auth.py rename to buildbot/config/conf/auth.py diff --git a/config/conf/branches.py b/buildbot/config/conf/branches.py similarity index 100% rename from config/conf/branches.py rename to buildbot/config/conf/branches.py diff --git a/config/conf/local/__init__.py b/buildbot/config/conf/local/__init__.py similarity index 100% rename from config/conf/local/__init__.py rename to buildbot/config/conf/local/__init__.py diff --git a/config/conf/local/auth.py b/buildbot/config/conf/local/auth.py similarity index 100% rename from config/conf/local/auth.py rename to buildbot/config/conf/local/auth.py diff --git a/config/conf/local/machines.py b/buildbot/config/conf/local/machines.py similarity index 100% rename from config/conf/local/machines.py rename to buildbot/config/conf/local/machines.py diff --git a/config/conf/local/worker.py b/buildbot/config/conf/local/worker.py similarity index 100% rename from config/conf/local/worker.py rename to buildbot/config/conf/local/worker.py diff --git a/config/conf/machines.py b/buildbot/config/conf/machines.py similarity index 100% rename from config/conf/machines.py rename to buildbot/config/conf/machines.py diff --git a/config/conf/worker.py b/buildbot/config/conf/worker.py similarity index 100% rename from config/conf/worker.py rename to buildbot/config/conf/worker.py diff --git a/config/gitea/LICENSE b/buildbot/config/gitea/LICENSE similarity index 100% rename from config/gitea/LICENSE rename to buildbot/config/gitea/LICENSE diff --git a/config/gitea/README.md b/buildbot/config/gitea/README.md similarity index 100% rename from config/gitea/README.md rename to buildbot/config/gitea/README.md diff --git a/config/gitea/__init__.py b/buildbot/config/gitea/__init__.py similarity index 100% rename from config/gitea/__init__.py rename to buildbot/config/gitea/__init__.py diff --git a/config/gitea/blender.py b/buildbot/config/gitea/blender.py similarity index 100% rename from config/gitea/blender.py rename to buildbot/config/gitea/blender.py diff --git a/config/gitea/reporter.py b/buildbot/config/gitea/reporter.py similarity index 100% rename from config/gitea/reporter.py rename to buildbot/config/gitea/reporter.py diff --git a/config/pipeline/__init__.py b/buildbot/config/pipeline/__init__.py similarity index 100% rename from config/pipeline/__init__.py rename to buildbot/config/pipeline/__init__.py diff --git a/config/pipeline/code.py b/buildbot/config/pipeline/code.py similarity index 100% rename from config/pipeline/code.py rename to buildbot/config/pipeline/code.py diff --git a/config/pipeline/code_benchmark.py b/buildbot/config/pipeline/code_benchmark.py similarity index 100% rename from config/pipeline/code_benchmark.py rename to buildbot/config/pipeline/code_benchmark.py diff --git a/config/pipeline/code_bpy_deploy.py b/buildbot/config/pipeline/code_bpy_deploy.py similarity index 100% rename from config/pipeline/code_bpy_deploy.py rename to buildbot/config/pipeline/code_bpy_deploy.py diff --git a/config/pipeline/code_deploy.py b/buildbot/config/pipeline/code_deploy.py similarity index 100% rename from config/pipeline/code_deploy.py rename to buildbot/config/pipeline/code_deploy.py diff --git a/config/pipeline/code_store.py b/buildbot/config/pipeline/code_store.py similarity index 100% rename from config/pipeline/code_store.py rename to buildbot/config/pipeline/code_store.py diff --git a/config/pipeline/common.py b/buildbot/config/pipeline/common.py similarity index 100% rename from config/pipeline/common.py rename to buildbot/config/pipeline/common.py diff --git a/config/pipeline/doc_api.py b/buildbot/config/pipeline/doc_api.py similarity index 100% rename from config/pipeline/doc_api.py rename to buildbot/config/pipeline/doc_api.py diff --git a/config/pipeline/doc_developer.py b/buildbot/config/pipeline/doc_developer.py similarity index 100% rename from config/pipeline/doc_developer.py rename to buildbot/config/pipeline/doc_developer.py diff --git a/config/pipeline/doc_manual.py b/buildbot/config/pipeline/doc_manual.py similarity index 100% rename from config/pipeline/doc_manual.py rename to buildbot/config/pipeline/doc_manual.py diff --git a/config/pipeline/doc_studio.py b/buildbot/config/pipeline/doc_studio.py similarity index 100% rename from config/pipeline/doc_studio.py rename to buildbot/config/pipeline/doc_studio.py diff --git a/config/setup.py b/buildbot/config/setup.py similarity index 100% rename from config/setup.py rename to buildbot/config/setup.py diff --git a/config/worker/__init__.py b/buildbot/config/worker/__init__.py similarity index 100% rename from config/worker/__init__.py rename to buildbot/config/worker/__init__.py diff --git a/config/worker/archive.py b/buildbot/config/worker/archive.py similarity index 100% rename from config/worker/archive.py rename to buildbot/config/worker/archive.py diff --git a/config/worker/blender/__init__.py b/buildbot/config/worker/blender/__init__.py similarity index 100% rename from config/worker/blender/__init__.py rename to buildbot/config/worker/blender/__init__.py diff --git a/config/worker/blender/benchmark.py b/buildbot/config/worker/blender/benchmark.py similarity index 100% rename from config/worker/blender/benchmark.py rename to buildbot/config/worker/blender/benchmark.py diff --git a/config/worker/blender/blender.applescript b/buildbot/config/worker/blender/blender.applescript similarity index 100% rename from config/worker/blender/blender.applescript rename to buildbot/config/worker/blender/blender.applescript diff --git a/config/worker/blender/bundle_dmg.py b/buildbot/config/worker/blender/bundle_dmg.py similarity index 100% rename from config/worker/blender/bundle_dmg.py rename to buildbot/config/worker/blender/bundle_dmg.py diff --git a/config/worker/blender/compile.py b/buildbot/config/worker/blender/compile.py similarity index 100% rename from config/worker/blender/compile.py rename to buildbot/config/worker/blender/compile.py diff --git a/config/worker/blender/cpack_post.cmake b/buildbot/config/worker/blender/cpack_post.cmake similarity index 100% rename from config/worker/blender/cpack_post.cmake rename to buildbot/config/worker/blender/cpack_post.cmake diff --git a/config/worker/blender/cpack_post.py b/buildbot/config/worker/blender/cpack_post.py similarity index 100% rename from config/worker/blender/cpack_post.py rename to buildbot/config/worker/blender/cpack_post.py diff --git a/config/worker/blender/lint.py b/buildbot/config/worker/blender/lint.py similarity index 100% rename from config/worker/blender/lint.py rename to buildbot/config/worker/blender/lint.py diff --git a/config/worker/blender/msix_package.py b/buildbot/config/worker/blender/msix_package.py similarity index 100% rename from config/worker/blender/msix_package.py rename to buildbot/config/worker/blender/msix_package.py diff --git a/config/worker/blender/pack.py b/buildbot/config/worker/blender/pack.py similarity index 100% rename from config/worker/blender/pack.py rename to buildbot/config/worker/blender/pack.py diff --git a/config/worker/blender/sign.py b/buildbot/config/worker/blender/sign.py similarity index 100% rename from config/worker/blender/sign.py rename to buildbot/config/worker/blender/sign.py diff --git a/config/worker/blender/test.py b/buildbot/config/worker/blender/test.py similarity index 100% rename from config/worker/blender/test.py rename to buildbot/config/worker/blender/test.py diff --git a/config/worker/blender/update.py b/buildbot/config/worker/blender/update.py similarity index 100% rename from config/worker/blender/update.py rename to buildbot/config/worker/blender/update.py diff --git a/config/worker/blender/version.py b/buildbot/config/worker/blender/version.py similarity index 100% rename from config/worker/blender/version.py rename to buildbot/config/worker/blender/version.py diff --git a/config/worker/code.py b/buildbot/config/worker/code.py similarity index 100% rename from config/worker/code.py rename to buildbot/config/worker/code.py diff --git a/config/worker/code_benchmark.py b/buildbot/config/worker/code_benchmark.py similarity index 100% rename from config/worker/code_benchmark.py rename to buildbot/config/worker/code_benchmark.py diff --git a/config/worker/code_bpy_deploy.py b/buildbot/config/worker/code_bpy_deploy.py similarity index 100% rename from config/worker/code_bpy_deploy.py rename to buildbot/config/worker/code_bpy_deploy.py diff --git a/config/worker/code_deploy.py b/buildbot/config/worker/code_deploy.py similarity index 100% rename from config/worker/code_deploy.py rename to buildbot/config/worker/code_deploy.py diff --git a/config/worker/code_store.py b/buildbot/config/worker/code_store.py similarity index 100% rename from config/worker/code_store.py rename to buildbot/config/worker/code_store.py diff --git a/config/worker/configure.py b/buildbot/config/worker/configure.py similarity index 100% rename from config/worker/configure.py rename to buildbot/config/worker/configure.py diff --git a/config/worker/deploy/__init__.py b/buildbot/config/worker/deploy/__init__.py similarity index 100% rename from config/worker/deploy/__init__.py rename to buildbot/config/worker/deploy/__init__.py diff --git a/config/worker/deploy/artifacts.py b/buildbot/config/worker/deploy/artifacts.py similarity index 100% rename from config/worker/deploy/artifacts.py rename to buildbot/config/worker/deploy/artifacts.py diff --git a/config/worker/deploy/monitor.py b/buildbot/config/worker/deploy/monitor.py similarity index 100% rename from config/worker/deploy/monitor.py rename to buildbot/config/worker/deploy/monitor.py diff --git a/config/worker/deploy/pypi.py b/buildbot/config/worker/deploy/pypi.py similarity index 100% rename from config/worker/deploy/pypi.py rename to buildbot/config/worker/deploy/pypi.py diff --git a/config/worker/deploy/snap.py b/buildbot/config/worker/deploy/snap.py similarity index 100% rename from config/worker/deploy/snap.py rename to buildbot/config/worker/deploy/snap.py diff --git a/config/worker/deploy/source.py b/buildbot/config/worker/deploy/source.py similarity index 100% rename from config/worker/deploy/source.py rename to buildbot/config/worker/deploy/source.py diff --git a/config/worker/deploy/steam.py b/buildbot/config/worker/deploy/steam.py similarity index 100% rename from config/worker/deploy/steam.py rename to buildbot/config/worker/deploy/steam.py diff --git a/config/worker/deploy/windows.py b/buildbot/config/worker/deploy/windows.py similarity index 100% rename from config/worker/deploy/windows.py rename to buildbot/config/worker/deploy/windows.py diff --git a/config/worker/doc_api.py b/buildbot/config/worker/doc_api.py similarity index 100% rename from config/worker/doc_api.py rename to buildbot/config/worker/doc_api.py diff --git a/config/worker/doc_developer.py b/buildbot/config/worker/doc_developer.py similarity index 100% rename from config/worker/doc_developer.py rename to buildbot/config/worker/doc_developer.py diff --git a/config/worker/doc_manual.py b/buildbot/config/worker/doc_manual.py similarity index 100% rename from config/worker/doc_manual.py rename to buildbot/config/worker/doc_manual.py diff --git a/config/worker/doc_studio.py b/buildbot/config/worker/doc_studio.py similarity index 100% rename from config/worker/doc_studio.py rename to buildbot/config/worker/doc_studio.py diff --git a/config/worker/utils.py b/buildbot/config/worker/utils.py similarity index 100% rename from config/worker/utils.py rename to buildbot/config/worker/utils.py diff --git a/buildbot/master.cfg b/buildbot/master.cfg new file mode 100644 index 0000000..028e381 --- /dev/null +++ b/buildbot/master.cfg @@ -0,0 +1,15 @@ +# -*- python -*- +# ex: set filetype=python: +import importlib +import os +import sys + +# Add the "config" directory to the Python path +sys.path.insert(0, os.path.join(os.path.dirname(__file__), "config")) + +# Import the setup module from the "config" directory +import setup +importlib.reload(setup) + +# Use the setup module as intended +BuildmasterConfig = setup.setup() diff --git a/config/master.cfg b/config/master.cfg deleted file mode 100644 index b1e1d40..0000000 --- a/config/master.cfg +++ /dev/null @@ -1,8 +0,0 @@ -# -*- python -*- -# ex: set filetype=python: -import importlib -import os -import sys -import setup -importlib.reload(setup) -BuildmasterConfig = setup.setup() diff --git a/docker-compose.override.yml b/docker-compose.override.yml deleted file mode 100644 index 103aa33..0000000 --- a/docker-compose.override.yml +++ /dev/null @@ -1,24 +0,0 @@ -services: - buildbot-master: - env_file: .env.local - volumes: - - ./config:/buildbot/config - - buildbot-worker: - image: 'buildbot/buildbot-worker:${BUILDBOT_IMAGE_TAG:-v4.1.0}' - restart: unless-stopped - environment: - - 'BUILDMASTER=${BUILDMASTER:-buildbot-master}' - - 'BUILDMASTER_PORT=${BUILDBOT_WORKER_PORT:-9989}' - - 'WORKERNAME=${WORKERNAME:-example-worker}' - - 'WORKERPASS=${WORKERPASS:-pass}' - - 'WORKER_ENVIRONMENT_BLACKLIST=${WORKER_ENVIRONMENT_BLACKLIST:-DOCKER_BUILDBOT* BUILDBOT_ENV_* BUILDBOT_1* WORKER_ENVIRONMENT_BLACKLIST}' - healthcheck: - test: - - CMD - - curl - - '-f' - - 'http://$${BUILDMASTER}:$${BUILDMASTER_PORT}' - interval: 5s - timeout: 20s - retries: 10 \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 190b123..d4a1609 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,16 +1,18 @@ services: buildbot-master: image: 'buildbot/buildbot-master:${BUILDBOT_IMAGE_TAG:-v4.1.0}' + hostname: buildbot-master restart: unless-stopped + ports: + - 8010:8010 environment: - - 'HOSTNAME=${MASTER_HOSTNAME:-buildbot-master-1}' - 'BUILDBOT_CONFIG_DIR=${BUILDBOT_CONFIG_DIR:-config}' - - 'BUILDBOT_CONFIG_URL=${BUILDBOT_CONFIG_URL:-https://git.braak.pro/api/packages/bartvdbraak/generic/builder.braak.pro/main/config.tar.gz}' + # - 'BUILDBOT_CONFIG_URL=${BUILDBOT_CONFIG_URL:-https://git.braak.pro/api/packages/bartvdbraak/generic/builder.braak.pro/main/config.tar.gz}' - 'BUILDBOT_WORKER_PORT=${BUILDBOT_WORKER_PORT:-9989}' - 'BUILDBOT_WEB_URL=${BUILDBOT_WEB_URL:-http://localhost:8010/}' - 'BUILDBOT_WEB_PORT=${BUILDBOT_WEB_PORT:-tcp:port=8010}' - - 'POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRESQL}' - - 'POSTGRES_USER=${SERVICE_USER_POSTGRESQL}' + - 'POSTGRES_PASSWORD=${POSTGRES_PASSWORD:-changeme123}' + - 'POSTGRES_USER=${POSTGRES_USER:-buildbot}' - 'POSTGRES_DB=${POSTGRES_DB:-buildbot}' - 'BUILDBOT_DB_URL=postgresql+psycopg2://{POSTGRES_USER}:{POSTGRES_PASSWORD}@postgresql/{POSTGRES_DB}' healthcheck: @@ -25,6 +27,11 @@ services: depends_on: postgresql: condition: service_healthy + volumes: + - ./buildbot/config:/buildbot/config + - ./buildbot/master.cfg:/buildbot/master.cfg + networks: + buildbot: null postgresql: image: 'postgres:${POSTGRES_IMAGE_TAG:-16-alpine}' restart: unless-stopped @@ -38,8 +45,32 @@ services: volumes: - 'buildbot-db:/var/lib/postgresql/data' environment: - - 'POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRESQL}' - - 'POSTGRES_USER=${SERVICE_USER_POSTGRESQL}' + - 'POSTGRES_PASSWORD=${POSTGRES_PASSWORD:-changeme123}' + - 'POSTGRES_USER=${POSTGRES_USER:-buildbot}' - 'POSTGRES_DB=${POSTGRES_DB:-buildbot}' + networks: + buildbot: null + buildbot-worker: + image: 'buildbot/buildbot-worker:${BUILDBOT_IMAGE_TAG:-v4.1.0}' + restart: unless-stopped + environment: + - 'BUILDMASTER=${BUILDMASTER:-buildbot-master}' + - 'BUILDMASTER_PORT=${BUILDBOT_WORKER_PORT:-9989}' + - 'WORKERNAME=${WORKERNAME:-example-worker}' + - 'WORKERPASS=${WORKERPASS:-pass}' + - 'WORKER_ENVIRONMENT_BLACKLIST=${WORKER_ENVIRONMENT_BLACKLIST:-DOCKER_BUILDBOT* BUILDBOT_ENV_* BUILDBOT_1* WORKER_ENVIRONMENT_BLACKLIST}' + healthcheck: + test: + - CMD + - curl + - '-f' + - 'http://$${BUILDMASTER}:$${BUILDMASTER_PORT}' + interval: 5s + timeout: 20s + retries: 10 + networks: + buildbot: null volumes: - buildbot-db: {} \ No newline at end of file + buildbot-db: {} +networks: + buildbot: {} \ No newline at end of file From 0f45b3843276b9da993e95cb843db491e028ebbe Mon Sep 17 00:00:00 2001 From: Bart van der Braak Date: Wed, 20 Nov 2024 18:20:13 +0100 Subject: [PATCH 2/2] Working setup using localhost --- .env.local | 5 ----- buildbot/config/conf/local/machines.py | 2 +- buildbot/config/setup.py | 16 ++++++++-------- docker-compose.yml | 7 ++++--- 4 files changed, 13 insertions(+), 17 deletions(-) delete mode 100644 .env.local diff --git a/.env.local b/.env.local deleted file mode 100644 index 8099ed8..0000000 --- a/.env.local +++ /dev/null @@ -1,5 +0,0 @@ -POSTGRES_PASSWORD=buildbot -POSTGRES_PASSWORD=changeme! -BUILDBOT_CONFIG_URL='' -GITEA_URL=https://projects.blender.org -BUILDBOT_WEB_URL=http://localhost:8010/ \ No newline at end of file diff --git a/buildbot/config/conf/local/machines.py b/buildbot/config/conf/local/machines.py index fb430e7..e2d9938 100644 --- a/buildbot/config/conf/local/machines.py +++ b/buildbot/config/conf/local/machines.py @@ -27,5 +27,5 @@ def get_worker_password(worker_name: str) -> str: return "localhost" -def get_worker_names(ENVIRONMENT: str): +def get_worker_names(environment: str): return _worker_names diff --git a/buildbot/config/setup.py b/buildbot/config/setup.py index abf0730..f1ee021 100644 --- a/buildbot/config/setup.py +++ b/buildbot/config/setup.py @@ -31,7 +31,7 @@ importlib.reload(conf.worker) importlib.reload(gitea.blender) importlib.reload(pipeline) -ENVIRONMENT = os.environ.get("ENVIRONMENT", default="LOCAL") +environment = os.environ.get("BUILDBOT_environment", default="LOCAL") def setup() -> Dict[str, Any]: @@ -43,7 +43,7 @@ def setup() -> Dict[str, Any]: # Workers print("*** Creating platform workers") - platform_worker_names = conf.machines.fetch_platform_worker_names(ENVIRONMENT) + platform_worker_names = conf.machines.fetch_platform_worker_names(environment) workers: List[buildbot.plugins.worker.Worker] = [] configured_worker_names = set() for worker_names in platform_worker_names.values(): @@ -55,7 +55,7 @@ def setup() -> Dict[str, Any]: workers += [ buildbot.plugins.worker.Worker( worker_name, - conf.machines.get_worker_password(ENVIRONMENT, worker_name), + conf.machines.get_worker_password(environment, worker_name), max_builds=1, keepalive_interval=3600, ) @@ -69,7 +69,7 @@ def setup() -> Dict[str, Any]: c["workers"] = workers # Builders and Schedulers - builders, schedulers = pipeline.populate(ENVIRONMENT) + builders, schedulers = pipeline.populate(environment) c["builders"] = builders c["schedulers"] = schedulers @@ -79,7 +79,7 @@ def setup() -> Dict[str, Any]: # status of each build will be pushed to these targets. buildbot/reporters/*.py # has a variety to choose from, like IRC bots. - gitea_status_service = gitea.blender.setup_service(ENVIRONMENT) + gitea_status_service = gitea.blender.setup_service(environment) if gitea_status_service: c["services"] = [gitea_status_service] else: @@ -90,7 +90,7 @@ def setup() -> Dict[str, Any]: # the 'title' string will appear at the top of this buildbot installation's # home pages (linked to the 'titleURL'). - c["title"] = f"Blender Buildbot - {ENVIRONMENT}" + c["title"] = f"Blender Buildbot - {environment}" c["titleURL"] = "https://projects.blender.org" # the 'buildbotURL' string should point to the location where the buildbot's @@ -113,10 +113,10 @@ def setup() -> Dict[str, Any]: c["buildbotNetUsageData"] = None # Authentication - c["www"]["auth"] = conf.auth.fetch_authentication(ENVIRONMENT) + c["www"]["auth"] = conf.auth.fetch_authentication(environment) # Authorization - c["www"]["authz"] = conf.auth.fetch_authorization(ENVIRONMENT) + c["www"]["authz"] = conf.auth.fetch_authorization(environment) # Disable UI - does not work c["www"]["plugins"] = { diff --git a/docker-compose.yml b/docker-compose.yml index d4a1609..19a7868 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -7,7 +7,7 @@ services: - 8010:8010 environment: - 'BUILDBOT_CONFIG_DIR=${BUILDBOT_CONFIG_DIR:-config}' - # - 'BUILDBOT_CONFIG_URL=${BUILDBOT_CONFIG_URL:-https://git.braak.pro/api/packages/bartvdbraak/generic/builder.braak.pro/main/config.tar.gz}' + - 'BUILDBOT_ENVIRONMENT=${BUILDBOT_ENVIRONMENT:-LOCAL}' - 'BUILDBOT_WORKER_PORT=${BUILDBOT_WORKER_PORT:-9989}' - 'BUILDBOT_WEB_URL=${BUILDBOT_WEB_URL:-http://localhost:8010/}' - 'BUILDBOT_WEB_PORT=${BUILDBOT_WEB_PORT:-tcp:port=8010}' @@ -56,8 +56,9 @@ services: environment: - 'BUILDMASTER=${BUILDMASTER:-buildbot-master}' - 'BUILDMASTER_PORT=${BUILDBOT_WORKER_PORT:-9989}' - - 'WORKERNAME=${WORKERNAME:-example-worker}' - - 'WORKERPASS=${WORKERPASS:-pass}' + - 'BUILDBOT_ENVIRONMENT=${BUILDBOT_ENVIRONMENT:-LOCAL}' + - 'WORKERNAME=${WORKERNAME:-localhost}' + - 'WORKERPASS=${WORKERPASS:-localhost}' - 'WORKER_ENVIRONMENT_BLACKLIST=${WORKER_ENVIRONMENT_BLACKLIST:-DOCKER_BUILDBOT* BUILDBOT_ENV_* BUILDBOT_1* WORKER_ENVIRONMENT_BLACKLIST}' healthcheck: test: