Skip to content

Commit 8b84add

Browse files
committed
fix(cert-manager): disabled auto tls error
1 parent 9ce6d9f commit 8b84add

2 files changed

Lines changed: 18 additions & 23 deletions

File tree

rootfs/api/models/gateway.py

Lines changed: 17 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -51,10 +51,18 @@ def remove(self, port, protocol):
5151
self.ports = ports
5252
return True, ""
5353

54+
@property
55+
def addresses(self):
56+
data = self.scheduler().gateways.get(self.app.id, self.name, ignore_exception=True)
57+
if data.status_code != 200:
58+
return []
59+
addresses = data.json()["status"].get("addresses", [])
60+
return addresses
61+
5462
@property
5563
def listeners(self):
56-
listeners = []
5764
auto_tls = self.app.tls_set.latest().certs_auto_enabled
65+
listeners = []
5866
domains = list(self._get_tls_domain(auto_tls))
5967
for item in self.ports:
6068
port, protocol = item["port"], item["protocol"]
@@ -82,34 +90,23 @@ def listeners(self):
8290
})
8391
return listeners
8492

85-
@property
86-
def addresses(self):
87-
data = self.scheduler().gateways.get(self.app.id, self.name, ignore_exception=True)
88-
if data.status_code != 200:
89-
return []
90-
addresses = data.json()["status"].get("addresses", [])
91-
return addresses
92-
9393
def refresh_to_k8s(self):
94+
kwargs = {"listeners": self.listeners, "gateway_class": settings.GATEWAY_CLASS}
95+
if self.app.tls_set.latest().certs_auto_enabled:
96+
kwargs["annotations"] = {"cert-manager.io/issuer": self.app.id}
9497
try:
9598
try:
9699
data = self.scheduler().gateways.get(self.app.id, self.name).json()
97-
if len(self.listeners) > 0:
98-
self.scheduler().gateways.patch(self.app.id, self.name, **{
99-
"listeners": self.listeners,
100-
"gateway_class": settings.GATEWAY_CLASS,
101-
"version": data["metadata"]["resourceVersion"],
102-
})
100+
if len(kwargs["listeners"]) > 0:
101+
kwargs["version"] = data["metadata"]["resourceVersion"]
102+
self.scheduler().gateways.patch(self.app.id, self.name, **kwargs)
103103
else:
104104
logger.debug("delete k8s resource when listeners are empty")
105105
self.scheduler().gateways.delete(
106106
self.app.id, self.name, ignore_exception=True)
107107
except KubeException:
108-
if len(self.listeners) > 0:
109-
self.scheduler().gateways.create(self.app.id, self.name, **{
110-
"listeners": self.listeners,
111-
"gateway_class": settings.GATEWAY_CLASS,
112-
})
108+
if len(kwargs["listeners"]) > 0:
109+
self.scheduler().gateways.create(self.app.id, self.name, **kwargs)
113110
else:
114111
logger.debug("skip creating k8s resource when listeners are empty")
115112
except KubeException as e:

rootfs/scheduler/resources/gateway.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,7 @@ def manifest(self, namespace, name, **kwargs):
1313
"metadata": {
1414
"name": name,
1515
"namespace": namespace,
16-
"annotations": {
17-
"cert-manager.io/issuer": namespace
18-
},
16+
"annotations": kwargs.get("annotations", {}),
1917
},
2018
"spec": {
2119
"gatewayClassName": kwargs.get("gateway_class", "default"),

0 commit comments

Comments
 (0)