From 484e17bf4a272900ca20365ff1bc8feff5e39df0 Mon Sep 17 00:00:00 2001 From: alex Date: Sun, 8 Oct 2023 21:04:22 +0200 Subject: [PATCH] Configurable base URL --- blog_experiment/blog/__main__.py | 6 ++++++ blog_experiment/blog/blog_pages.py | 6 +++--- blog_experiment/blog/html.py | 4 ++-- blog_experiment/blog/meta.py | 3 ++- blog_experiment/k8s.yaml | 2 ++ 5 files changed, 15 insertions(+), 6 deletions(-) diff --git a/blog_experiment/blog/__main__.py b/blog_experiment/blog/__main__.py index afe50c5..2103390 100644 --- a/blog_experiment/blog/__main__.py +++ b/blog_experiment/blog/__main__.py @@ -8,13 +8,19 @@ from bicephalus import ssl import blog +from blog import meta + def main(): otel.configure_logging(logging.INFO) parser = argparse.ArgumentParser() parser.add_argument("--key-cert", nargs=2, metavar=("KEY", "CERT",), help="Path to a key and a file") + parser.add_argument("schema") + parser.add_argument("host") args = parser.parse_args() + meta.SCHEMA = args.schema + meta.HOST = args.host if args.key_cert: key, cert = args.key_cert diff --git a/blog_experiment/blog/blog_pages.py b/blog_experiment/blog/blog_pages.py index 132e56d..7880385 100644 --- a/blog_experiment/blog/blog_pages.py +++ b/blog_experiment/blog/blog_pages.py @@ -64,7 +64,7 @@ class Entry: url = gem_element.url if url.startswith("gemini://"): if url.startswith("gemini://alex.corcoles.net/"): - url = url.replace("gemini://alex.corcoles.net/", meta.BASE_URL + "/") + url = url.replace("gemini://alex.corcoles.net/", f"{meta.SCHEMA}://{meta.HOST}/") else: url = url.replace("gemini://", "https://portal.mozz.us/gemini/") @@ -146,11 +146,11 @@ class Root(page.BasePage): fg = feed.FeedGenerator() fg.title(meta.TITLE) fg.subtitle(meta.SUBTITLE) - fg.link(href=meta.BASE_URL, rel="self") + fg.link(href=f"{meta.SCHEMA}://{meta.HOST}", rel="self") for entry in self.entries()[0:10]: fe = fg.add_entry() - url = f"{meta.BASE_URL}{entry.uri}" + url = f"{meta.SCHEMA}://{meta.HOST}/{entry.uri}" fe.link(href=url) fe.published(datetime.datetime.combine(entry.posted, datetime.datetime.min.time(), tzinfo=datetime.timezone.utc)) fe.title(entry.title) diff --git a/blog_experiment/blog/html.py b/blog_experiment/blog/html.py index c7112ea..5263ca9 100644 --- a/blog_experiment/blog/html.py +++ b/blog_experiment/blog/html.py @@ -6,7 +6,7 @@ from blog import meta, pretty def html_template(*content, page_title=None): - title = [h.A(meta.TITLE, href=meta.BASE_URL)] + title = [h.A(meta.TITLE, href=f"{meta.SCHEMA}://{meta.HOST}")] if page_title: title += f" - {page_title}" @@ -20,7 +20,7 @@ def html_template(*content, page_title=None): h.HTML( h.HEAD( h.TITLE(meta.TITLE + (f" - {page_title}" if page_title else "")), - h.LINK(rel="alternate", type="application/rss+xml", title=meta.TITLE, href=f"{meta.BASE_URL}/feed/"), + h.LINK(rel="alternate", type="application/rss+xml", title=meta.TITLE, href=f"{meta.SCHEMA}://{meta.HOST}/feed/"), ), h.BODY( h.H1(title), diff --git a/blog_experiment/blog/meta.py b/blog_experiment/blog/meta.py index 8ab0884..e92b2ac 100644 --- a/blog_experiment/blog/meta.py +++ b/blog_experiment/blog/meta.py @@ -1,6 +1,7 @@ TITLE = "El blog es mío" SUBTITLE = "Hay otros como él, pero este es el mío" -BASE_URL = "https://blog.pdp7.net" +HOST = None +SCHEMA = None LINKS = ( ("GitHub", "https://github.com/alexpdp7/"), diff --git a/blog_experiment/k8s.yaml b/blog_experiment/k8s.yaml index 3d31b51..e497d87 100644 --- a/blog_experiment/k8s.yaml +++ b/blog_experiment/k8s.yaml @@ -27,6 +27,8 @@ items: - python - -m - blog + - https + - blog.pdp7.net image: quay.io/alexpdp7/blog:latest imagePullPolicy: Always name: blog -- 2.47.3