From d07b5ede858f088dfd229bef6c9cbaab431b3743 Mon Sep 17 00:00:00 2001 From: Cori Avila <42420333+corico44@users.noreply.github.com> Date: Thu, 18 May 2023 10:32:29 +0200 Subject: [PATCH] [bitnami/kong] Add VIB tests (#31816) * [bitnami/kong] Add initial tests Signed-off-by: Cori Avila * [bitnami/kong] Add check-version test Signed-off-by: Cori Avila * [bitnami/kong] Fix kong.conf path and version test Signed-off-by: Cori Avila * [bitnami/kong] Add change in docker-compose file to trigger tests Signed-off-by: Cori Avila * [bitnami/kong] Fix opentelemetry filetype parameter Signed-off-by: Cori Avila * [bitnami/kong] Fix luarocks path text Signed-off-by: Cori Avila * [bitnami/kong] Fix check-app-version test Signed-off-by: Cori Avila * [bitnami/kong] Delete check-app-version test Signed-off-by: Cori Avila * [bitnami/kong] Fix check-app-version test Signed-off-by: Cori Avila * [bitnami/kong] Fix check-app-version test Signed-off-by: Cori Avila * [bitnami/kong] Fix check-app-version test Signed-off-by: Cori Avila * [bitnami/kong] Fix check-app-version test Signed-off-by: Cori Avila * [bitnami/kong] Fix check-app-version test Signed-off-by: Cori Avila * [bitnami/kong] Add check version app test and check nginx binary Signed-off-by: Cori Avila * [bitnami/kong] Test kong version Signed-off-by: Cori Avila * [bitnami/kong] Test kong version Signed-off-by: Cori Avila * [bitnami/kong] Delete check kong version Signed-off-by: Cori Avila * [bitnami/kong] Delete trigger in docker-compose file Signed-off-by: Cori Avila <42420333+corico44@users.noreply.github.com> --------- Signed-off-by: Cori Avila Signed-off-by: Cori Avila <42420333+corico44@users.noreply.github.com> --- .vib/kong/goss/goss.yaml | 12 ++++++++++++ .vib/kong/goss/kong.yaml | 36 ++++++++++++++++++++++++++++++++++++ .vib/kong/goss/vars.yaml | 17 +++++++++++++++++ .vib/kong/vib-publish.json | 18 +++++++++++++++++- .vib/kong/vib-verify.json | 18 +++++++++++++++++- 5 files changed, 99 insertions(+), 2 deletions(-) create mode 100644 .vib/kong/goss/goss.yaml create mode 100644 .vib/kong/goss/kong.yaml create mode 100644 .vib/kong/goss/vars.yaml diff --git a/.vib/kong/goss/goss.yaml b/.vib/kong/goss/goss.yaml new file mode 100644 index 000000000000..af1905c595f6 --- /dev/null +++ b/.vib/kong/goss/goss.yaml @@ -0,0 +1,12 @@ +gossfile: + # Goss tests exclusive to the current container + ../../kong/goss/kong.yaml: {} + # Load scripts from .vib/common/goss/templates + ../../common/goss/templates/check-binaries.yaml: {} + ../../common/goss/templates/check-broken-symlinks.yaml: {} + ../../common/goss/templates/check-ca-certs.yaml: {} + ../../common/goss/templates/check-directories.yaml: {} + ../../common/goss/templates/check-files.yaml: {} + ../../common/goss/templates/check-linked-libraries.yaml: {} + ../../common/goss/templates/check-sed-in-place.yaml: {} + ../../common/goss/templates/check-spdx.yaml: {} diff --git a/.vib/kong/goss/kong.yaml b/.vib/kong/goss/kong.yaml new file mode 100644 index 000000000000..b97649a655bf --- /dev/null +++ b/.vib/kong/goss/kong.yaml @@ -0,0 +1,36 @@ +group: + kong: + exists: true +user: + kong: + exists: true +file: + /opt/bitnami/kong/conf/kong.conf: + exists: true + contains: + - "prefix = /opt/bitnami/kong/server" + - "nginx_daemon = off" + - "nginx_user = kong" + /opt/bitnami/scripts/kong-env.sh: + exists: true + contains: + - "'luarocks path' configuration" + /etc/bash.bashrc: + exists: true + contains: + - "'luarocks path' configuration" + /usr/local/kong/include/opentelemetry: + exists: true + filetype: symlink +command: + # Ensure that there is no uncommented read-only postgres connection parameter in the main Kong configuration file + check-read-only-conf-values: + exec: grep -E '^pg_ro.+=.+' /opt/bitnami/kong/conf/kong.conf + exit-status: 1 + # Ensure that all non-empty keys in the main Kong configuration file are uncommented + check-status-all-non-empty-keys: + exec: grep -E '^#+([a-z_ ]+)=\s*[^# ]' /opt/bitnami/kong/conf/kong.conf | grep -v 'pg_ro' + exit-status: 1 + check-nginx-run: + exec: nginx -V + exit-status: 0 \ No newline at end of file diff --git a/.vib/kong/goss/vars.yaml b/.vib/kong/goss/vars.yaml new file mode 100644 index 000000000000..45e13eddb88b --- /dev/null +++ b/.vib/kong/goss/vars.yaml @@ -0,0 +1,17 @@ +binaries: + - kong + - render-template +directories: + - mode: "0775" + paths: + - /opt/bitnami/kong/server + - /opt/bitnami/kong/conf + - paths: + - /docker-entrypoint-initdb.d + - /opt/bitnami/kong/openresty/luajit/share/lua/5.1/kong/include/opentelemetry + - /opt/bitnami/kong/bin + - /opt/bitnami/kong/server/lib +files: + - paths: + - /opt/bitnami/kong/server/lib/pluginsocket.proto +root_dir: /opt/bitnami diff --git a/.vib/kong/vib-publish.json b/.vib/kong/vib-publish.json index 1e2aad8ef471..fccf915099ac 100644 --- a/.vib/kong/vib-publish.json +++ b/.vib/kong/vib-publish.json @@ -3,7 +3,8 @@ "resources": { "url": "{VIB_ENV_CONTAINER_URL}", "path": "{VIB_ENV_PATH}" - } + }, + "runtime_parameters": "Y29tbWFuZDogWyJ0YWlsIiwgIi1mIiwgIi9kZXYvbnVsbCJd" }, "phases": { "package": { @@ -32,6 +33,21 @@ }, "verify": { "actions": [ + { + "action_id": "goss", + "params": { + "resources": { + "path": "/.vib" + }, + "tests_file": "kong/goss/goss.yaml", + "vars_file": "kong/goss/vars.yaml", + "remote": { + "pod": { + "workload": "deploy-kong" + } + } + } + }, { "action_id": "trivy", "params": { diff --git a/.vib/kong/vib-verify.json b/.vib/kong/vib-verify.json index a34e8aee9161..8ec095c9cb18 100644 --- a/.vib/kong/vib-verify.json +++ b/.vib/kong/vib-verify.json @@ -3,7 +3,8 @@ "resources": { "url": "{SHA_ARCHIVE}", "path": "{VIB_ENV_PATH}" - } + }, + "runtime_parameters": "Y29tbWFuZDogWyJ0YWlsIiwgIi1mIiwgIi9kZXYvbnVsbCJd" }, "phases": { "package": { @@ -29,6 +30,21 @@ }, "verify": { "actions": [ + { + "action_id": "goss", + "params": { + "resources": { + "path": "/.vib" + }, + "tests_file": "kong/goss/goss.yaml", + "vars_file": "kong/goss/vars.yaml", + "remote": { + "pod": { + "workload": "deploy-kong" + } + } + } + }, { "action_id": "trivy", "params": {