Example scripts
Example scripts that you can use in your lifecycle scripts.
These example scripts may use software that is not be available on every operating system.
Track setup scripts
Wait for bootstrap
Wait for the Instruqt bootstrap process to complete.
#!/bin/bash
set -euxo pipefail
until [ -f /opt/instruqt/bootstrap/host-bootstrap-completed ]; do
echo "Waiting for instruqt bootstrap to complete" sleep 1
doneWait for service
Wait for a specific web service in your setup script to finish booting.
while ! curl --fail --output /dev/null https://<hostname>:<port>/<path>
do
sleep 1
doneCreate a file
Create a file using heredoc method.
cat > /file/to/create <<EOF
# Some configuration file
setting_one = true
another_setting = false
EOFDownload files
Download files to the local system.
git clone https://githost.com/repo <local_dir>Start background process
Start a process in the background so your script does not hang.
nohup ./myprogram > foo.out 2> foo.err < /dev/null & disownChallenge check scripts
File exists
Check if a file exists:
#!/bin/bash
set -euxo pipefail
if [ -f /home/user/file.txt ]; then
echo "The file at /home/user/file.txt exists"
fiFile doesn't exist
Check if a file doesn't exist (or is not a file):
#!/bin/bash
set -euxo pipefail
if [ ! -f /home/user/file.txt ]; then
fail-message "No file was found at /home/user/file.txt"
fiDirectory exists
Check if a directory exists:
#!/bin/bash
set -euxo pipefail
if [ -d /root/folder ]; then
echo "The directory at /root/folder exists"
fiDirectory doesn't exist
Use the following code in your life cycle script to check if a folder doesn't exist (or is not a directory)
#!/bin/bash
set -euxo pipefail
if [ ! -d /root/folder ]; then
fail-message "The folder at /root/folder doesn't exists"
fiFile contains certain text
Check if a file contains certain text.
#!/bin/bash
set -euxo pipefail
if ! grep "text to find" /path/to/file; then
fail-message "The file doesn't contain the required text"
fiSpecific command is installed
Check that a specific command is executable with the -x flag.
#!/bin/bash
set -euxo pipefail
if ! [[ -x /usr/local/bin/command ]]; then
fail-message "Oops, command was not found or is not executable."
fiService is running
Check if a service is running.
#!/bin/bash
if pgrep -x SERVICE >/dev/null; then
echo "The X service is running"
fiLast updated
Was this helpful?