pull/2370/merge
souleb 3 years ago committed by GitHub
commit db743e5309
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -79,6 +79,12 @@ func TestDiffKustomization(t *testing.T) {
objectFile: "./testdata/diff-kustomization/value-sops-secret.yaml",
assert: assertGoldenFile("./testdata/diff-kustomization/diff-with-drifted-value-sops-secret.golden"),
},
{
name: "diff with a drifted hpa object",
args: "diff kustomization podinfo --path ./testdata/build-kustomization/podinfo",
objectFile: "./testdata/diff-kustomization/hpa.yaml",
assert: assertGoldenFile("./testdata/diff-kustomization/diff-with-drifted-hpa.golden"),
},
}
tmpl := map[string]string{

@ -3,6 +3,23 @@ kind: HorizontalPodAutoscaler
metadata:
name: podinfo
spec:
behavior:
scaleDown:
policies:
- periodSeconds: 15
type: Percent
value: 99
selectPolicy: Max
stabilizationWindowSeconds: 60
scaleUp:
policies:
- periodSeconds: 15
type: Pods
value: 5
- periodSeconds: 15
type: Percent
value: 100
selectPolicy: Max
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
@ -18,3 +35,10 @@ spec:
# scale up if usage is above
# 99% of the requested CPU (100m)
averageUtilization: 99
- type: Pods
pods:
metric:
name: podinfo_http_requests_total
target:
averageValue: "2"
type: AverageValue

@ -86,6 +86,23 @@ metadata:
name: podinfo
namespace: default
spec:
behavior:
scaleDown:
policies:
- periodSeconds: 15
type: Percent
value: 99
selectPolicy: Max
stabilizationWindowSeconds: 60
scaleUp:
policies:
- periodSeconds: 15
type: Pods
value: 5
- periodSeconds: 15
type: Percent
value: 100
selectPolicy: Max
maxReplicas: 4
metrics:
- resource:
@ -94,6 +111,13 @@ spec:
averageUtilization: 99
type: Utilization
type: Resource
- pods:
metric:
name: podinfo_http_requests_total
target:
averageValue: "2"
type: AverageValue
type: Pods
minReplicas: 2
scaleTargetRef:
apiVersion: apps/v1

@ -86,6 +86,23 @@ metadata:
name: podinfo
namespace: default
spec:
behavior:
scaleDown:
policies:
- periodSeconds: 15
type: Percent
value: 99
selectPolicy: Max
stabilizationWindowSeconds: 60
scaleUp:
policies:
- periodSeconds: 15
type: Pods
value: 5
- periodSeconds: 15
type: Percent
value: 100
selectPolicy: Max
maxReplicas: 4
metrics:
- resource:
@ -94,6 +111,13 @@ spec:
averageUtilization: 99
type: Utilization
type: Resource
- pods:
metric:
name: podinfo_http_requests_total
target:
averageValue: "2"
type: AverageValue
type: Pods
minReplicas: 2
scaleTargetRef:
apiVersion: apps/v1

@ -3,6 +3,23 @@ kind: HorizontalPodAutoscaler
metadata:
name: podinfo
spec:
behavior:
scaleDown:
policies:
- periodSeconds: 15
type: Percent
value: 99
selectPolicy: Max
stabilizationWindowSeconds: 60
scaleUp:
policies:
- periodSeconds: 15
type: Pods
value: 5
- periodSeconds: 15
type: Percent
value: 100
selectPolicy: Max
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
@ -18,3 +35,10 @@ spec:
# scale up if usage is above
# 99% of the requested CPU (100m)
averageUtilization: 99
- type: Pods
pods:
metric:
name: podinfo_http_requests_total
target:
averageValue: "2"
type: AverageValue

@ -0,0 +1,52 @@
► Deployment/default/podinfo created
► HorizontalPodAutoscaler/default/podinfo drifted
spec.behavior.scaleDown.policies.0.periodSeconds
± value change
- 16
+ 15
spec.behavior.scaleUp.policies
- two list entries removed: + two list entries added:
- type: Pods - type: Pods
periodSeconds: 16 periodSeconds: 15
value: 5 value: 5
- type: Percent - type: Percent
periodSeconds: 16 periodSeconds: 15
value: 100 value: 100
spec.metrics
- two list entries removed:
- type: Pods
pods:
metric:
name: podinfo_http_requests_total
target:
type: AverageValue
averageValue: 3
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 98
+ two list entries added:
- type: Pods
pods:
metric:
name: podinfo_http_requests_total
target:
type: AverageValue
averageValue: 2
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 99
► Service/default/podinfo created
► Secret/default/podinfo-token-77t89m9b67 created
► Secret/default/db-user-pass-bkbd782d2c created

@ -0,0 +1,48 @@
apiVersion: autoscaling/v2beta2
kind: HorizontalPodAutoscaler
metadata:
labels:
kustomize.toolkit.fluxcd.io/name: podinfo
kustomize.toolkit.fluxcd.io/namespace: {{ .fluxns }}
name: podinfo
namespace: default
spec:
behavior:
scaleDown:
policies:
- periodSeconds: 16
type: Percent
value: 99
selectPolicy: Max
stabilizationWindowSeconds: 60
scaleUp:
policies:
- periodSeconds: 16
type: Pods
value: 5
- periodSeconds: 16
type: Percent
value: 100
selectPolicy: Max
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: podinfo
minReplicas: 2
maxReplicas: 4
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
# scale up if usage is above
# 99% of the requested CPU (100m)
averageUtilization: 98
- type: Pods
pods:
metric:
name: podinfo_http_requests_total
target:
averageValue: "3"
type: AverageValue

@ -266,7 +266,7 @@ func trimSopsData(res *resource.Resource) error {
data, err := base64.StdEncoding.DecodeString(v)
if err != nil {
if _, ok := err.(base64.CorruptInputError); ok {
return fmt.Errorf("failed to decode secret data: %w", err)
return fmt.Errorf("failed to decode secret %s data: %w", res.GetName(), err)
}
}

Loading…
Cancel
Save