#!/bin/bash ensure_jq() { if [ ! -x "$(command -v jq)" ]; then if [ -x "$(command -v apt-get)" ]; then echo "🛠🛠🛠 Installing 'jq' via 'apt-get'" apt-get update && apt-get install -y jq else echo "⚠️⚠️⚠️ apt-get not found, unable to automatically install 'jq'." fi fi } # Passes args to the scripts run_build() { echo "🐳🐳🐳 Building '${BUILD}' images" case ${BUILD} in release) # build the latest release # shellcheck disable=SC2068 ./build-latest.sh $@ ;; prerelease) # build the latest pre-release # shellcheck disable=SC2068 PRERELEASE=true ./build-latest.sh $@ ;; branches) # build all branches # shellcheck disable=SC2068 ./build-branches.sh $@ ;; this) # Pull Requests # only build the 'master' branch of netbox # (resulting in the 'latest' docker tag) # and the 'main' target. DOCKER_TARGET=main ./build.sh master ;; *) echo "🚨 Unrecognized build '$BUILD'." if [ -z "$DEBUG" ]; then exit 1 else echo "⚠️ Would exit here with code '1', but DEBUG is enabled." fi ;; esac } env_info() { echo "ℹ️ docker version" docker version echo "ℹ️ docker-compose version" docker-compose version echo "ℹ️ git version" git --version echo "ℹ️ curl version" curl --version echo "ℹ️ jq version" jq --version echo "ℹ️ bash version" bash --version echo "ℹ️ apt-get version" apt-get --version echo "ℹ️ date version" date --version echo "ℹ️ Netbox Docker VERSION" cat VERSION echo "ℹ️ Netbox Docker git ref" git rev-parse HEAD git rev-parse --abbrev-ref HEAD } echo "🤖🤖🤖 Preparing build" export DOCKER_ORG=netboxcommunity export DOCKER_REPO=netbox export DOCKER_REGISTRY=docker.io # shellcheck disable=SC2153 export BUILD="${DOCKER_TAG}" unset DOCKER_TAG ensure_jq echo "🤖🤖🤖 Build Environment Information" env_info