a217ce8ffd
The old version of "build-branches.sh" skipped the pushing of images when one of them didn't change its sources. When looking at the Netbox branches I noticed that the "master" branch only changes when there is a new release. Because we build the new releases anyway in "build-latest.sh" that leaves "develop" and "develop-*" which change regularly. The new script "build-next.sh" is responsible for building "develop-*" as the next major release of Netbox. The build of "develop" is moved to the Github Action build matrix. This has the additional advantage of being faster because more builds are done in parallel.
35 lines
1.1 KiB
Bash
Executable File
35 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
# Builds develop, develop-* and master branches of Netbox
|
|
|
|
echo "▶️ $0 $*"
|
|
|
|
###
|
|
# Checking for the presence of GITHUB_OAUTH_CLIENT_ID
|
|
# and GITHUB_OAUTH_CLIENT_SECRET
|
|
###
|
|
if [ -n "${GITHUB_OAUTH_CLIENT_ID}" ] && [ -n "${GITHUB_OAUTH_CLIENT_SECRET}" ]; then
|
|
echo "🗝 Performing authenticated Github API calls."
|
|
GITHUB_OAUTH_PARAMS="client_id=${GITHUB_OAUTH_CLIENT_ID}&client_secret=${GITHUB_OAUTH_CLIENT_SECRET}"
|
|
else
|
|
echo "🕶 Performing unauthenticated Github API calls. This might result in lower Github rate limits!"
|
|
GITHUB_OAUTH_PARAMS=""
|
|
fi
|
|
|
|
###
|
|
# Calling Github to get the all branches
|
|
###
|
|
ORIGINAL_GITHUB_REPO="${SRC_ORG-netbox-community}/${SRC_REPO-netbox}"
|
|
GITHUB_REPO="${GITHUB_REPO-$ORIGINAL_GITHUB_REPO}"
|
|
URL_RELEASES="https://api.github.com/repos/${GITHUB_REPO}/branches?${GITHUB_OAUTH_PARAMS}"
|
|
|
|
# Composing the JQ commans to extract the most recent version number
|
|
JQ_NEXT='map(.name) | .[] | scan("^[^v].+") | match("^(develop-).*") | .string'
|
|
|
|
CURL="curl -sS"
|
|
|
|
# Querying the Github API to fetch all branches
|
|
NEXT=$($CURL "${URL_RELEASES}" | jq -r "$JQ_NEXT")
|
|
|
|
# shellcheck disable=SC2068
|
|
./build.sh "${NEXT}" $@
|