summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohannes Löthberg <johannes@kyriasis.com>2015-04-16 10:40:36 +0200
committerJohannes Löthberg <johannes@kyriasis.com>2015-04-16 10:40:36 +0200
commit75d7bb2acc90eb1c6daec66dc7b73573c643ce57 (patch)
treed8ceac2c957d922065738a70d2b4d7c3e9df65b4
parent16636a29eb55dc5d958feacd2bb7a99cdc1bb884 (diff)
downloadwebsite-75d7bb2acc90eb1c6daec66dc7b73573c643ce57.tar.xz
Generate sitemap programatically
-rw-r--r--Makefile4
-rwxr-xr-xscripts/bupa8
-rw-r--r--src/templates/sitemap.xml (renamed from src/sitemap.xml)5
3 files changed, 13 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index d444268..0e3a90b 100644
--- a/Makefile
+++ b/Makefile
@@ -34,10 +34,6 @@ build/resources/%: src/resources/%
@install -m644 $< $@
@echo Copied $< → $@
-build/sitemap.xml: src/sitemap.xml
- @install -Dm644 $< $@
- @echo Copied $< → $@
-
build/pgp-key.txt: src/pgp-key.txt
@install -Dm644 $< $@
@echo Copied $< → $@
diff --git a/scripts/bupa b/scripts/bupa
index 1208263..e87ca4c 100755
--- a/scripts/bupa
+++ b/scripts/bupa
@@ -104,6 +104,8 @@ def build_journal(jinja_env):
with open('build/journal.atom', 'wb') as file:
file.write(atom_feed.to_string().encode('utf-8'))
+ make_sitemap(jinja_env, entries)
+
def build_page(jinja_env, template, pagename):
page = parse('src/'+pagename+'.rst')
page.body = reST_to_html(page.body)
@@ -116,6 +118,12 @@ def write_page(page, header, filename, template, jinja_env):
rendered_page = template.render(page=page, title=page.title, header=header)
file.write(rendered_page.encode('utf-8'))
+def make_sitemap(jinja_env, entries):
+ template = jinja_env.get_template('sitemap.xml')
+ with open('build/sitemap.xml', 'wb') as f:
+ rendered = template.render(entries=entries)
+ f.write(rendered.encode('utf-8'))
+
def main():
arguments = docopt.docopt(__doc__, version='bupa 0.0.1')
jinja_env = Environment(loader=FileSystemLoader('src/templates')) # something something jinja2 templates
diff --git a/src/sitemap.xml b/src/templates/sitemap.xml
index e35ec27..d3943e4 100644
--- a/src/sitemap.xml
+++ b/src/templates/sitemap.xml
@@ -12,4 +12,9 @@
<url>
<loc>https://theos.kyriasis.com/~kyrias/pgp-key.txt</loc>
</url>
+{% for entry in entries %}
+ <url>
+ <loc>https://theos.kyriasis.com/~kyrias/journal/{{ entry.page }}</loc>
+ </url>
+{% endfor %}
</urlset>