summaryrefslogtreecommitdiffstats
path: root/src/pybind/mgr/dashboard/ci/cephadm/bootstrap-cluster.sh
diff options
context:
space:
mode:
Diffstat (limited to 'src/pybind/mgr/dashboard/ci/cephadm/bootstrap-cluster.sh')
-rwxr-xr-xsrc/pybind/mgr/dashboard/ci/cephadm/bootstrap-cluster.sh36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/pybind/mgr/dashboard/ci/cephadm/bootstrap-cluster.sh b/src/pybind/mgr/dashboard/ci/cephadm/bootstrap-cluster.sh
new file mode 100755
index 000000000..5a3fa4349
--- /dev/null
+++ b/src/pybind/mgr/dashboard/ci/cephadm/bootstrap-cluster.sh
@@ -0,0 +1,36 @@
+#!/usr/bin/env bash
+
+set -x
+
+export PATH=/root/bin:$PATH
+mkdir /root/bin
+
+cp /mnt/{{ ceph_dev_folder }}/src/cephadm/cephadm /root/bin/cephadm
+chmod +x /root/bin/cephadm
+mkdir -p /etc/ceph
+mon_ip=$(ifconfig eth0 | grep 'inet ' | awk '{ print $2}')
+
+bootstrap_extra_options='--allow-fqdn-hostname --dashboard-password-noupdate'
+
+# commenting the below lines. Uncomment it when any extra options are
+# needed for the bootstrap.
+# bootstrap_extra_options_not_expanded=''
+# {% if expanded_cluster is not defined %}
+# bootstrap_extra_options+=" ${bootstrap_extra_options_not_expanded}"
+# {% endif %}
+
+cephadm bootstrap --mon-ip $mon_ip --initial-dashboard-password {{ admin_password }} --shared_ceph_folder /mnt/{{ ceph_dev_folder }} ${bootstrap_extra_options}
+
+fsid=$(cat /etc/ceph/ceph.conf | grep fsid | awk '{ print $3}')
+cephadm_shell="cephadm shell --fsid ${fsid} -c /etc/ceph/ceph.conf -k /etc/ceph/ceph.client.admin.keyring"
+
+{% for number in range(1, nodes) %}
+ ssh-copy-id -f -i /etc/ceph/ceph.pub -o StrictHostKeyChecking=no root@{{ prefix }}-node-0{{ number }}
+ {% if expanded_cluster is defined %}
+ ${cephadm_shell} ceph orch host add {{ prefix }}-node-0{{ number }}
+ {% endif %}
+{% endfor %}
+
+{% if expanded_cluster is defined %}
+ ${cephadm_shell} ceph orch apply osd --all-available-devices
+{% endif %}