Marriott CDN Team Fastpurge POC script
Project description
Akamai-Purge-Cache : Interactive Script
Current Python Script
"""Module to invoke Akamai Fastpurge via simple CLI utility."""
import os
import click
from fastpurge import FastPurgeClient
@click.command()
@click.option(
"paths",
"--path",
"-p",
multiple=True,
help="A single URL to Purge (This option is repeatable for additional URLs)",
)
@click.option(
"--dryrun",
"-d",
is_flag=True,
help="Just print the command and args that will be run and exit",
)
def mgpurge(paths: list[str], dryrun: bool) -> None:
"""
Module to invoke Akamai Fastpurge via simple CLI utility.
:param list[str] paths: List of paths to purge from Akamai cache.
:param bool dryrun: Just print the command and args that will be run and exit
"""
# Default: Credentials are read from ~/.edgerc
# client = FastPurgeClient()
# Environment: Credentials are read from environment variables
client = FastPurgeClient(
auth={
"client_secret": os.environ["AKAMAI_DEFAULT_CLIENT_SECRET"],
"host": os.environ["AKAMAI_DEFAULT_HOST"],
"access_token": os.environ["AKAMAI_DEFAULT_ACCESS_TOKEN"],
"client_token": os.environ["AKAMAI_DEFAULT_CLIENT_TOKEN"],
}
)
if dryrun:
print("These paths will be purged:")
for path in paths:
click.echo(message=path)
return
# Start purge of some URLs
# purge is a Future, if we want to ensure purge completed
# we can block on the result:
purge_cmd = client.purge_by_url(urls=paths)
# purge is a Future, if we want to ensure purge completed
# we can block on the result:
result = purge_cmd.result()
print("Purge completed:", result)
if __name__ == "__main__":
# pylint: disable=no-value-for-parameter
mgpurge()
TO-DO
- Document local installation
- Document local run
- Document building
- Document publishing to PY-Pi
- Document remote installation and usage
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for akamai_purge_cache-1.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 302e6872ac43f01788d1cbce2a8eca657992dded4b579092d007cbf3883a3cb5 |
|
MD5 | fa47bea625f2a6c41daab534d69e3ae2 |
|
BLAKE2b-256 | 79eb2518c56d642676a478bc2bada224684852a5f19b07b429db3ad6ed1d86a9 |