about summary refs log tree commit diff
path: root/configs/shared/.gnupg/export.sh
diff options
context:
space:
mode:
Diffstat (limited to 'configs/shared/.gnupg/export.sh')
-rwxr-xr-xconfigs/shared/.gnupg/export.sh21
1 files changed, 21 insertions, 0 deletions
diff --git a/configs/shared/.gnupg/export.sh b/configs/shared/.gnupg/export.sh
new file mode 100755
index 000000000000..571689773b0e
--- /dev/null
+++ b/configs/shared/.gnupg/export.sh
@@ -0,0 +1,21 @@
+#!/usr/bin/env bash
+
+set -e
+
+# Run this script to export all the information required to transport your GPG
+# information.
+# Usage: ./export.sh [directory]
+# TODO: run this periodically as a job.
+
+destination="${1:-$(mktemp -d)}"
+
+if [ ! -d "$destination" ]; then
+  echo "$destination does not exist. Creating it..."
+  mkdir -p "$destination"
+fi
+
+gpg --armor --export >"$destination/public.asc"
+gpg --armor --export-secret-keys >"$destination/secret.asc"
+gpg --armor --export-ownertrust >"$destination/ownertrust.txt"
+
+echo $(realpath "$destination")