on-http-y1
Version:
OnRack Http Server
36 lines (34 loc) • 1.06 kB
YAML
#cloud-config
write_files:
- path: /etc/rc.local
permissions: "0755"
owner: root
content: |
#!/bin/bash
modprobe ipmi_devintf
wget -O /tmp/micro.tar.xz <%= file.server %>/common/discovery.docker.tar.xz
while [ $(docker images | grep -c micro) == "0" ]; do
xz -cd /tmp/micro.tar.xz | docker load
done
docker run -it -d \
-e SERVER='<%= server %>' \
-e PORT='<%= port %>' \
-e MAC='<%= macaddress %>' \
--privileged --net=host -v=/dev:/dev rackhd/micro
mapfile -t containerlist < <(docker ps)
container=(${containerlist[1]//$'\n'/ })
docker wait $container
case $? in
1 )
echo 1 | sudo tee /proc/sys/kernel/sysrq
echo b | sudo tee /proc/sysrq-trigger
;;
2 )
ipmitool -I open chassis power cycle ;;
127 )
exit 0 ;;
* )
echo 1 | sudo tee /proc/sys/kernel/sysrq
echo b | sudo tee /proc/sysrq-trigger
;;
esac