up.real 896 B

123456789101112131415161718192021222324252627282930313233343536
  1. #!/command/with-contenv sh
  2. if [ ! -d /data ] ; then
  3. mkdir /data
  4. fi
  5. # normal docker secrets
  6. if [ ! -f /data/id_ed25519.pub ] && [ -r /run/secrets/key_pub ] ; then
  7. cp /run/secrets/key_pub /data/id_ed25519.pub
  8. echo "Public key created from secret"
  9. fi
  10. if [ ! -f /data/id_ed25519 ] && [ -r /run/secrets/key_priv ] ; then
  11. cp /run/secrets/key_priv /data/id_ed25519
  12. echo "Private key created from secret"
  13. fi
  14. # ENV variables
  15. if [ ! -f /data/id_ed25519.pub ] && [ ! "$KEY_PUB" = "" ] ; then
  16. echo -n "$KEY_PUB" > /data/id_ed25519.pub
  17. echo "Public key created from ENV variable"
  18. fi
  19. if [ ! -f /data/id_ed25519 ] && [ ! "$KEY_PRIV" = "" ] ; then
  20. echo -n "$KEY_PRIV" > /data/id_ed25519
  21. echo "Private key created from ENV variable"
  22. fi
  23. # fix perms
  24. if [ -f /data/id_ed25519.pub ] ; then
  25. chmod 600 /data/id_ed25519.pub
  26. fi
  27. if [ -f /data/id_ed25519 ] ; then
  28. chmod 600 /data/id_ed25519
  29. fi