Hi looking for some help in explaining what this line is doing. I am completely lost in what it is saying. I know it is exiting there because I can see my log line 25 but NOT log line 27.
[[ `hostname` =~ -([0-9] )$ ]] || exit 1
initContainers:
- name: init-mysql
image: mysql:5.7
command:
- bash
- "-c"
- |
set -ex
# Generate mysql server-id from pod ordinal index.
echo "Running line25" >> /var/lib/mysql/temp.log
[[ `hostname` =~ -([0-9] )$ ]] || exit 1
echo "Running line27" >> /var/lib/mysql/temp.log
CodePudding user response:
It runs the hostname command, and then compares its output to the regular expression -([0-9] )$. The parentheses are redundant, so it could be simplified to -[0-9] $; this is "a string that ends with - and 1 or more digits".
If the output of hostname doesn't match the expression, exit 1 is called. You can look at the output of hostname separately to see its value.
