|
2 | 2 | set -euo pipefail |
3 | 3 |
|
4 | 4 | ROLE="${1:-db}" |
| 5 | +PUBKEY="${2:-}" |
5 | 6 |
|
6 | 7 | echo "[jepsen] provisioning role=${ROLE}" |
7 | 8 | sudo apt-get update -y |
@@ -44,38 +45,20 @@ if [ "$ROLE" = "ctrl" ]; then |
44 | 45 | echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' | sudo tee /etc/profile.d/go.sh >/dev/null |
45 | 46 |
|
46 | 47 | if [ ! -f /home/vagrant/.ssh/id_rsa ]; then |
47 | | - cat <<'KEY' > /home/vagrant/.ssh/id_rsa |
48 | | ------BEGIN RSA PRIVATE KEY----- |
49 | | -MIIEogIBAAKCAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGYe7gHzI |
50 | | -w+niNltGEFHzD8+v1I2YJ6oXevct1YeS0o9HZyN1Q9qgCgzUFtdOKLv6IedplqoP |
51 | | -kcmF0aYet2PkEDo3MlTBckFXPITAMzF8dJSIFo9D8HfdOV0IAdx4O7PtixWKn5y2 |
52 | | -hMNG0zQPyUecp4pzC6kivAIhyfHilFR61RGL+GPXQ2MWZWFYbAGjyiYJnAmCP3NO |
53 | | -Td0jMZEnDkbUvxhMmBYSdETk1rRgm+R4LOzFUGaHqHDLKLX+FIPKcF96hrucXzcW |
54 | | -yLbIbEgE98OHlnVYCzRdK8jlqm8tehUc9c9WhQIBIwKCAQEA4iqWPJXtzZA68mKd |
55 | | -ELs4jJsdyky+ewdZeNds5tjcnHU5zUYE25K+ffJED9qUWICcLZDc81TGWjHyAqD1 |
56 | | -Bw7XpgUwFgeUJwUlzQurAv+/ySnxiwuaGJfhFM1CaQHzfXphgVml+fZUvnJUTvzf |
57 | | -TK2Lg6EdbUE9TarUlBf/xPfuEhMSlIE5keb/Zz3/LUlRg8yDqz5w+QWVJ4utnKnK |
58 | | -iqwZN0mwpwU7YSyJhlT4YV1F3n4YjLswM5wJs2oqm0jssQu/BT0tyEXNDYBLEF4A |
59 | | -sClaWuSJ2kjq7KhrrYXzagqhnSei9ODYFShJu8UWVec3Ihb5ZXlzO6vdNQ1J9Xsf |
60 | | -4m+2ywKBgQD6qFxx/Rv9CNN96l/4rb14HKirC2o/orApiHmHDsURs5rUKDx0f9iP |
61 | | -cXN7S1uePXuJRK/5hsubaOCx3Owd2u9gD6Oq0CsMkE4CUSiJcYrMANtx54cGH7Rk |
62 | | -EjFZxK8xAv1ldELEyxrFqkbE4BKd8QOt414qjvTGyAK+OLD3M2QdCQKBgQDtx8pN |
63 | | -CAxR7yhHbIWT1AH66+XWN8bXq7l3RO/ukeaci98JfkbkxURZhtxV/HHuvUhnPLdX |
64 | | -3TwygPBYZFNo4pzVEhzWoTtnEtrFueKxyc3+LjZpuo+mBlQ6ORtfgkr9gBVphXZG |
65 | | -YEzkCD3lVdl8L4cw9BVpKrJCs1c5taGjDgdInQKBgHm/fVvv96bJxc9x1tffXAcj |
66 | | -3OVdUN0UgXNCSaf/3A/phbeBQe9xS+3mpc4r6qvx+iy69mNBeNZ0xOitIjpjBo2+ |
67 | | -dBEjSBwLk5q5tJqHmy/jKMJL4n9ROlx93XS+njxgibTvU6Fp9w+NOFD/HvxB3Tcz |
68 | | -6+jJF85D5BNAG3DBMKBjAoGBAOAxZvgsKN+JuENXsST7F89Tck2iTcQIT8g5rwWC |
69 | | -P9Vt74yboe2kDT531w8+egz7nAmRBKNM751U/95P9t88EDacDI/Z2OwnuFQHCPDF |
70 | | -llYOUI+SpLJ6/vURRbHSnnn8a/XG+nzedGH5JGqEJNQsz+xT2axM0/W/CRknmGaJ |
71 | | -kda/AoGANWrLCz708y7VYgAtW2Uf1DPOIYMdvo6fxIB5i9ZfISgcJ/bbCUkFrhoH |
72 | | -+vq/5CIWxCPp0f85R4qxxQ5ihxJ0YDQT9Jpx4TMss4PSavPaBH3RXow5Ohe+bYoQ |
73 | | -NE5OgEXk2wVfZczCZpigBKbKZHNYcelXtTt/nP3rsCuGcM4h53s= |
74 | | ------END RSA PRIVATE KEY----- |
75 | | -KEY |
| 48 | + if [ -f /home/vagrant/elastickv/jepsen/.ssh/ctrl_id_rsa ]; then |
| 49 | + cp /home/vagrant/elastickv/jepsen/.ssh/ctrl_id_rsa /home/vagrant/.ssh/id_rsa |
| 50 | + else |
| 51 | + if ! command -v ssh-keygen >/dev/null 2>&1; then |
| 52 | + sudo apt-get install -y --no-install-recommends openssh-client |
| 53 | + fi |
| 54 | + ssh-keygen -t rsa -b 2048 -N "" -f /home/vagrant/.ssh/id_rsa |
| 55 | + fi |
76 | 56 | chmod 600 /home/vagrant/.ssh/id_rsa |
77 | 57 | chown vagrant:vagrant /home/vagrant/.ssh/id_rsa |
78 | 58 | fi |
| 59 | + if [ -z "${PUBKEY}" ] && [ -f /home/vagrant/.ssh/id_rsa.pub ]; then |
| 60 | + PUBKEY="$(cat /home/vagrant/.ssh/id_rsa.pub)" |
| 61 | + fi |
79 | 62 | cat <<'EOF' > /home/vagrant/.ssh/config |
80 | 63 | Host n1 n2 n3 n4 n5 |
81 | 64 | User vagrant |
|
87 | 70 | chown vagrant:vagrant /home/vagrant/.ssh/config |
88 | 71 | fi |
89 | 72 |
|
90 | | -# authorize the same key on all nodes |
91 | | -cat <<'PUB' >> /home/vagrant/.ssh/authorized_keys |
92 | | -ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDo0XyJqWW9BWnbZYOROSyu2+n15ZbrgPGFa/pM+E4xmHu4B8yMPp4jbWRhR8w/Pr9SNmCeqF3r3LdWHktKPR2cjduPaoAoM1BbXTii7+iHnaZaqD5HJhXQhr3Y+QQOjcYVMFyQU8hMAzMF8dJSIFo9D8HfdOV0IAdx4O7PtixWKn5y2hMNG0zQPyUecp4pzC6kivAIhyfHilFR61RGL+GPXQ2MWZWFYbAGjyiYJnAmCP3NOTd0jMZEnDkbUvxhMmBYSdETk1rRgm+R4LOzFUGaHqHDLKLX+FIPKcF96hrucXzcWyLbIbEgE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ== vagrant insecure public key |
93 | | -PUB |
| 73 | +touch /home/vagrant/.ssh/authorized_keys |
| 74 | +if [ -n "${PUBKEY}" ]; then |
| 75 | + if ! grep -Fq "${PUBKEY}" /home/vagrant/.ssh/authorized_keys; then |
| 76 | + echo "${PUBKEY}" >> /home/vagrant/.ssh/authorized_keys |
| 77 | + fi |
| 78 | +fi |
94 | 79 | chown vagrant:vagrant /home/vagrant/.ssh/authorized_keys |
95 | 80 | chmod 600 /home/vagrant/.ssh/authorized_keys |
96 | 81 |
|
|
0 commit comments