diff --git a/custom_syadmin/git_hooks_post-receive.py b/custom_syadmin/git_hooks_post-receive.py index 17c0977..5b754c2 100644 --- a/custom_syadmin/git_hooks_post-receive.py +++ b/custom_syadmin/git_hooks_post-receive.py @@ -1,6 +1,6 @@ #! python """ -This is an alternative to `git_hooks_post-receive.sh` +This is an alternative to `git_hooks_post-receive.sh`. The post commit hook in Gitea would include something like the following to ensure this script is called. #!/bin/sh @@ -10,7 +10,7 @@ python "D:\dev\websites\sandpoints-dev\custom_syadmin\git_hooks_post-receive.py" --website "D:\dev\websites\testing-ground\sandpoints" \ --website_preview "D:\dev\websites\testing-ground\sandpoints\_preview" \ --library "D:\dev\websites\pirate-care-syllabus\_library" \ ---tmp_dir "D:\tmp\tmp" +--tmp_dir "D:\tmp\tmp" \ --oldrev $oldrev \ --newrev $newrev \ --ref $ref @@ -32,6 +32,9 @@ import subprocess import shutil import stat from datetime import datetime +import logging + +logging.basicConfig(level = logging.DEBUG, filename = "/tmp/git_hooks.log") # format for dates date_format = "%m/%d/%Y, %H:%M:%S" @@ -89,7 +92,7 @@ def rmrf(path, keep_dir=False): def remove_readonly(func, path, excinfo): os.chmod(path, stat.S_IWRITE) func(path) - # Try removal + # Try removal. if keep_dir and os.path.exists(path) and len(os.path.realpath(path)) > 1: for root, dirs, files in os.walk(path): for f in files: @@ -129,7 +132,8 @@ def build_site(dest, tmp, branch=None, hugo_environment='gitea'): print("Build destination exists: ", dest) except: print(f"Error creating the directory: {dest}") - lcl = f'{tmp}/last-commit-log.txt' + lcl = f'{tmp}/last-commit-log.html' + clobber(lcl, '
')
     # overriding hugo config for development environments 
     env = os.environ.copy()
     if BASE_URL:
@@ -137,10 +141,11 @@ def build_site(dest, tmp, branch=None, hugo_environment='gitea'):
     if  GIT_URL:
         env["HUGO_PARAMS_GITURL"] = GIT_URL
     # run the hugo command
-    hugo_output = cmd([HUGO_PATH, '-e', hugo_environment, '-d', dest], cwd=tmp, env=env)
-    clobber(lcl, hugo_output)
+    hugo_output = cmd([HUGO_PATH, '--templateMetrics', '-e', hugo_environment, '-d', dest], cwd=tmp, env=env)
+    clobber(lcl, hugo_output, append=True)
     now_time = datetime.now().strftime(date_format)
     clobber(lcl, f"\n{start_time}\n{now_time}", append=True)
+    clobber(lcl, f"
", append=True) shutil.move(lcl, dest) @@ -149,6 +154,7 @@ parser = argparse.ArgumentParser() for v in vars: parser.add_argument(f"--{v.lower()}") args = parser.parse_args() +logging.info(args) # Load all variables from command line arguments or environment variables for v in vars: @@ -186,5 +192,3 @@ build_site(WEBSITE_PREVIEW, TMP_WEBSITE_PREVIEW, branch=PREVIEW_BRANCH, hugo_env # Clean up temp directories rmrf(TMP_WEBSITE) rmrf(TMP_WEBSITE_PREVIEW) - -# @TODO: link the library \ No newline at end of file