24 lines
835 B
Bash
Executable File
24 lines
835 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Generates the SSH keypair (controller -> agents) and the Jenkins admin
|
|
# password consumed by docker-compose.yml as Docker secrets. Safe to re-run;
|
|
# it skips anything that already exists.
|
|
set -euo pipefail
|
|
cd "$(dirname "$0")/.."
|
|
|
|
mkdir -p secrets
|
|
|
|
if [ ! -f secrets/agent_ssh_key ]; then
|
|
ssh-keygen -t ed25519 -f secrets/agent_ssh_key -N "" -C "jenkins-agent"
|
|
echo "Generated secrets/agent_ssh_key(.pub)"
|
|
else
|
|
echo "secrets/agent_ssh_key already exists, skipping"
|
|
fi
|
|
|
|
if [ ! -f secrets/jenkins_admin_password.txt ]; then
|
|
openssl rand -base64 18 > secrets/jenkins_admin_password.txt
|
|
echo "Generated Jenkins admin password (saved to secrets/jenkins_admin_password.txt):"
|
|
cat secrets/jenkins_admin_password.txt
|
|
else
|
|
echo "secrets/jenkins_admin_password.txt already exists, skipping"
|
|
fi
|