[bitnami/mongodb-sharded] Add tests and publishing using VIB (#12457)

* [bitnami/mongodb-sharded] Add tests and publishing using VIB

Signed-off-by: FraPazGal <fdepaz@vmware.com>

* Add missing goss action

Signed-off-by: FraPazGal <fdepaz@vmware.com>

Signed-off-by: FraPazGal <fdepaz@vmware.com>
This commit is contained in:
Francisco de Paz Galan
2022-09-20 18:39:32 +02:00
committed by GitHub
parent 1e753e8e91
commit f5e453d2c2
5 changed files with 87 additions and 2 deletions

View File

@@ -36,6 +36,7 @@ on: # rebuild any PRs and main branch changes
- 'bitnami/memcached/**' - 'bitnami/memcached/**'
- 'bitnami/minio/**' - 'bitnami/minio/**'
- 'bitnami/mongodb/**' - 'bitnami/mongodb/**'
- 'bitnami/mongodb-sharded/**'
- 'bitnami/moodle/**' - 'bitnami/moodle/**'
- 'bitnami/mysql/**' - 'bitnami/mysql/**'
- 'bitnami/nats/**' - 'bitnami/nats/**'

View File

@@ -0,0 +1,41 @@
command:
{{- $mongos := .Vars.mongos.replicaCount }}
{{- $shards := .Vars.shards }}
{{- $shardNodes := .Vars.shardsvr.dataNode.replicaCount }}
{{- $collection := printf "test_%s" (randAlpha 5) }}
{{- $dbUser := .Vars.auth.rootUser }}
{{- $dbPassword := .Vars.auth.rootPassword }}
{{- $authOptions := printf "-u %s -p %s" $dbUser $dbPassword }}
{{- $svcPort := .Vars.mongos.servicePerReplica.port }}
{{- $localEndpoint := printf "%s:%d" "localhost" .Vars.common.containerPorts.mongodb }}
mongos-check:
exec: mongosh --quiet {{ $authOptions }} {{ $localEndpoint }} --eval "db.createCollection('{{ $collection }}')"{{ range $e, $i := until $mongos }} && mongosh --quiet {{ $authOptions }} mongodb-sharded-{{ $i }}:{{ $svcPort }} --eval "db.getCollectionNames()" | grep {{ $collection }}{{ end }}
exit-status: 0
timeout: 20000
sharding-status:
exec: if [ "$(mongosh --quiet {{ $authOptions }} {{ $localEndpoint }} --eval 'sh.status()' | grep 'state.*1' | wc -l)" -ne {{ $shards }} ]; then exit 1; fi
exit-status: 0
timeout: 20000
shard-data-nodes:
exec: mongosh --quiet {{ $authOptions }} {{ $localEndpoint }} --eval "sh.status()"
exit-status: 0
stdout:
{{ range $e, $shard := until $shards }}
{{ range $e, $shardNode := until $shardNodes }}
- /host.*mongodb-sharded-shard{{ $shard }}-data-{{ $shardNode }}/
{{ end }}
{{ end }}
timeout: 20000
check-user-info:
exec: id
exit-status: 0
stdout:
- uid={{ .Vars.mongos.containerSecurityContext.runAsUser }}
- /groups=.*{{ .Vars.mongos.podSecurityContext.fsGroup }}/
file:
/opt/bitnami/mongodb/conf/keyfile:
mode: "0600"
filetype: file
contains:
- {{ .Vars.auth.replicaSetKey }}
exists: true

View File

@@ -0,0 +1,19 @@
shards: 3
auth:
rootUser: root
rootPassword: Password123!4
replicaSetKey: SetPassword1234
common:
containerPorts:
mongodb: 27017
mongos:
replicaCount: 2
podSecurityContext:
fsGroup: 1002
containerSecurityContext:
runAsUser: 1002
servicePerReplica:
port: 80
shardsvr:
dataNode:
replicaCount: 2

View File

@@ -22,7 +22,7 @@
"url": "{SHA_ARCHIVE}", "url": "{SHA_ARCHIVE}",
"path": "/bitnami/mongodb-sharded" "path": "/bitnami/mongodb-sharded"
}, },
"runtime_parameters": "ImF1dGgiOgogICJyb290UGFzc3dvcmQiOiAiQzY1ZDRRcnQiCiAgInJlcGxpY2FTZXRLZXkiOiAiOXc2cVR4a1YiCiJzZXJ2aWNlIjoKICAicG9ydHMiOgogICAgIm1vbmdvZGIiOiA4MAogICJ0eXBlIjogIkxvYWRCYWxhbmNlciIKInBlcnNpc3RlbmNlIjoKICAiZW5hYmxlZCI6IGZhbHNlCg==", "runtime_parameters": "YXV0aDoKICBlbmFibGVkOiB0cnVlCiAgcm9vdFVzZXI6IHJvb3QKICByb290UGFzc3dvcmQ6IFBhc3N3b3JkMTIzITQKICByZXBsaWNhU2V0S2V5OiBTZXRQYXNzd29yZDEyMzQKc2hhcmRzOiAzCmNvbW1vbjoKICBjb250YWluZXJQb3J0czoKICAgIG1vbmdvZGI6IDI3MDE3CnNlcnZpY2U6CiAgcG9ydHM6CiAgICBtb25nb2RiOiA4MAogIHR5cGU6IExvYWRCYWxhbmNlcgpjb25maWdzdnI6CiAgcmVwbGljYUNvdW50OiAxCiAgcG9kU2VjdXJpdHlDb250ZXh0OgogICAgZW5hYmxlZDogdHJ1ZQogICAgZnNHcm91cDogMTAwMgogIGNvbnRhaW5lclNlY3VyaXR5Q29udGV4dDoKICAgIGVuYWJsZWQ6IHRydWUKICAgIHJ1bkFzVXNlcjogMTAwMgptb25nb3M6CiAgcmVwbGljYUNvdW50OiAyCiAgcG9kU2VjdXJpdHlDb250ZXh0OgogICAgZW5hYmxlZDogdHJ1ZQogICAgZnNHcm91cDogMTAwMgogIGNvbnRhaW5lclNlY3VyaXR5Q29udGV4dDoKICAgIGVuYWJsZWQ6IHRydWUKICAgIHJ1bkFzVXNlcjogMTAwMgogIHVzZVN0YXRlZnVsU2V0OiB0cnVlCiAgc2VydmljZVBlclJlcGxpY2E6CiAgICBlbmFibGVkOiB0cnVlCiAgICB0eXBlOiBDbHVzdGVySVAKICAgIHBvcnQ6IDgwCnNoYXJkc3ZyOgogIGRhdGFOb2RlOgogICAgcmVwbGljYUNvdW50OiAyCiAgICBwb2RTZWN1cml0eUNvbnRleHQ6CiAgICAgIGVuYWJsZWQ6IHRydWUKICAgICAgZnNHcm91cDogMTAwMgogICAgY29udGFpbmVyU2VjdXJpdHlDb250ZXh0OgogICAgICBlbmFibGVkOiB0cnVlCiAgICAgIHJ1bkFzVXNlcjogMTAwMgogIGFyYml0ZXI6CiAgICByZXBsaWNhQ291bnQ6IDA=",
"target_platform": { "target_platform": {
"target_platform_id": "{VIB_ENV_TARGET_PLATFORM}", "target_platform_id": "{VIB_ENV_TARGET_PLATFORM}",
"size": { "size": {
@@ -36,6 +36,18 @@
"params": { "params": {
"endpoint": "lb-mongodb-sharded-mongodb" "endpoint": "lb-mongodb-sharded-mongodb"
} }
},
{
"action_id": "goss",
"params": {
"resources": {
"path": "/.vib/mongodb-sharded/goss"
},
"remote": {
"workload": "sts-mongodb-sharded-mongos"
},
"vars_file": "vars.yaml"
}
} }
] ]
}, },

