Skip to content

Commit 9669e68

Browse files
Merge pull request #86 from PDOK/jd/panic-recover
Panic recovery + label prefixes
2 parents 23bf4a5 + 7a2c657 commit 9669e68

File tree

95 files changed

+286
-250
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

95 files changed

+286
-250
lines changed

internal/controller/shared_controller.go

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ import (
66
"strconv"
77
"time"
88

9+
"github.com/pkg/errors"
10+
911
"sigs.k8s.io/controller-runtime/pkg/client"
1012

1113
"github.com/pdok/smooth-operator/model"
@@ -21,7 +23,8 @@ import (
2123
)
2224

2325
const (
24-
AppLabelKey = "app"
26+
AppLabelKey = "pdok.nl/app"
27+
InspireLabelKey = "pdok.nl/inspire"
2528
)
2629

2730
func ttlExpired[O pdoknlv3.WMSWFS](obj O) bool {
@@ -68,7 +71,7 @@ func addCommonLabels[O pdoknlv3.WMSWFS](obj O, labels map[string]string) map[str
6871
inspire = any(obj).(*pdoknlv3.WMS).Spec.Service.Inspire != nil
6972
}
7073

71-
labels["inspire"] = strconv.FormatBool(inspire)
74+
labels[InspireLabelKey] = strconv.FormatBool(inspire)
7275

7376
return labels
7477
}
@@ -249,3 +252,20 @@ func createOrUpdateOrDeletePodDisruptionBudget[O pdoknlv3.WMSWFS, R Reconciler](
249252
}
250253
return nil
251254
}
255+
256+
func recoveredPanicToError(rec any) (err error) {
257+
switch x := rec.(type) {
258+
case string:
259+
err = errors.New(x)
260+
case error:
261+
err = x
262+
default:
263+
err = errors.New("unknown panic")
264+
}
265+
266+
// Add stack
267+
// TODO - this doesn't seem to work, see if there is a better method to add the stack
268+
err = errors.WithStack(err)
269+
270+
return
271+
}

internal/controller/test_data/wfs/complete/expected/configmap-capabilities-generator.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,10 +100,10 @@ immutable: true
100100
kind: ConfigMap
101101
metadata:
102102
labels:
103-
app: mapserver
103+
pdok.nl/app: mapserver
104104
dataset: dataset
105105
dataset-owner: datasetOwner
106-
inspire: true
106+
pdok.nl/inspire: true
107107
service-type: wfs
108108
service-version: v1_0
109109
theme: theme

internal/controller/test_data/wfs/complete/expected/configmap-init-scripts.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -172,10 +172,10 @@ immutable: true
172172
kind: ConfigMap
173173
metadata:
174174
labels:
175-
app: mapserver
175+
pdok.nl/app: mapserver
176176
dataset: dataset
177177
dataset-owner: datasetOwner
178-
inspire: true
178+
pdok.nl/inspire: true
179179
service-type: wfs
180180
service-version: v1_0
181181
theme: theme

internal/controller/test_data/wfs/complete/expected/configmap-mapfile-generator.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,10 +104,10 @@ immutable: true
104104
kind: ConfigMap
105105
metadata:
106106
labels:
107-
app: mapserver
107+
pdok.nl/app: mapserver
108108
dataset: dataset
109109
dataset-owner: datasetOwner
110-
inspire: true
110+
pdok.nl/inspire: true
111111
service-type: wfs
112112
service-version: v1_0
113113
theme: theme

internal/controller/test_data/wfs/complete/expected/configmap-mapserver.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -123,10 +123,10 @@ immutable: true
123123
kind: ConfigMap
124124
metadata:
125125
labels:
126-
app: mapserver
126+
pdok.nl/app: mapserver
127127
dataset: dataset
128128
dataset-owner: datasetOwner
129-
inspire: true
129+
pdok.nl/inspire: true
130130
service-type: wfs
131131
service-version: v1_0
132132
theme: theme

internal/controller/test_data/wfs/complete/expected/deployment.yaml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ apiVersion: apps/v1
22
kind: Deployment
33
metadata:
44
labels:
5-
app: mapserver
5+
pdok.nl/app: mapserver
66
dataset: dataset
77
dataset-owner: datasetOwner
8-
inspire: true
8+
pdok.nl/inspire: true
99
service-type: wfs
1010
service-version: v1_0
1111
theme: theme
@@ -22,10 +22,10 @@ spec:
2222
revisionHistoryLimit: 1
2323
selector:
2424
matchLabels:
25-
app: mapserver
25+
pdok.nl/app: mapserver
2626
dataset: dataset
2727
dataset-owner: datasetOwner
28-
inspire: true
28+
pdok.nl/inspire: true
2929
service-type: wfs
3030
service-version: v1_0
3131
theme: theme
@@ -45,10 +45,10 @@ spec:
4545
priority.version-checker.io/mapserver: "4"
4646
priority.version-checker.io/ogc-webservice-proxy: "4"
4747
labels:
48-
app: mapserver
48+
pdok.nl/app: mapserver
4949
dataset: dataset
5050
dataset-owner: datasetOwner
51-
inspire: true
51+
pdok.nl/inspire: true
5252
service-type: wfs
5353
service-version: v1_0
5454
theme: theme

internal/controller/test_data/wfs/complete/expected/horizontalpodautoscaler.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ apiVersion: autoscaling/v2
22
kind: HorizontalPodAutoscaler
33
metadata:
44
labels:
5-
app: mapserver
5+
pdok.nl/app: mapserver
66
dataset: dataset
77
dataset-owner: datasetOwner
8-
inspire: true
8+
pdok.nl/inspire: true
99
service-type: wfs
1010
service-version: v1_0
1111
theme: theme

internal/controller/test_data/wfs/complete/expected/ingressroute.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ apiVersion: traefik.io/v1alpha1
22
kind: IngressRoute
33
metadata:
44
labels:
5-
app: mapserver
5+
pdok.nl/app: mapserver
66
dataset: dataset
77
dataset-owner: datasetOwner
8-
inspire: true
8+
pdok.nl/inspire: true
99
service-type: wfs
1010
service-version: v1_0
1111
theme: theme

internal/controller/test_data/wfs/complete/expected/middleware-headers.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ apiVersion: traefik.io/v1alpha1
22
kind: Middleware
33
metadata:
44
labels:
5-
app: mapserver
5+
pdok.nl/app: mapserver
66
dataset: dataset
77
dataset-owner: datasetOwner
8-
inspire: true
8+
pdok.nl/inspire: true
99
service-type: wfs
1010
service-version: v1_0
1111
theme: theme

internal/controller/test_data/wfs/complete/expected/poddisruptionbudget.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ apiVersion: policy/v1
22
kind: PodDisruptionBudget
33
metadata:
44
labels:
5-
app: mapserver
5+
pdok.nl/app: mapserver
66
dataset: dataset
77
dataset-owner: datasetOwner
8-
inspire: true
8+
pdok.nl/inspire: true
99
service-type: wfs
1010
service-version: v1_0
1111
theme: theme
@@ -22,10 +22,10 @@ spec:
2222
maxUnavailable: 1
2323
selector:
2424
matchLabels:
25-
app: mapserver
25+
pdok.nl/app: mapserver
2626
dataset: dataset
2727
dataset-owner: datasetOwner
28-
inspire: true
28+
pdok.nl/inspire: true
2929
service-type: wfs
3030
service-version: v1_0
3131
theme: theme

0 commit comments

Comments
 (0)