From 39d5e0a26fcbf67ab090a22ba1ddf2a2a50a2189 Mon Sep 17 00:00:00 2001 From: Francisco de Paz Galan Date: Tue, 7 Mar 2023 17:49:26 +0100 Subject: [PATCH] [bitnami/java] Add VIB tests (#25810) * [bitnami/java] Add VIB tests Signed-off-by: FraPazGal * Trigger VIB Signed-off-by: FraPazGal * Fix vars typo Signed-off-by: FraPazGal * Remove linked libs tests and fix jar Signed-off-by: FraPazGal * Compile jar testfile with java 1.8 Signed-off-by: FraPazGal * Remove VIB trigger Signed-off-by: FraPazGal * Remove linked-libs test Signed-off-by: FraPazGal * Apply suggestions Signed-off-by: FraPazGal --------- Signed-off-by: FraPazGal --- .vib/java/goss/goss.yaml | 9 +++++++++ .vib/java/goss/java.yaml | 14 ++++++++++++++ .vib/java/goss/testfiles/HelloTest.jar | Bin 0 -> 787 bytes .vib/java/goss/vars.yaml | 7 +++++++ .vib/java/vib-publish.json | 16 +++++++++++++++- .vib/java/vib-verify.json | 18 ++++++++++++++++-- 6 files changed, 61 insertions(+), 3 deletions(-) create mode 100644 .vib/java/goss/goss.yaml create mode 100644 .vib/java/goss/java.yaml create mode 100755 .vib/java/goss/testfiles/HelloTest.jar create mode 100644 .vib/java/goss/vars.yaml diff --git a/.vib/java/goss/goss.yaml b/.vib/java/goss/goss.yaml new file mode 100644 index 000000000000..1ad9bb989988 --- /dev/null +++ b/.vib/java/goss/goss.yaml @@ -0,0 +1,9 @@ +gossfile: + # Goss tests exclusive to the current container + ../../java/goss/java.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-files.yaml: {} + ../../common/goss/templates/check-sed-in-place.yaml: {} diff --git a/.vib/java/goss/java.yaml b/.vib/java/goss/java.yaml new file mode 100644 index 000000000000..37b6ff2c72cd --- /dev/null +++ b/.vib/java/goss/java.yaml @@ -0,0 +1,14 @@ +command: + # Java 1.8 does not support --version, with -version printing to stderr + # We need to parse the printed version differently depending on the version: + # - Major versions are often shown as "x" instead of "x.0.0" + # - In Java 1.8, the printed version is 1.8.0_x, but $APP_VERSION is formated as 1.8.x + # - Versions are usually printed as x.y.z+b, but $APP_VERSION is formated as x.y.z-b + check-app-version: + exec: java -version 2>&1 | sed "s/+/-/g" | sed "s/0_//g" | grep "$(echo $APP_VERSION | sed -E 's|([0-9]+)\.0\.0$|\1|g')" + exit-status: 0 + check-run-jar: + exec: java -jar ./java/goss/testfiles/HelloTest.jar + stdout: + - Hello VIB + exit-status: 0 diff --git a/.vib/java/goss/testfiles/HelloTest.jar b/.vib/java/goss/testfiles/HelloTest.jar new file mode 100755 index 0000000000000000000000000000000000000000..42bdab0e4272bfe81c7aa2d9997bcd1c13ecafa4 GIT binary patch literal 787 zcmWIWW@Zs#;Nak3VC_i?V?Y9&3@i-3t|5-Po_=on|4uP5Ff#;rvvYt{FhP|C;M6Pv zQ~}rQ>*(j{<{BKL=j-;__snS@Z(Y5MyxzK6=gyqp9At3C_`%a6JuhD!Pv48Bt5~=- zGJdG3sV|$Zre*P5T=a>!>NJL_S)Yo2s--=9Y4u!1Ogvh%V#%{7Puic0KV9;ov88fn z#ZIuxZY!%bM*!`O1!9EDzICH|OB5*Uk(!f}AD&;7lcMjNn3<=SoRe5woEzZleb_;u z_VyBA;l*p$uAI+WEwG5a_+!||1qxhixh7V9n6kzD=A;x=wI+LSelEE`jQ=zW%S5{_ z*q(W}r_%WS*}B^L8YT;;>yEs<(!Oi1T`anAY!>Tzr}l+qI!1wW3?%;j>o{mLS@_%q ziH@H5shMX!-`4QsFud%M!Xx{?&Y*kVB8ARPnF3-vPb{mw`l4mind5(AG&b3)d|LQu z=Z1jo8{Q=`&kot~z*DK*efn~-Z815??OROB)IX;P@oe=dURNM{{>P3V?5*efS^ZCL z&{_H5?=3;29g6y_mX88&rDy0jNUmX@s=DOi&+cyy{Gq?JO0^PBS-Z~Oq<6RH-K&Gv zH@IyxlDkZKrCcJLe!Jhjytd(Qm)GfvX3OQ)Ax-mEJ=4pcI#nJN|Dk2q8ay8QEc=NJfC`Kql5G T5AbGX11Vz$!UI6s7VLNc;@bA# literal 0 HcmV?d00001 diff --git a/.vib/java/goss/vars.yaml b/.vib/java/goss/vars.yaml new file mode 100644 index 000000000000..88fcb5af5e1c --- /dev/null +++ b/.vib/java/goss/vars.yaml @@ -0,0 +1,7 @@ +binaries: + - java + - gosu +files: + - paths: + - /opt/bitnami/java/legal/java.base/LICENSE +root_dir: /opt/bitnami diff --git a/.vib/java/vib-publish.json b/.vib/java/vib-publish.json index f58738648055..89b252d3de6b 100644 --- a/.vib/java/vib-publish.json +++ b/.vib/java/vib-publish.json @@ -3,7 +3,8 @@ "resources": { "url": "{VIB_ENV_CONTAINER_URL}", "path": "{VIB_ENV_PATH}" - } + }, + "runtime_parameters": "Y29tbWFuZDogWyJ0YWlsIiwgIi1mIiwgIi9kZXYvbnVsbCJd" }, "phases": { "package": { @@ -33,6 +34,19 @@ }, "verify": { "actions": [ + { + "action_id": "goss", + "params": { + "resources": { + "path": "/.vib" + }, + "tests_file": "java/goss/goss.yaml", + "vars_file": "java/goss/vars.yaml", + "remote": { + "workload": "deploy-java" + } + } + }, { "action_id": "trivy", "params": { diff --git a/.vib/java/vib-verify.json b/.vib/java/vib-verify.json index 835cd556e241..35a8ea34e4f3 100644 --- a/.vib/java/vib-verify.json +++ b/.vib/java/vib-verify.json @@ -3,7 +3,8 @@ "resources": { "url": "{SHA_ARCHIVE}", "path": "{VIB_ENV_PATH}" - } + }, + "runtime_parameters": "Y29tbWFuZDogWyJ0YWlsIiwgIi1mIiwgIi9kZXYvbnVsbCJd" }, "phases": { "package": { @@ -29,6 +30,19 @@ }, "verify": { "actions": [ + { + "action_id": "goss", + "params": { + "resources": { + "path": "/.vib" + }, + "tests_file": "java/goss/goss.yaml", + "vars_file": "java/goss/vars.yaml", + "remote": { + "workload": "deploy-java" + } + } + }, { "action_id": "trivy", "params": { @@ -50,4 +64,4 @@ ] } } -} \ No newline at end of file +}