Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(smoketest): clean up scripts for relative paths, shellcheck hints #131

Merged
merged 4 commits into from
Nov 1, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,14 +131,14 @@ To run similar smoketest scenarios in a Kubernetes/OpenShift cluster, do:

```bash
$ cd smoketest/k8s
$ sh smoketest.sh kind # This launches a kind k8s cluster, otherwise skip this if you have another cluster accessible via kubectl/oc.
$ bash smoketest.bash kind # This launches a kind k8s cluster, otherwise skip this if you have another cluster accessible via kubectl/oc.
```

If you get an error during the 'ensuring node image' step while creating cluster "kind", manually pull the podman image by running the command `podman pull docker.io/kindest/node@IMAGE_DIGEST` where IMAGE_DIGEST is the sha256 of the image. Then rerun `sh smoketest.sh kind`.
If you get an error during the 'ensuring node image' step while creating cluster "kind", manually pull the podman image by running the command `podman pull docker.io/kindest/node@IMAGE_DIGEST` where IMAGE_DIGEST is the sha256 of the image. Then rerun `bash smoketest.bash kind`.

Generate k8s yaml configurations and apply them to create k8s objects. You can optionally port-forward to the cluster's services to access the Cryostat application from `localhost`.

```bash
$ sh smoketest.sh generate apply
$ sh smoketest.sh forward # if you need to use port-forwarding to get access to the cluster's services
$ bash smoketest.bash generate apply
$ bash smoketest.bash forward # if you need to use port-forwarding to get access to the cluster's services
```
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
#!/usr/bin/sh
#!/usr/bin/env bash

awslocal s3 mb s3://archivedrecordings
2 changes: 1 addition & 1 deletion smoketest/compose/s3-localstack.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ services:
PORT_WEB_UI: 4577
volumes:
- localstack_data:/etc/localstack/init/ready.d:z
# this buckets.sh hook script isn't working for some reason. In the meantime, after spinning up the localstack instance, do:
# this buckets.bash hook script isn't working for some reason. In the meantime, after spinning up the localstack instance, do:
# $ podman exec -it cryostat3_s3_1 /bin/bash
# $ awslocal s3 mb s3://archivedrecordings
labels:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
#!/bin/sh
#!/usr/bin/env bash

set -x
set -e

HOSTSFILE="${HOSTSFILE:-~/.hosts}"