View File

@@ -22,7 +22,7 @@
"url": "{SHA_ARCHIVE}", "url": "{SHA_ARCHIVE}",
"path": "/bitnami/mongodb-sharded" "path": "/bitnami/mongodb-sharded"
}, },
"runtime_parameters": "ImF1dGgiOgogICJyb290UGFzc3dvcmQiOiAiQzY1ZDRRcnQiCiAgInJlcGxpY2FTZXRLZXkiOiAiOXc2cVR4a1YiCiJzZXJ2aWNlIjoKICAicG9ydHMiOgogICAgIm1vbmdvZGIiOiA4MAogICJ0eXBlIjogIkxvYWRCYWxhbmNlciIKInBlcnNpc3RlbmNlIjoKICAiZW5hYmxlZCI6IGZhbHNlCg==", "runtime_parameters": "YXV0aDoKICBlbmFibGVkOiB0cnVlCiAgcm9vdFVzZXI6IHJvb3QKICByb290UGFzc3dvcmQ6IFBhc3N3b3JkMTIzITQKICByZXBsaWNhU2V0S2V5OiBTZXRQYXNzd29yZDEyMzQKc2hhcmRzOiAzCmNvbW1vbjoKICBjb250YWluZXJQb3J0czoKICAgIG1vbmdvZGI6IDI3MDE3CnNlcnZpY2U6CiAgcG9ydHM6CiAgICBtb25nb2RiOiA4MAogIHR5cGU6IExvYWRCYWxhbmNlcgpjb25maWdzdnI6CiAgcmVwbGljYUNvdW50OiAxCiAgcG9kU2VjdXJpdHlDb250ZXh0OgogICAgZW5hYmxlZDogdHJ1ZQogICAgZnNHcm91cDogMTAwMgogIGNvbnRhaW5lclNlY3VyaXR5Q29udGV4dDoKICAgIGVuYWJsZWQ6IHRydWUKICAgIHJ1bkFzVXNlcjogMTAwMgptb25nb3M6CiAgcmVwbGljYUNvdW50OiAyCiAgcG9kU2VjdXJpdHlDb250ZXh0OgogICAgZW5hYmxlZDogdHJ1ZQogICAgZnNHcm91cDogMTAwMgogIGNvbnRhaW5lclNlY3VyaXR5Q29udGV4dDoKICAgIGVuYWJsZWQ6IHRydWUKICAgIHJ1bkFzVXNlcjogMTAwMgogIHVzZVN0YXRlZnVsU2V0OiB0cnVlCiAgc2VydmljZVBlclJlcGxpY2E6CiAgICBlbmFibGVkOiB0cnVlCiAgICB0eXBlOiBDbHVzdGVySVAKICAgIHBvcnQ6IDgwCnNoYXJkc3ZyOgogIGRhdGFOb2RlOgogICAgcmVwbGljYUNvdW50OiAyCiAgICBwb2RTZWN1cml0eUNvbnRleHQ6CiAgICAgIGVuYWJsZWQ6IHRydWUKICAgICAgZnNHcm91cDogMTAwMgogICAgY29udGFpbmVyU2VjdXJpdHlDb250ZXh0OgogICAgICBlbmFibGVkOiB0cnVlCiAgICAgIHJ1bkFzVXNlcjogMTAwMgogIGFyYml0ZXI6CiAgICByZXBsaWNhQ291bnQ6IDA=",
"target_platform": { "target_platform": {
"target_platform_id": "{VIB_ENV_TARGET_PLATFORM}", "target_platform_id": "{VIB_ENV_TARGET_PLATFORM}",
"size": { "size": {
@@ -36,6 +36,18 @@
"params": { "params": {
"endpoint": "lb-mongodb-sharded-mongodb" "endpoint": "lb-mongodb-sharded-mongodb"
} }
},
{
"action_id": "goss",
"params": {
"resources": {
"path": "/.vib/mongodb-sharded/goss"
},
"remote": {
"workload": "sts-mongodb-sharded-mongos"
},
"vars_file": "vars.yaml"
}
} }
] ]
} }