Add testing setup
This commit is contained in:
parent
b3d5045ca7
commit
fa1a7916f0
3 changed files with 174 additions and 1 deletions
15
.justfile
15
.justfile
|
@ -1,3 +1,6 @@
|
||||||
|
default:
|
||||||
|
@just --choose
|
||||||
|
|
||||||
test:
|
test:
|
||||||
go test -v ./...
|
go test -v ./...
|
||||||
|
|
||||||
|
@ -8,7 +11,7 @@ lint:
|
||||||
|
|
||||||
gofmt:
|
gofmt:
|
||||||
gofmt -l .
|
gofmt -l .
|
||||||
test -z $(gofmt -l .)
|
@test -z $(gofmt -l .)
|
||||||
|
|
||||||
build:
|
build:
|
||||||
go build
|
go build
|
||||||
|
@ -16,3 +19,13 @@ build:
|
||||||
upgrade-deps:
|
upgrade-deps:
|
||||||
go get -u ./...
|
go get -u ./...
|
||||||
go mod tidy
|
go mod tidy
|
||||||
|
|
||||||
|
@run:
|
||||||
|
go run . --config ./devconfig.scfg
|
||||||
|
|
||||||
|
@curl:
|
||||||
|
curl --user "user:pass" -X 'POST' \
|
||||||
|
'127.0.0.1:8080' \
|
||||||
|
-H 'Content-Type: application/json' \
|
||||||
|
-d @contrib/test_payload.json
|
||||||
|
|
||||||
|
|
80
contrib/test_payload.json
Normal file
80
contrib/test_payload.json
Normal file
|
@ -0,0 +1,80 @@
|
||||||
|
{
|
||||||
|
"receiver": "test-receiver",
|
||||||
|
"status": "firing",
|
||||||
|
"alerts": [
|
||||||
|
{
|
||||||
|
"status": "firing",
|
||||||
|
"labels": {
|
||||||
|
"alertname": "systemd_unit_failed",
|
||||||
|
"instance": "example.com",
|
||||||
|
"job": "node_exporter",
|
||||||
|
"name": "example.service",
|
||||||
|
"severity": "critical",
|
||||||
|
"state": "failed",
|
||||||
|
"type": "oneshot"
|
||||||
|
},
|
||||||
|
"annotations": {
|
||||||
|
"description": "Instance example.com: Service example.service failed",
|
||||||
|
"summary": "Systemd unit failed"
|
||||||
|
},
|
||||||
|
"startsAt": "2022-10-09T08:31:47.929Z",
|
||||||
|
"endsAt": "0001-01-01T00:00:00Z",
|
||||||
|
"generatorURL": "http://example.com:9090/graph?g0.expr=node_systemd_unit_state%7Bstate%3D%22failed%22%7D+%3E+0\u0026g0.tab=1",
|
||||||
|
"fingerprint": "6f1c1a905a91802b"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"status": "firing",
|
||||||
|
"labels": {
|
||||||
|
"alertname": "systemd_unit_failed",
|
||||||
|
"instance": "example.com",
|
||||||
|
"job": "node_exporter",
|
||||||
|
"name": "bar.service",
|
||||||
|
"severity": "critical",
|
||||||
|
"state": "failed",
|
||||||
|
"type": "oneshot"
|
||||||
|
},
|
||||||
|
"annotations": {
|
||||||
|
"description": "Instance example.com: Service bar.service failed",
|
||||||
|
"summary": "Systemd unit failed"
|
||||||
|
},
|
||||||
|
"startsAt": "2022-10-06T12:48:47.929Z",
|
||||||
|
"endsAt": "0001-01-01T00:00:00Z",
|
||||||
|
"generatorURL": "http://example.com:9090/graph?g0.expr=node_systemd_unit_state%7Bstate%3D%22failed%22%7D+%3E+0\u0026g0.tab=1",
|
||||||
|
"fingerprint": "0b17134bedc094da"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"status": "firing",
|
||||||
|
"labels": {
|
||||||
|
"alertname": "systemd_unit_failed",
|
||||||
|
"instance": "example.com",
|
||||||
|
"job": "node_exporter",
|
||||||
|
"name": "foo.service",
|
||||||
|
"severity": "critical",
|
||||||
|
"state": "failed",
|
||||||
|
"type": "oneshot"
|
||||||
|
},
|
||||||
|
"annotations": {
|
||||||
|
"description": "Instance example.com: Service foo.service failed",
|
||||||
|
"summary": "Systemd unit failed"
|
||||||
|
},
|
||||||
|
"startsAt": "2022-10-09T00:03:47.929Z",
|
||||||
|
"endsAt": "0001-01-01T00:00:00Z",
|
||||||
|
"generatorURL": "http://example.com:9090/graph?g0.expr=node_systemd_unit_state%7Bstate%3D%22failed%22%7D+%3E+0\u0026g0.tab=1",
|
||||||
|
"fingerprint": "aaaabf78228dbbc6"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"groupLabels": { "instance": "example.com", "severity": "critical" },
|
||||||
|
"commonLabels": {
|
||||||
|
"alertname": "systemd_unit_failed",
|
||||||
|
"instance": "example.com",
|
||||||
|
"job": "node_exporter",
|
||||||
|
"severity": "critical",
|
||||||
|
"state": "failed",
|
||||||
|
"type": "oneshot"
|
||||||
|
},
|
||||||
|
"commonAnnotations": { "summary": "Systemd unit failed" },
|
||||||
|
"externalURL": "http://example.com:9093",
|
||||||
|
"version": "4",
|
||||||
|
"groupKey": "{}:{instance=\"example.com\", severity=\"critical\"}",
|
||||||
|
"truncatedAlerts": 0
|
||||||
|
}
|
80
contrib/test_resolved_payload.json
Normal file
80
contrib/test_resolved_payload.json
Normal file
|
@ -0,0 +1,80 @@
|
||||||
|
{
|
||||||
|
"receiver": "test-receiver",
|
||||||
|
"status": "firing",
|
||||||
|
"alerts": [
|
||||||
|
{
|
||||||
|
"status": "resolved",
|
||||||
|
"labels": {
|
||||||
|
"alertname": "systemd_unit_failed",
|
||||||
|
"instance": "example.com",
|
||||||
|
"job": "node_exporter",
|
||||||
|
"name": "example.service",
|
||||||
|
"severity": "critical",
|
||||||
|
"state": "failed",
|
||||||
|
"type": "oneshot"
|
||||||
|
},
|
||||||
|
"annotations": {
|
||||||
|
"description": "Instance example.com: Service example.service failed",
|
||||||
|
"summary": "Systemd unit failed"
|
||||||
|
},
|
||||||
|
"startsAt": "2022-10-09T08:31:47.929Z",
|
||||||
|
"endsAt": "0001-01-01T00:00:00Z",
|
||||||
|
"generatorURL": "http://example.com:9090/graph?g0.expr=node_systemd_unit_state%7Bstate%3D%22failed%22%7D+%3E+0\u0026g0.tab=1",
|
||||||
|
"fingerprint": "6f1c1a905a91802b"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"status": "firing",
|
||||||
|
"labels": {
|
||||||
|
"alertname": "systemd_unit_failed",
|
||||||
|
"instance": "example.com",
|
||||||
|
"job": "node_exporter",
|
||||||
|
"name": "bar.service",
|
||||||
|
"severity": "critical",
|
||||||
|
"state": "failed",
|
||||||
|
"type": "oneshot"
|
||||||
|
},
|
||||||
|
"annotations": {
|
||||||
|
"description": "Instance example.com: Service bar.service failed",
|
||||||
|
"summary": "Systemd unit failed"
|
||||||
|
},
|
||||||
|
"startsAt": "2022-10-06T12:48:47.929Z",
|
||||||
|
"endsAt": "0001-01-01T00:00:00Z",
|
||||||
|
"generatorURL": "http://example.com:9090/graph?g0.expr=node_systemd_unit_state%7Bstate%3D%22failed%22%7D+%3E+0\u0026g0.tab=1",
|
||||||
|
"fingerprint": "0b17134bedc094da"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"status": "firing",
|
||||||
|
"labels": {
|
||||||
|
"alertname": "systemd_unit_failed",
|
||||||
|
"instance": "example.com",
|
||||||
|
"job": "node_exporter",
|
||||||
|
"name": "foo.service",
|
||||||
|
"severity": "critical",
|
||||||
|
"state": "failed",
|
||||||
|
"type": "oneshot"
|
||||||
|
},
|
||||||
|
"annotations": {
|
||||||
|
"description": "Instance example.com: Service foo.service failed",
|
||||||
|
"summary": "Systemd unit failed"
|
||||||
|
},
|
||||||
|
"startsAt": "2022-10-09T00:03:47.929Z",
|
||||||
|
"endsAt": "0001-01-01T00:00:00Z",
|
||||||
|
"generatorURL": "http://example.com:9090/graph?g0.expr=node_systemd_unit_state%7Bstate%3D%22failed%22%7D+%3E+0\u0026g0.tab=1",
|
||||||
|
"fingerprint": "aaaabf78228dbbc6"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"groupLabels": { "instance": "example.com", "severity": "critical" },
|
||||||
|
"commonLabels": {
|
||||||
|
"alertname": "systemd_unit_failed",
|
||||||
|
"instance": "example.com",
|
||||||
|
"job": "node_exporter",
|
||||||
|
"severity": "critical",
|
||||||
|
"state": "failed",
|
||||||
|
"type": "oneshot"
|
||||||
|
},
|
||||||
|
"commonAnnotations": { "summary": "Systemd unit failed" },
|
||||||
|
"externalURL": "http://example.com:9093",
|
||||||
|
"version": "4",
|
||||||
|
"groupKey": "{}:{instance=\"example.com\", severity=\"critical\"}",
|
||||||
|
"truncatedAlerts": 0
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue