Support armada-go image for bootstrap purposes

Signed-off-by: Ruslan Aliev <raliev@mirantis.com>
Change-Id: I6d8629a48c1b862db937ddc3cd68792220388b19
This commit is contained in:
Ruslan Aliev 2024-01-07 19:33:33 -06:00
parent 2dda3c505c
commit 12247afb8f
2 changed files with 29 additions and 11 deletions

View File

@ -21,6 +21,11 @@ spec:
- |-
set -x
if [ ! -e "${ARMADA_LOGFILE}" ]; then
touch "${ARMADA_LOGFILE}"
fi
tail -f "${ARMADA_LOGFILE}" &
declare -i attempt=1
while true; do
@ -28,9 +33,6 @@ spec:
if armada \
apply \
--target-manifest {{ config.get_path('Genesis:armada.target_manifest', 'cluster-bootstrap') }} \
{%- if config['Genesis:enable_operator'] is sameas true %}
--enable-operator \
{%- endif %}
$([[ $attempt -le $ARMADA_METRICS_MAX_ATTEMPTS ]] && echo --metrics-output "${ARMADA_METRICS_OUTPUT_DIR}/armada-bootstrap-${attempt}.prom") \
/etc/genesis/armada/assets/manifest.yaml &>> "${ARMADA_LOGFILE}"; then
break
@ -72,14 +74,25 @@ spec:
- name: metrics
mountPath: /tmp/metrics
{%- if config['Genesis:enable_operator'] is sameas true %}
- args:
- --health-probe-bind-address=:8081
- --metrics-bind-address=127.0.0.1:8080
- --leader-elect
- --leader-elect-namespace=ucp
command:
- /manager
- command:
- /bin/sh
- -c
- |-
set -x
if [ ! -e "${ARMADA_OPERATOR_LOGFILE}" ]; then
touch "${ARMADA_OPERATOR_LOGFILE}"
fi
tail -f "${ARMADA_OPERATOR_LOGFILE}" &
/manager \
--health-probe-bind-address=:8081 \
--metrics-bind-address=127.0.0.1:8080 \
--leader-elect \
--leader-elect-namespace=ucp 2>&1 | tee -a "${ARMADA_OPERATOR_LOGFILE}"
env:
- name: ARMADA_OPERATOR_LOGFILE
value: /tmp/log/bootstrap-armada-operator.log
- name: KUBECONFIG
value: /root/.kube/config
image: {{ config['Genesis:images.armada-operator'] }}
@ -101,6 +114,8 @@ spec:
volumeMounts:
- name: auth
mountPath: /root/.kube
- name: log
mountPath: /tmp/log
{%- endif %}
- name: monitor
image: {{ config['HostSystem:images.monitoring_image'] }}

View File

@ -7,6 +7,8 @@
mkdir -p /var/log/armada
touch /var/log/armada/bootstrap-armada.log
chmod 777 /var/log/armada/bootstrap-armada.log
touch /var/log/armada/bootstrap-armada-operator.log
chmod 777 /var/log/armada/bootstrap-armada-operator.log
{% set metrics_output_dir = config.get_path('Genesis:armada.metrics.output_dir', '/var/log/node-exporter-textfiles') %}
install -d -m 755 {{ metrics_output_dir }}
@ -33,10 +35,11 @@ log
log === Deploying bootstrap manifest via Armada ===
set -x
while [[ ! -e /var/log/armada/bootstrap-armada.log ]]; do
while [[ ! -e /var/log/armada/bootstrap-armada.log || ! -e /var/log/armada/bootstrap-armada-operator.log ]]; do
sleep 5
done
tail -f /var/log/armada/bootstrap-armada.log &
tail -f /var/log/armada/bootstrap-armada-operator.log &
set +x
while true; do