Skip to content

Commit 74bac3e

Browse files
authored
Merge pull request syslog-ng#5147 from syslog-ng/nightly_cdn_to_front_door
package-indexer: use afd_endpoints instead of endpoints in CDN purge call
2 parents b0ccc89 + 860f1f6 commit 74bac3e

File tree

3 files changed

+25
-6
lines changed

3 files changed

+25
-6
lines changed

packaging/package-indexer/cdn/azure_cdn.py

+11-4
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,10 @@ class AzureCDN(CDN):
4646
tenant-id: "secret5"
4747
client-id: "secret6"
4848
client-secret: "secret7"
49+
domains:
50+
- "<domain1>"
51+
- "<domain2>"
52+
...
4953
```
5054
"""
5155

@@ -58,6 +62,7 @@ def __init__(
5862
tenant_id: str,
5963
client_id: str,
6064
client_secret: str,
65+
domains: list,
6166
):
6267
credential = ClientSecretCredential(
6368
tenant_id=tenant_id,
@@ -72,6 +77,7 @@ def __init__(
7277
self.__resource_group_name = resource_group_name
7378
self.__profile_name = profile_name
7479
self.__endpoint_name = endpoint_name
80+
self.__domains = domains
7581

7682
super().__init__()
7783

@@ -89,23 +95,24 @@ def from_config(cfg: dict) -> CDN:
8995
tenant_id=cfg["tenant-id"],
9096
client_id=cfg["client-id"],
9197
client_secret=cfg["client-secret"],
98+
domains=cfg["domains"],
9299
)
93100

94101
def refresh_cache(self, path: Path) -> None:
95102
path_str = str(Path("/", path))
96103

97-
self._log_info("Refreshing CDN cache.", path=path_str)
104+
self._log_info("Refreshing CDN cache.", path=path_str, domains=str(self.__domains))
98105

99-
poller: LROPoller = self.__cdn.endpoints.begin_purge_content(
106+
poller: LROPoller = self.__cdn.afd_endpoints.begin_purge_content(
100107
resource_group_name=self.__resource_group_name,
101108
profile_name=self.__profile_name,
102109
endpoint_name=self.__endpoint_name,
103-
content_file_paths=PurgeParameters(content_paths=[path_str]),
110+
contents={"contentPaths": [path_str], "domains": self.__domains},
104111
)
105112
poller.wait()
106113

107114
status = poller.status()
108115
if not status == "Succeeded":
109116
raise Exception("Failed to refresh CDN cache. status: {}".format(status))
110117

111-
self._log_info("Successfully refreshed CDN cache.", path=path_str)
118+
self._log_info("Successfully refreshed CDN cache.", path=path_str, domains=str(self.__domains))

packaging/package-indexer/index-packages.py

+11-2
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,11 @@ def add_optional_arguments(parser: ArgumentParser) -> None:
7373
type=str,
7474
help="Also log more verbosely into this file.",
7575
)
76+
parser.add_argument(
77+
"--flush-cache-only",
78+
action="store_true",
79+
help="Only flush the caches of the Azure CDN. Used for testing that part.",
80+
)
7681

7782

7883
def parse_args() -> dict:
@@ -157,8 +162,12 @@ def main() -> None:
157162
cfg = load_config(args)
158163

159164
indexers = construct_indexers(cfg, args)
160-
for indexer in indexers:
161-
indexer.index()
165+
if args["flush_cache_only"]:
166+
for indexer in indexers:
167+
indexer.flush_cdn_cache()
168+
else:
169+
for indexer in indexers:
170+
indexer.index()
162171

163172

164173
if __name__ == "__main__":

packaging/package-indexer/indexer/indexer.py

+3
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,9 @@ def index(self) -> None:
8686
self.__sync_to_remote()
8787
self.__refresh_cdn_cache()
8888

89+
def flush_cdn_cache(self) -> None:
90+
self.__refresh_cdn_cache()
91+
8992
@staticmethod
9093
def __create_logger() -> logging.Logger:
9194
logger = logging.getLogger("Indexer")

0 commit comments

Comments
 (0)