56 lines
1.9 KiB
Bash
Executable File
56 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
write_stack_version() {
|
|
STACK_VERSION=$(curl -X 'POST' 'http://127.0.0.1/api/application/getAppInfo' -H 'accept: application/json' | jq -r '.stack_version')
|
|
if [[ $? -ne 0 ]]; then
|
|
echo "Error: Failed to get stack version from the application"
|
|
exit 1
|
|
fi
|
|
echo "STACK_VERSION=${STACK_VERSION}" > last_ver.txt
|
|
}
|
|
|
|
export_stack_version() {
|
|
if [ $# -gt 0 ]; then
|
|
STACK_VERSION="$1"
|
|
else
|
|
STACK_VERSION=$(curl -X 'GET' 'https://api.callabacloud.com/getCallabaCloudVersion' --header "Content-Type: application/json" -d '{"version_name":"parrot"}' | jq -r '.[].version_number')
|
|
fi
|
|
if [[ $? -ne 0 ]]; then
|
|
echo "Error: Failed to get stack version from Callaba Cloud"
|
|
exit 1
|
|
fi
|
|
export STACK_VERSION
|
|
}
|
|
|
|
pull_images() {
|
|
sudo -E docker pull registry.callabacloud.com/callaba-selfhosted/cc-api-prod:${STACK_VERSION}-selfhosted
|
|
sudo -E docker pull registry.callabacloud.com/callaba-selfhosted/cc-front-prod:${STACK_VERSION}-selfhosted
|
|
sudo -E docker pull registry.callabacloud.com/callaba-selfhosted/cc-nginx-prod:${STACK_VERSION}-selfhosted
|
|
sudo -E docker pull registry.callabacloud.com/callaba-selfhosted/cc-mongo:${STACK_VERSION}-selfhosted
|
|
if [[ $? -ne 0 ]]; then
|
|
echo "Error: Failed to pull docker-compose image"
|
|
exit 1
|
|
fi
|
|
}
|
|
|
|
start_docker_compose() {
|
|
sudo -E docker-compose -f docker-compose.cc-full-run-linux.yml up -d
|
|
if [[ $? -ne 0 ]]; then
|
|
echo "Error: Failed to start docker-compose"
|
|
exit 1
|
|
else
|
|
echo " ######################################################################
|
|
###### Callaba Cloud has been upgraded to version $STACK_VERSION
|
|
######################################################################"
|
|
fi
|
|
}
|
|
|
|
main() {
|
|
write_stack_version
|
|
export_stack_version
|
|
pull_images
|
|
start_docker_compose
|
|
}
|
|
|
|
main
|