aboutsummaryrefslogtreecommitdiff
path: root/kolla/docker/cyborg
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2026-07-08 16:33:45 +0000
committerGerrit Code Review <review@openstack.org>2026-07-08 16:33:45 +0000
commit44b4d81399792f539716618953f2cafa64086a5c (patch)
tree4699d7e068e6dd842a9f1f247ca2f150d60d5e27 /kolla/docker/cyborg
parentb3803eb9f951acd63018ab8ba69bcbd1a2de5c93 (diff)
parentdb35ac8d793506bc43b62e7e39d27a75de1043ed (diff)
downloadkolla-44b4d81399792f539716618953f2cafa64086a5c.tar.gz
kolla-44b4d81399792f539716618953f2cafa64086a5c.zip
Merge "Migrate to pyproject.toml"
Diffstat (limited to 'kolla/docker/cyborg')
-rw-r--r--kolla/docker/cyborg/cyborg-agent/Dockerfile.j222
-rw-r--r--kolla/docker/cyborg/cyborg-api/Dockerfile.j219
-rw-r--r--kolla/docker/cyborg/cyborg-api/extend_start.sh8
-rw-r--r--kolla/docker/cyborg/cyborg-base/Dockerfile.j231
-rw-r--r--kolla/docker/cyborg/cyborg-base/cyborg_sudoers1
-rwxr-xr-xkolla/docker/cyborg/cyborg-base/extend_start.sh15
-rw-r--r--kolla/docker/cyborg/cyborg-conductor/Dockerfile.j213
7 files changed, 109 insertions, 0 deletions
diff --git a/kolla/docker/cyborg/cyborg-agent/Dockerfile.j2 b/kolla/docker/cyborg/cyborg-agent/Dockerfile.j2
new file mode 100644
index 000000000..dfc1adc0b
--- /dev/null
+++ b/kolla/docker/cyborg/cyborg-agent/Dockerfile.j2
@@ -0,0 +1,22 @@
+FROM {{ namespace }}/{{ image_prefix }}cyborg-base:{{ tag }}
+{% block labels %}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}"
+{% endblock %}
+
+{% block cyborg_agent_header %}{% endblock %}
+{% import "macros.j2" as macros with context %}
+
+{% set cyborg_agent_packages = [
+ 'pciutils',
+] %}
+
+{{ macros.install_packages(cyborg_agent_packages | customizable("packages")) }}
+
+{% set cyborg_agent_pip_packages = [ ] %}
+
+RUN {{ macros.install_pip(cyborg_agent_pip_packages | customizable("pip_packages")) }}
+
+{{ macros.kolla_patch_sources() }}
+
+{% block cyborg_agent_footer %}{% endblock %}
+{% block footer %}{% endblock %}
diff --git a/kolla/docker/cyborg/cyborg-api/Dockerfile.j2 b/kolla/docker/cyborg/cyborg-api/Dockerfile.j2
new file mode 100644
index 000000000..d67cdeb28
--- /dev/null
+++ b/kolla/docker/cyborg/cyborg-api/Dockerfile.j2
@@ -0,0 +1,19 @@
+FROM {{ namespace }}/{{ image_prefix }}cyborg-base:{{ tag }}
+{% block labels %}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}"
+{% endblock %}
+
+{% block cyborg_api_header %}{% endblock %}
+{% import "macros.j2" as macros with context %}
+
+{% set cyborg_api_packages = [
+] %}
+{{ macros.install_packages(cyborg_api_packages | customizable("packages")) }}
+
+COPY extend_start.sh /usr/local/bin/kolla_cyborg_extend_start
+RUN chmod 644 /usr/local/bin/kolla_cyborg_extend_start
+
+{{ macros.kolla_patch_sources() }}
+
+{% block cyborg_api_footer %}{% endblock %}
+{% block footer %}{% endblock %}
diff --git a/kolla/docker/cyborg/cyborg-api/extend_start.sh b/kolla/docker/cyborg/cyborg-api/extend_start.sh
new file mode 100644
index 000000000..b1c7af7af
--- /dev/null
+++ b/kolla/docker/cyborg/cyborg-api/extend_start.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+# Bootstrap and exit if KOLLA_BOOTSTRAP variable is set. This catches all cases
+# of the KOLLA_BOOTSTRAP variable being set, including empty.
+if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then
+ cyborg-dbsync upgrade
+ exit 0
+fi
diff --git a/kolla/docker/cyborg/cyborg-base/Dockerfile.j2 b/kolla/docker/cyborg/cyborg-base/Dockerfile.j2
new file mode 100644
index 000000000..c3f3e602a
--- /dev/null
+++ b/kolla/docker/cyborg/cyborg-base/Dockerfile.j2
@@ -0,0 +1,31 @@
+FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
+{% block labels %}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}"
+{% endblock %}
+
+{% block cyborg_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{{ macros.configure_user(name='cyborg') }}
+
+ADD cyborg-base-archive /cyborg-base-source
+
+{% set cyborg_base_pip_packages = [
+ '/cyborg'
+] %}
+
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+COPY cyborg_sudoers /etc/sudoers.d/kolla_cyborg_sudoers
+
+RUN ln -s cyborg-base-source/* cyborg \
+ && {{ macros.install_pip(cyborg_base_pip_packages | customizable("pip_packages")) }} \
+ && mkdir -p /etc/cyborg/ \
+ && cp -r /cyborg/etc/cyborg/* /etc/cyborg/ \
+ && chmod 750 /etc/sudoers.d \
+ && touch /usr/local/bin/kolla_cyborg_extend_start \
+ && chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_cyborg_extend_start
+
+{{ macros.kolla_patch_sources() }}
+
+{% block cyborg_footer %}{% endblock %}
diff --git a/kolla/docker/cyborg/cyborg-base/cyborg_sudoers b/kolla/docker/cyborg/cyborg-base/cyborg_sudoers
new file mode 100644
index 000000000..63440026d
--- /dev/null
+++ b/kolla/docker/cyborg/cyborg-base/cyborg_sudoers
@@ -0,0 +1 @@
+%kolla ALL=(root) NOPASSWD: /usr/bin/chown -R cyborg\: /var/lib/cyborg/, /bin/chown -R cyborg\: /var/lib/cyborg/
diff --git a/kolla/docker/cyborg/cyborg-base/extend_start.sh b/kolla/docker/cyborg/cyborg-base/extend_start.sh
new file mode 100755
index 000000000..10a58c626
--- /dev/null
+++ b/kolla/docker/cyborg/cyborg-base/extend_start.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+
+# Create log dir for Cyborg logs
+CYBORG_LOG_DIR="/var/log/kolla/cyborg"
+if [[ ! -d "${CYBORG_LOG_DIR}" ]]; then
+ mkdir -p ${CYBORG_LOG_DIR}
+fi
+if [[ $(stat -c %U:%G ${CYBORG_LOG_DIR}) != "cyborg:kolla" ]]; then
+ chown cyborg:kolla ${CYBORG_LOG_DIR}
+fi
+if [[ $(stat -c %a ${CYBORG_LOG_DIR}) != "755" ]]; then
+ chmod 755 ${CYBORG_LOG_DIR}
+fi
+
+. /usr/local/bin/kolla_cyborg_extend_start
diff --git a/kolla/docker/cyborg/cyborg-conductor/Dockerfile.j2 b/kolla/docker/cyborg/cyborg-conductor/Dockerfile.j2
new file mode 100644
index 000000000..d17d1cacd
--- /dev/null
+++ b/kolla/docker/cyborg/cyborg-conductor/Dockerfile.j2
@@ -0,0 +1,13 @@
+FROM {{ namespace }}/{{ image_prefix }}cyborg-base:{{ tag }}
+{% block labels %}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}"
+{% endblock %}
+
+{% block cyborg_conductor_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{{ macros.kolla_patch_sources() }}
+
+{% block cyborg_conductor_footer %}{% endblock %}
+{% block footer %}{% endblock %}