Skip to content

Commit 7f4c389

Browse files
Merge pull request #68 from echen-98/test-failures
Fix cache parameter group test failure
2 parents ebb3ad0 + 6b48b1a commit 7f4c389

File tree

6 files changed

+123
-75
lines changed

6 files changed

+123
-75
lines changed

apis/v1alpha1/ack-generate-metadata.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
ack_generate_info:
2-
build_date: "2021-10-14T18:44:40Z"
2+
build_date: "2021-10-18T18:57:57Z"
33
build_hash: 385779a205bea50e8762b76bc75cab957cf723b9
44
go_version: go1.15.2
55
version: v0.15.1

pkg/resource/replication_group/manager_test.go

Lines changed: 0 additions & 70 deletions
This file was deleted.

pkg/resource/replication_group/post_set_output.go

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ func (rm *resourceManager) updateSpecFields(
4343
if err == nil && latestCacheCluster != nil {
4444
setEngineVersion(latestCacheCluster, resource)
4545
setMaintenanceWindow(latestCacheCluster, resource)
46+
setCacheParameterGroup(latestCacheCluster, resource)
4647
}
4748
}
4849

@@ -66,7 +67,7 @@ func setReplicasPerNodeGroup(
6667
}
6768
}
6869

69-
// if EngineVersion was specified in desired.Spec, update ko.Sepc with the latest observed value (if non-nil)
70+
// if EngineVersion was specified in desired.Spec, update ko.Spec with the latest observed value (if non-nil)
7071
func setEngineVersion(
7172
latestCacheCluster *svcsdk.CacheCluster,
7273
resource *resource,
@@ -88,3 +89,16 @@ func setMaintenanceWindow(
8889
ko.Spec.PreferredMaintenanceWindow = &pmw
8990
}
9091
}
92+
93+
// setCacheParameterGroup updates the cache parameter group associated with the replication group
94+
// (if non-nil in API response) regardless of whether it was specified in desired
95+
func setCacheParameterGroup(
96+
latestCacheCluster *svcsdk.CacheCluster,
97+
resource *resource,
98+
) {
99+
ko := resource.ko
100+
if latestCacheCluster.CacheParameterGroup != nil && latestCacheCluster.CacheParameterGroup.CacheParameterGroupName != nil {
101+
cpgName := *latestCacheCluster.CacheParameterGroup.CacheParameterGroupName
102+
ko.Spec.CacheParameterGroupName = &cpgName
103+
}
104+
}
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
apiVersion: elasticache.services.k8s.aws/v1alpha1
2+
kind: ReplicationGroup
3+
# omitted metadata
4+
spec:
5+
atRestEncryptionEnabled: false
6+
cacheNodeType: cache.t3.micro
7+
cacheParameterGroupName: "default.redis5.0"
8+
engine: redis
9+
numNodeGroups: 1
10+
preferredMaintenanceWindow: "wed:08:00-wed:09:00"
11+
replicasPerNodeGroup: 1
12+
replicationGroupDescription: cluster-mode disabled RG
13+
replicationGroupID: rg-cmd
14+
snapshotRetentionLimit: 0
15+
snapshotWindow: "10:00-11:00"
16+
transitEncryptionEnabled: false
17+
status:
18+
ackResourceMetadata:
19+
arn: arn:aws:elasticache:us-east-1:012345678910:replicationgroup:rg-cmd
20+
ownerAccountID: ""
21+
allowedScaleUpModifications:
22+
- cache.m3.2xlarge
23+
- cache.m3.large
24+
- cache.m3.medium
25+
- cache.m3.xlarge
26+
- cache.m4.10xlarge
27+
- cache.m4.2xlarge
28+
- cache.m4.4xlarge
29+
- cache.m4.large
30+
- cache.m4.xlarge
31+
- cache.m5.12xlarge
32+
- cache.m5.24xlarge
33+
- cache.m5.2xlarge
34+
- cache.m5.4xlarge
35+
- cache.m5.large
36+
- cache.m5.xlarge
37+
- cache.m6g.large
38+
- cache.r3.2xlarge
39+
- cache.r3.4xlarge
40+
- cache.r3.8xlarge
41+
- cache.r3.large
42+
- cache.r3.xlarge
43+
- cache.r4.16xlarge
44+
- cache.r4.2xlarge
45+
- cache.r4.4xlarge
46+
- cache.r4.8xlarge
47+
- cache.r4.large
48+
- cache.r4.xlarge
49+
- cache.r5.12xlarge
50+
- cache.r5.24xlarge
51+
- cache.r5.2xlarge
52+
- cache.r5.4xlarge
53+
- cache.r5.large
54+
- cache.r5.xlarge
55+
- cache.r6g.2xlarge
56+
- cache.r6g.4xlarge
57+
- cache.r6g.8xlarge
58+
- cache.r6g.large
59+
- cache.r6g.xlarge
60+
- cache.t2.medium
61+
- cache.t2.micro
62+
- cache.t2.small
63+
- cache.t3.medium
64+
- cache.t3.small
65+
authTokenEnabled: false
66+
automaticFailover: disabled
67+
clusterEnabled: false
68+
conditions:
69+
- status: "True"
70+
type: ACK.ResourceSynced
71+
description: cluster-mode disabled RG
72+
events:
73+
- date: "2021-03-30T20:12:00Z"
74+
message: Replication group rg-cmd created
75+
globalReplicationGroupInfo: {}
76+
memberClusters:
77+
- rg-cmd-001
78+
- rg-cmd-002
79+
multiAZ: disabled
80+
nodeGroups:
81+
- nodeGroupID: "0001"
82+
nodeGroupMembers:
83+
- cacheClusterID: rg-cmd-001
84+
cacheNodeID: "0001"
85+
currentRole: primary
86+
preferredAvailabilityZone: us-east-1b
87+
readEndpoint:
88+
address: rg-cmd-001.xxxxxx.0001.use1.cache.amazonaws.com
89+
port: 6379
90+
- cacheClusterID: rg-cmd-002
91+
cacheNodeID: "0001"
92+
currentRole: replica
93+
preferredAvailabilityZone: us-east-1d
94+
readEndpoint:
95+
address: rg-cmd-002.xxxxxx.0001.use1.cache.amazonaws.com
96+
port: 6379
97+
primaryEndpoint:
98+
address: rg-cmd.xxxxxx.ng.0001.use1.cache.amazonaws.com
99+
port: 6379
100+
readerEndpoint:
101+
address: rg-cmd-ro.xxxxxx.ng.0001.use1.cache.amazonaws.com
102+
port: 6379
103+
status: available
104+
pendingModifiedValues: {}
105+
status: available

