mirror of
https://github.com/wahyd4/charts.git
synced 2026-08-09 05:06:29 +10:00
[bitnami/grafana-loki] Revisit tests (#13670)
* [bitnami/grafana-loki] Revisit tests Signed-off-by: FraPazGal <fdepaz@vmware.com> * Apply suggestions Signed-off-by: FraPazGal <fdepaz@vmware.com> Signed-off-by: FraPazGal <fdepaz@vmware.com>
This commit is contained in:
@@ -2,36 +2,6 @@
|
||||
import body from '../fixtures/logs-body.json';
|
||||
import { lastMinuteTimestamp } from '../support/utils';
|
||||
|
||||
it('shows build info endpoint', () => {
|
||||
cy.request({
|
||||
method: 'GET',
|
||||
url: '/loki/api/v1/status/buildinfo',
|
||||
form: true,
|
||||
}).then((response) => {
|
||||
expect(response.status).to.eq(200);
|
||||
expect(response.body).to.include.all.keys(
|
||||
'version',
|
||||
'revision',
|
||||
'branch',
|
||||
'buildUser',
|
||||
'goVersion'
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
it('allows Loki to get Grafana logs', () => {
|
||||
cy.request({
|
||||
method: 'GET',
|
||||
url: 'loki/api/v1/query?query={app="grafana-loki"}',
|
||||
form: true,
|
||||
}).then((response) => {
|
||||
expect(response.status).to.eq(200);
|
||||
expect(response.headers['content-type']).to.eq(
|
||||
'application/json; charset=UTF-8'
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
it('checks Loki range endpoint', () => {
|
||||
cy.request({
|
||||
method: 'GET',
|
||||
@@ -75,13 +45,3 @@ it('can publish and retrieve a label', () => {
|
||||
expect(response.body.data).to.contain('value');
|
||||
});
|
||||
});
|
||||
|
||||
it('can get a list of series', () => {
|
||||
cy.request({
|
||||
method: 'GET',
|
||||
url: 'loki/api/v1/series',
|
||||
form: true,
|
||||
}).then((response) => {
|
||||
expect(response.status).to.eq(200);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
file:
|
||||
/opt/bitnami/nginx/conf/nginx.conf:
|
||||
mode: "0644"
|
||||
filetype: file
|
||||
exists: true
|
||||
/app/index.html:
|
||||
mode: "0644"
|
||||
filetype: file
|
||||
exists: true
|
||||
contains:
|
||||
- "Welcome to nginx!"
|
||||
command:
|
||||
user-id-test:
|
||||
exec: if [ "$(id -u)" -eq 0 ]; then exit 1; fi
|
||||
exit-status: 0
|
||||
stdout: []
|
||||
stderr: []
|
||||
@@ -0,0 +1,24 @@
|
||||
file:
|
||||
/bitnami/promtail/conf/promtail.yaml:
|
||||
mode: "0644"
|
||||
filetype: file
|
||||
exists: true
|
||||
owner: root
|
||||
contains:
|
||||
- /http_listen_port.*{{ .Vars.promtail.containerPorts.http }}/
|
||||
/var/run/secrets/kubernetes.io/serviceaccount:
|
||||
exists: {{ .Vars.promtail.serviceAccount.automountServiceAccountToken }}
|
||||
filetype: directory
|
||||
mode: "3777"
|
||||
http:
|
||||
http://grafana-loki-promtail:{{ .Vars.promtail.service.ports.http }}/config:
|
||||
status: 200
|
||||
body:
|
||||
- /log_level.*{{ .Vars.promtail.logLevel }}/
|
||||
command:
|
||||
check-user-info:
|
||||
exec: id
|
||||
exit-status: 0
|
||||
stdout:
|
||||
- uid={{ .Vars.promtail.containerSecurityContext.runAsUser }}
|
||||
- /groups=.*{{ .Vars.promtail.podSecurityContext.fsGroup }}/
|
||||
@@ -0,0 +1,13 @@
|
||||
promtail:
|
||||
containerPorts:
|
||||
http: 8081
|
||||
podSecurityContext:
|
||||
fsGroup: 0
|
||||
containerSecurityContext:
|
||||
runAsUser: 0
|
||||
logLevel: debug
|
||||
service:
|
||||
ports:
|
||||
http: 3101
|
||||
serviceAccount:
|
||||
automountServiceAccountToken: true
|
||||
@@ -1,9 +1,42 @@
|
||||
file:
|
||||
/opt/bitnami/grafana-loki/bin/loki:
|
||||
mode: "0755"
|
||||
filetype: file
|
||||
exists: true
|
||||
/opt/bitnami/grafana-loki/bin/logcli:
|
||||
mode: "0755"
|
||||
{{ .Vars.loki.dataDir }}/conf/loki.yaml:
|
||||
mode: "0644"
|
||||
filetype: file
|
||||
exists: true
|
||||
owner: root
|
||||
contains:
|
||||
- "memcachedchunks:{{ .Vars.memcachedchunks.service.ports.memcached }}"
|
||||
- "memcachedfrontend:{{ .Vars.memcachedfrontend.service.ports.memcached }}"
|
||||
- "memcachedindexqueries:{{ .Vars.memcachedindexqueries.service.ports.memcached }}"
|
||||
- /http_listen_port.*{{ .Vars.loki.containerPorts.http }}/
|
||||
http:
|
||||
# As we need to make several API requests, we'll use different services (and pods)
|
||||
# to at the same time test most of them are working properly. For those services not used here,
|
||||
# we suppose they are running as expected given that all follow the same arch
|
||||
http://grafana-loki-distributor:{{ .Vars.distributor.service.ports.http }}/services:
|
||||
status: 200
|
||||
body:
|
||||
- "!Stopping"
|
||||
- "!Terminated"
|
||||
- "!Failed"
|
||||
http://grafana-loki-ingester:{{ .Vars.ingester.service.ports.http }}/config:
|
||||
status: 200
|
||||
body:
|
||||
- /advertise_port.*{{ .Vars.loki.containerPorts.gossipRing }}/
|
||||
http://grafana-loki-compactor:{{ .Vars.compactor.service.ports.http }}/compactor/ring:
|
||||
status: 200
|
||||
body:
|
||||
- ACTIVE
|
||||
addr:
|
||||
tcp://grafana-loki-gossip-ring:{{ .Vars.loki.gossipRing.service.ports.http }}:
|
||||
reachable: true
|
||||
command:
|
||||
check-logcli:
|
||||
exec: logcli instant-query --addr=http://grafana-loki-querier:{{ .Vars.querier.service.ports.http }} '{app="grafana-loki"}'
|
||||
exit-status: 0
|
||||
check-user-info:
|
||||
exec: id
|
||||
exit-status: 0
|
||||
stdout:
|
||||
- uid={{ .Vars.querier.containerSecurityContext.runAsUser }}
|
||||
- /groups=.*{{ .Vars.querier.podSecurityContext.fsGroup }}/
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
loki:
|
||||
dataDir: "/bitnami/grafana-loki"
|
||||
containerPorts:
|
||||
http: 3101
|
||||
gossipRing: 7946
|
||||
gossipRing:
|
||||
service:
|
||||
ports:
|
||||
http: 7946
|
||||
compactor:
|
||||
service:
|
||||
ports:
|
||||
http: 3100
|
||||
distributor:
|
||||
service:
|
||||
ports:
|
||||
http: 3100
|
||||
ingester:
|
||||
service:
|
||||
ports:
|
||||
http: 3100
|
||||
querier:
|
||||
podSecurityContext:
|
||||
fsGroup: 1002
|
||||
containerSecurityContext:
|
||||
runAsUser: 1002
|
||||
service:
|
||||
ports:
|
||||
http: 3100
|
||||
memcachedchunks:
|
||||
service:
|
||||
ports:
|
||||
memcached: 11212
|
||||
memcachedfrontend:
|
||||
service:
|
||||
ports:
|
||||
memcached: 11212
|
||||
memcachedindexqueries:
|
||||
service:
|
||||
ports:
|
||||
memcached: 11212
|
||||
@@ -22,7 +22,7 @@
|
||||
"url": "{SHA_ARCHIVE}",
|
||||
"path": "/bitnami/grafana-loki"
|
||||
},
|
||||
"runtime_parameters": "Z2F0ZXdheToKICBzZXJ2aWNlOgogICAgcG9ydHM6CiAgICAgIGh0dHA6IDgwCiAgICB0eXBlOiBMb2FkQmFsYW5jZXIK",
|
||||
"runtime_parameters": "bG9raToKICBkYXRhRGlyOiAiL2JpdG5hbWkvZ3JhZmFuYS1sb2tpIgogIGNvbnRhaW5lclBvcnRzOgogICAgaHR0cDogMzEwMQogICAgZ29zc2lwUmluZzogNzk0NgogIGdvc3NpcFJpbmc6CiAgICBzZXJ2aWNlOgogICAgICBwb3J0czoKICAgICAgICBodHRwOiA3OTQ2CmNvbXBhY3RvcjoKICBlbmFibGVkOiB0cnVlCiAgc2VydmljZToKICAgIHBvcnRzOgogICAgICBodHRwOiAzMTAwCmdhdGV3YXk6CiAgZW5hYmxlZDogdHJ1ZQogIHNlcnZpY2U6CiAgICBwb3J0czoKICAgICAgaHR0cDogODAKICAgIHR5cGU6IExvYWRCYWxhbmNlcgpkaXN0cmlidXRvcjoKICBzZXJ2aWNlOgogICAgcG9ydHM6CiAgICAgIGh0dHA6IDMxMDAKaW5nZXN0ZXI6CiAgc2VydmljZToKICAgIHBvcnRzOgogICAgICBodHRwOiAzMTAwCnF1ZXJpZXI6CiAgcG9kU2VjdXJpdHlDb250ZXh0OgogICAgZW5hYmxlZDogdHJ1ZQogICAgZnNHcm91cDogMTAwMgogIGNvbnRhaW5lclNlY3VyaXR5Q29udGV4dDoKICAgIGVuYWJsZWQ6IHRydWUKICAgIHJ1bkFzVXNlcjogMTAwMgogIHNlcnZpY2U6CiAgICBwb3J0czoKICAgICAgaHR0cDogMzEwMApxdWVyeUZyb250ZW5kOgogIHNlcnZpY2U6CiAgICBwb3J0czoKICAgICAgaHR0cDogMzEwMApxdWVyeVNjaGVkdWxlcjoKICBzZXJ2aWNlOgogICAgcG9ydHM6CiAgICAgIGh0dHA6IDMxMDAKcHJvbXRhaWw6CiAgZW5hYmxlZDogdHJ1ZQogIGNvbnRhaW5lclBvcnRzOgogICAgaHR0cDogODA4MQogIHBvZFNlY3VyaXR5Q29udGV4dDoKICAgIGVuYWJsZWQ6IHRydWUKICAgIGZzR3JvdXA6IDAKICBjb250YWluZXJTZWN1cml0eUNvbnRleHQ6CiAgICBlbmFibGVkOiB0cnVlCiAgICBydW5Bc1VzZXI6IDAKICBsb2dMZXZlbDogZGVidWcKICBzZXJ2aWNlOgogICAgdHlwZTogQ2x1c3RlcklQCiAgICBwb3J0czoKICAgICAgaHR0cDogMzEwMQogIHJiYWM6CiAgICBjcmVhdGU6IHRydWUKICBzZXJ2aWNlQWNjb3VudDoKICAgIGNyZWF0ZTogdHJ1ZQogICAgYXV0b21vdW50U2VydmljZUFjY291bnRUb2tlbjogdHJ1ZQptZW1jYWNoZWRjaHVua3M6CiAgZW5hYmxlZDogdHJ1ZQogIHNlcnZpY2U6CiAgICBwb3J0czoKICAgICAgbWVtY2FjaGVkOiAxMTIxMgptZW1jYWNoZWRmcm9udGVuZDoKICBlbmFibGVkOiB0cnVlCiAgc2VydmljZToKICAgIHBvcnRzOgogICAgICBtZW1jYWNoZWQ6IDExMjEyCm1lbWNhY2hlZGluZGV4cXVlcmllczoKICBlbmFibGVkOiB0cnVlCiAgc2VydmljZToKICAgIHBvcnRzOgogICAgICBtZW1jYWNoZWQ6IDExMjEyIA==",
|
||||
"target_platform": {
|
||||
"target_platform_id": "{VIB_ENV_TARGET_PLATFORM}",
|
||||
"size": {
|
||||
@@ -42,11 +42,12 @@
|
||||
"action_id": "goss",
|
||||
"params": {
|
||||
"resources": {
|
||||
"path": "/.vib/grafana-loki/goss/gateway"
|
||||
"path": "/.vib/grafana-loki/goss/promtail"
|
||||
},
|
||||
"remote": {
|
||||
"workload": "deploy-grafana-loki-gateway"
|
||||
}
|
||||
"workload": "ds-grafana-loki-promtail"
|
||||
},
|
||||
"vars_file": "vars.yaml"
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -57,7 +58,8 @@
|
||||
},
|
||||
"remote": {
|
||||
"workload": "sts-grafana-loki-querier"
|
||||
}
|
||||
},
|
||||
"vars_file": "vars.yaml"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
"url": "{SHA_ARCHIVE}",
|
||||
"path": "/bitnami/grafana-loki"
|
||||
},
|
||||
"runtime_parameters": "Z2F0ZXdheToKICBzZXJ2aWNlOgogICAgcG9ydHM6CiAgICAgIGh0dHA6IDgwCiAgICB0eXBlOiBMb2FkQmFsYW5jZXIK",
|
||||
"runtime_parameters": "bG9raToKICBkYXRhRGlyOiAiL2JpdG5hbWkvZ3JhZmFuYS1sb2tpIgogIGNvbnRhaW5lclBvcnRzOgogICAgaHR0cDogMzEwMQogICAgZ29zc2lwUmluZzogNzk0NgogIGdvc3NpcFJpbmc6CiAgICBzZXJ2aWNlOgogICAgICBwb3J0czoKICAgICAgICBodHRwOiA3OTQ2CmNvbXBhY3RvcjoKICBlbmFibGVkOiB0cnVlCiAgc2VydmljZToKICAgIHBvcnRzOgogICAgICBodHRwOiAzMTAwCmdhdGV3YXk6CiAgZW5hYmxlZDogdHJ1ZQogIHNlcnZpY2U6CiAgICBwb3J0czoKICAgICAgaHR0cDogODAKICAgIHR5cGU6IExvYWRCYWxhbmNlcgpkaXN0cmlidXRvcjoKICBzZXJ2aWNlOgogICAgcG9ydHM6CiAgICAgIGh0dHA6IDMxMDAKaW5nZXN0ZXI6CiAgc2VydmljZToKICAgIHBvcnRzOgogICAgICBodHRwOiAzMTAwCnF1ZXJpZXI6CiAgcG9kU2VjdXJpdHlDb250ZXh0OgogICAgZW5hYmxlZDogdHJ1ZQogICAgZnNHcm91cDogMTAwMgogIGNvbnRhaW5lclNlY3VyaXR5Q29udGV4dDoKICAgIGVuYWJsZWQ6IHRydWUKICAgIHJ1bkFzVXNlcjogMTAwMgogIHNlcnZpY2U6CiAgICBwb3J0czoKICAgICAgaHR0cDogMzEwMApxdWVyeUZyb250ZW5kOgogIHNlcnZpY2U6CiAgICBwb3J0czoKICAgICAgaHR0cDogMzEwMApxdWVyeVNjaGVkdWxlcjoKICBzZXJ2aWNlOgogICAgcG9ydHM6CiAgICAgIGh0dHA6IDMxMDAKcHJvbXRhaWw6CiAgZW5hYmxlZDogdHJ1ZQogIGNvbnRhaW5lclBvcnRzOgogICAgaHR0cDogODA4MQogIHBvZFNlY3VyaXR5Q29udGV4dDoKICAgIGVuYWJsZWQ6IHRydWUKICAgIGZzR3JvdXA6IDAKICBjb250YWluZXJTZWN1cml0eUNvbnRleHQ6CiAgICBlbmFibGVkOiB0cnVlCiAgICBydW5Bc1VzZXI6IDAKICBsb2dMZXZlbDogZGVidWcKICBzZXJ2aWNlOgogICAgdHlwZTogQ2x1c3RlcklQCiAgICBwb3J0czoKICAgICAgaHR0cDogMzEwMQogIHJiYWM6CiAgICBjcmVhdGU6IHRydWUKICBzZXJ2aWNlQWNjb3VudDoKICAgIGNyZWF0ZTogdHJ1ZQogICAgYXV0b21vdW50U2VydmljZUFjY291bnRUb2tlbjogdHJ1ZQptZW1jYWNoZWRjaHVua3M6CiAgZW5hYmxlZDogdHJ1ZQogIHNlcnZpY2U6CiAgICBwb3J0czoKICAgICAgbWVtY2FjaGVkOiAxMTIxMgptZW1jYWNoZWRmcm9udGVuZDoKICBlbmFibGVkOiB0cnVlCiAgc2VydmljZToKICAgIHBvcnRzOgogICAgICBtZW1jYWNoZWQ6IDExMjEyCm1lbWNhY2hlZGluZGV4cXVlcmllczoKICBlbmFibGVkOiB0cnVlCiAgc2VydmljZToKICAgIHBvcnRzOgogICAgICBtZW1jYWNoZWQ6IDExMjEyIA==",
|
||||
"target_platform": {
|
||||
"target_platform_id": "{VIB_ENV_TARGET_PLATFORM}",
|
||||
"size": {
|
||||
@@ -42,11 +42,12 @@
|
||||
"action_id": "goss",
|
||||
"params": {
|
||||
"resources": {
|
||||
"path": "/.vib/grafana-loki/goss/gateway"
|
||||
"path": "/.vib/grafana-loki/goss/promtail"
|
||||
},
|
||||
"remote": {
|
||||
"workload": "deploy-grafana-loki-gateway"
|
||||
}
|
||||
"workload": "ds-grafana-loki-promtail"
|
||||
},
|
||||
"vars_file": "vars.yaml"
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -57,7 +58,8 @@
|
||||
},
|
||||
"remote": {
|
||||
"workload": "sts-grafana-loki-querier"
|
||||
}
|
||||
},
|
||||
"vars_file": "vars.yaml"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user