diff --git a/app/__init__.py b/app/__init__.py index 344d23a..6137da8 100644 --- a/app/__init__.py +++ b/app/__init__.py @@ -5,15 +5,13 @@ import markdown import os from dotenv import load_dotenv -vault_path = os.getenv("VAULT_PATH", "/vault") # Optional default value - app = Flask(__name__) -PRIVATE_VAULR_DIR = Path("/content") -PUBLIC_VAULT_DIR = "/vault" +PRIVATE_VAULT_DIR = Path("/vault") +PUBLIC_VAULT_DIR = "/content" -build.obsidian_vault(VAULT_DIR) # initialize the private obsidian repo -build.public_vault(VAULT_DIR) # initialize the public notes from the private repo +build.obsidian_vault(PRIVATE_VAULT_DIR) # initialize the private obsidian repo +build.public_vault(PUBLIC_VAULT_DIR) # initialize the public notes from the private repo @app.route("/") def index(): @@ -25,4 +23,4 @@ def index(): @app.route ("/") # renders a filename if not otherwise specified def render_post(filename): - return build.html_file(filename, CONTENT_DIR) + return build.html_file(filename, PUBLIC_VAULT_DIR) diff --git a/app/build.py b/app/build.py index fd2ad7e..51c77b7 100644 --- a/app/build.py +++ b/app/build.py @@ -26,7 +26,9 @@ def obsidian_vault(dest = "/vault"): # makes sure there is a vault in dest print ("token not found, cant build vault") raise NameError("tokenNotFound") return 0 - url = f"https://{token}@{url}" + + url = f"https://{token}@{url}" + if os.path.exists(os.path.join(dest, '.git')): #TODO handle merge conflictsjjj print (f"pulling vault from {url} in {dest}") @@ -52,7 +54,8 @@ def public_notes(src: str): # return a list of notes tagged with public from an # return a list of notes return vault.get_notes_with_tag("public") -def public_vault(dest: str): # build the public vault in dest from an obsidian repo in src + +def public_vault(dest: str, src: str = "/content"): # build the public vault in dest from an obsidian repo in src for note in public_notes(src): print(note.title) shutil.copy2(f"{note.path}", dest) diff --git a/compose.yml b/compose.yml index e4935e2..1ea83f5 100755 --- a/compose.yml +++ b/compose.yml @@ -9,5 +9,5 @@ services: ports: - '80:80' volumes: - - ./content:/content - - ./public-vault:/vault + - ./content:/content #public + - ./public-vault:/vault #private