mirror of
https://github.com/bitnami/charts.git
synced 2026-03-16 06:47:30 +08:00
[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:
committed by
GitHub
parent
1e753e8e91
commit
f5e453d2c2
1
.github/workflows/cd-pipeline.yaml
vendored
1
.github/workflows/cd-pipeline.yaml
vendored
@@ -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/**'
|
||||||
|
|||||||
41
.vib/mongodb-sharded/goss/goss.yaml
Normal file
41
.vib/mongodb-sharded/goss/goss.yaml
Normal 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
|
||||||
19
.vib/mongodb-sharded/goss/vars.yaml
Normal file
19
.vib/mongodb-sharded/goss/vars.yaml
Normal 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
|
||||||
@@ -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"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -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"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user