pkg/resource/replication_group/testdata/test_suite.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ tests:
5353
output_fixture: "cache_clusters/read_many/rg_cmd_primary_cache_node.json"
5454
invoke: ReadOne
5555
expect:
56-
latest_state: "replication_group/cr/rg_cmd_create_completed.yaml"
56+
latest_state: "replication_group/cr/rg_cmd_create_completed_latest.yaml"
5757
error: nil
5858
- name: "ReadOne=NoDiff"
5959
description: "Given desired state matches with server side resource data, ko.Status remain unchanged (resource is stable)"
@@ -70,7 +70,7 @@ tests:
7070
output_fixture: "cache_clusters/read_many/rg_cmd_primary_cache_node.json"
7171
invoke: ReadOne
7272
expect:
73-
latest_state: "replication_group/cr/rg_cmd_create_completed.yaml" #unchanged
73+
latest_state: "replication_group/cr/rg_cmd_create_completed_latest.yaml"
7474
error: nil
7575
- name: "Update=IncreaseReplicaCount"
7676
description: "Ensure a replica is added once a new config is provided"

test/e2e/tests/test_replicationgroup.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -640,7 +640,6 @@ def test_rg_associate_resources(self, rg_associate_resources_input, rg_associate
640640
# assert new state
641641
assert_associated_resources(rg_associate_resources_input['RG_ID'], sg_list, sns_topic, ug_list)
642642

643-
@pytest.mark.blocked # TODO: remove when passing
644643
def test_rg_update_cpg(self, rg_update_cpg_input, rg_update_cpg, bootstrap_resources):
645644
# wait for resource to sync and retrieve initial state
646645
(reference, _) = rg_update_cpg

0 commit comments

Comments
 (0)