cleanup() {
podman-compose --in-pod=1 \
-f ./smoketest/compose/db.yml \
Expand All @@ -13,7 +15,7 @@ cleanup() {
-f ./smoketest/compose/cryostat.yml \
down --volumes --remove-orphans
# podman kill hoster || true
> ~/.hosts
truncate -s 0 "${HOSTSFILE}"
}
trap cleanup EXIT
cleanup
Expand All @@ -32,13 +34,10 @@ cleanup
# dvdarias/docker-hoster

setupUserHosts() {
> ~/.hosts
echo "localhost s3" >> ~/.hosts
echo "localhost db" >> ~/.hosts
echo "localhost db-viewer" >> ~/.hosts
echo "localhost cryostat" >> ~/.hosts
echo "localhost vertx-fib-demo-1" >> ~/.hosts
echo "localhost quarkus-test-agent" >> ~/.hosts
truncate -s 0 "${HOSTSFILE}"
for svc in s3 db db-viewer cryostat vertx-fib-demo-1 quarkus-test-agent; do
echo "localhost ${svc}" >> "${HOSTSFILE}"
done
}
setupUserHosts

Expand Down
4 changes: 0 additions & 4 deletions smoketest/k8s/cryostat-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,7 @@ metadata:
io.cryostat.jmxHost: localhost
io.cryostat.jmxPort: "0"
io.cryostat.jmxUrl: service:jmx:rmi:///jndi/rmi://localhost:0/jmxrmi
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.service.expose: cryostat3
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: cryostat
Expand All @@ -27,9 +25,7 @@ spec:
io.cryostat.jmxHost: localhost
io.cryostat.jmxPort: "0"
io.cryostat.jmxUrl: service:jmx:rmi:///jndi/rmi://localhost:0/jmxrmi
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.service.expose: cryostat3
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.network/compose-default: "true"
Expand Down
2 changes: 0 additions & 2 deletions smoketest/k8s/cryostat-ingress.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,7 @@ metadata:
io.cryostat.jmxHost: localhost
io.cryostat.jmxPort: "0"
io.cryostat.jmxUrl: service:jmx:rmi:///jndi/rmi://localhost:0/jmxrmi
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.service.expose: cryostat3
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: cryostat
Expand Down
2 changes: 0 additions & 2 deletions smoketest/k8s/cryostat-service.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,7 @@ metadata:
io.cryostat.jmxHost: localhost
io.cryostat.jmxPort: "0"
io.cryostat.jmxUrl: service:jmx:rmi:///jndi/rmi://localhost:0/jmxrmi
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.service.expose: cryostat3
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: cryostat
Expand Down
6 changes: 0 additions & 6 deletions smoketest/k8s/db-deployment.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: db
Expand All @@ -18,9 +15,6 @@ spec:
type: Recreate
template:
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.network/compose-default: "true"
Expand Down
3 changes: 0 additions & 3 deletions smoketest/k8s/db-service.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: db
Expand Down
4 changes: 0 additions & 4 deletions smoketest/k8s/db-viewer-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,7 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.service.expose: pgadmin
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: db-viewer
Expand All @@ -20,9 +18,7 @@ spec:
template:
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.service.expose: pgadmin
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.network/compose-default: "true"
Expand Down
2 changes: 0 additions & 2 deletions smoketest/k8s/db-viewer-ingress.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,7 @@ apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.service.expose: pgadmin
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: db-viewer
Expand Down
2 changes: 0 additions & 2 deletions smoketest/k8s/db-viewer-service.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,7 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.service.expose: pgadmin
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: db-viewer
Expand Down
12 changes: 8 additions & 4 deletions smoketest/k8s/generate.sh → smoketest/k8s/generate.bash
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
cat > db-configmap.yaml <<< "apiVersion: v1
#!/usr/bin/env bash

DIR="$(dirname "$(readlink -f "$0")")"

cat > "${DIR}/db-configmap.yaml" <<< "apiVersion: v1
kind: ConfigMap
metadata:
name: pgadmin-config
data:
servers.json: |
$(cat ./../compose/servers.json | yq)"
$(yq < "${DIR}/../compose/servers.json")"

yq -i '.spec.template.spec.volumes += {"name": "serverjson", "configMap": {"name": "pgadmin-config", "items": [{"key": "servers.json", "path": "servers.json"}]}}' ./db-viewer-deployment.yaml
yq -i '.spec.template.spec.containers[0].volumeMounts += {"mountPath": "/pgadmin4/servers.json", "name": "serverjson", "subPath": "servers.json"}' ./db-viewer-deployment.yaml
yq -i '.spec.template.spec.volumes += {"name": "serverjson", "configMap": {"name": "pgadmin-config", "items": [{"key": "servers.json", "path": "servers.json"}]}}' "${DIR}/db-viewer-deployment.yaml"
yq -i '.spec.template.spec.containers[0].volumeMounts += {"mountPath": "/pgadmin4/servers.json", "name": "serverjson", "subPath": "servers.json"}' "${DIR}/db-viewer-deployment.yaml"
6 changes: 0 additions & 6 deletions smoketest/k8s/quarkus-test-agent-deployment.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: quarkus-test-agent
Expand All @@ -17,9 +14,6 @@ spec:
strategy: {}
template:
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.network/compose-default: "true"
Expand Down
3 changes: 0 additions & 3 deletions smoketest/k8s/quarkus-test-agent-service.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: quarkus-test-agent
Expand Down
4 changes: 0 additions & 4 deletions smoketest/k8s/s3-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,7 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.service.expose: minio
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: s3
Expand All @@ -20,9 +18,7 @@ spec:
template:
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.service.expose: minio
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.network/compose-default: "true"
Expand Down
2 changes: 0 additions & 2 deletions smoketest/k8s/s3-ingress.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,7 @@ apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.service.expose: minio
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: s3
Expand Down
2 changes: 0 additions & 2 deletions smoketest/k8s/s3-service.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,7 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.service.expose: minio
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: s3
Expand Down
4 changes: 0 additions & 4 deletions smoketest/k8s/sample-app-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@ metadata:
io.cryostat.discovery: "true"
io.cryostat.jmxHost: sample-app
io.cryostat.jmxPort: "9093"
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: sample-app
Expand All @@ -24,8 +22,6 @@ spec:
io.cryostat.discovery: "true"
io.cryostat.jmxHost: sample-app
io.cryostat.jmxPort: "9093"
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.network/compose-default: "true"
Expand Down
2 changes: 0 additions & 2 deletions smoketest/k8s/sample-app-service.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@ metadata:
io.cryostat.discovery: "true"
io.cryostat.jmxHost: sample-app
io.cryostat.jmxPort: "9093"
kompose.cmd: kompose convert -o ./ -f ./../compose/db_k8s.yml -f ./../compose/s3-minio.yml -f ./../compose/cryostat_k8s.yml -f ./../compose/sample-apps.yml --build local
kompose.version: 1.30.0 (9d8dcb518)
creationTimestamp: null
labels:
io.kompose.service: sample-app
Expand Down
15 changes: 11 additions & 4 deletions smoketest/k8s/smoketest.sh → smoketest/k8s/smoketest.bash
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/sh
#!/usr/bin/env bash

set -xe

Expand All @@ -24,9 +24,16 @@ while [ "$#" -ne 0 ]; do
cleanKind
;;
generate)
sh "./../../db/build.sh"
kompose convert -o "./" -f "./../compose/db_k8s.yml" -f "./../compose/s3-minio.yml" -f "./../compose/cryostat_k8s.yml" -f "./../compose/sample-apps.yml" --build local
sh generate.sh
sh "${DIR}/../../db/build.sh"
kompose convert \
--with-kompose-annotation=false \
-o "${DIR}" \
-f "${DIR}/../compose/db_k8s.yml" \
-f "${DIR}/../compose/s3-minio.yml" \
-f "${DIR}/../compose/cryostat_k8s.yml" \
-f "${DIR}/../compose/sample-apps.yml" \
--build local
bash "${DIR}/generate.bash"
;;
apply)
kubectl apply -f "./*.yaml"
Expand Down
Loading