summaryrefslogtreecommitdiff
path: root/playbook.bash
diff options
context:
space:
mode:
Diffstat (limited to 'playbook.bash')
-rw-r--r--playbook.bash33
1 files changed, 33 insertions, 0 deletions
diff --git a/playbook.bash b/playbook.bash
new file mode 100644
index 0000000..e2c0617
--- /dev/null
+++ b/playbook.bash
@@ -0,0 +1,33 @@
+#!/usr/bin/env bash
+
+playbook_add() {
+ local path
+
+ path="$(config "$BASHTARD_PLAYBOOK.path" "/var/www/$BASHTARD_PLAYBOOK")"
+
+ mkdir -p -- "$path"
+ git -C "$path" init
+ git -C "$path" remote add "$(config "$BASHTARD_PLAYBOOK.remote" "origin")" "$(config "$BASHTARD_PLAYBOOK.repository")"
+
+ playbook_sync
+}
+
+playbook_sync() {
+ local branch
+ local path
+ local remote
+
+ branch="$(config "$BASHTARD_PLAYBOOK.branch" "master")"
+ path="$(config "$BASHTARD_PLAYBOOK.path" "/var/www/$BASHTARD_PLAYBOOK")"
+ remote="$(config "$BASHTARD_PLAYBOOK.remote" "origin")"
+
+ git -C "$path" fetch "$remote" "$branch"
+ git -C "$path" reset --hard "$remote/$branch"
+
+ hugo -D # This will generate all the draft content
+ hugo # And this will generate the actual live blog, but won't remove the draft content
+}
+
+playbook_del() {
+ rm -fr -- "$(config "$BASHTARD_PLAYBOOK.path" "/var/www/$BASHTARD_PLAYBOOK")"
+}