parent
36dd6b5eff
commit
c315ebe319
@ -19,6 +19,8 @@
|
|||||||
- Search for subcommands in descending order of how many components there are ([#108](https://git.autonomic.zone/coop-cloud/abra/issues/108))
|
- Search for subcommands in descending order of how many components there are ([#108](https://git.autonomic.zone/coop-cloud/abra/issues/108))
|
||||||
- Add specific app version checking command (`abra app <app> version`) ([#108](https://git.autonomic.zone/coop-cloud/abra/issues/108))
|
- Add specific app version checking command (`abra app <app> version`) ([#108](https://git.autonomic.zone/coop-cloud/abra/issues/108))
|
||||||
- Add docker version check (guestimating < v20 is a bad idea) ([#15](https://git.autonomic.zone/coop-cloud/abra/issues/15))
|
- Add docker version check (guestimating < v20 is a bad idea) ([#15](https://git.autonomic.zone/coop-cloud/abra/issues/15))
|
||||||
|
- Fix git branch handling when not passing `-b <branch>` ([#122](https://git.autonomic.zone/coop-cloud/abra/issues/122))
|
||||||
|
- Add work-around to correctly git clone non-master default branch app repositories ([#122](https://git.autonomic.zone/coop-cloud/abra/issues/122))
|
||||||
|
|
||||||
# abra 0.6.0 (2021-03-17)
|
# abra 0.6.0 (2021-03-17)
|
||||||
|
|
||||||
|
63
abra
63
abra
@ -429,19 +429,63 @@ require_consent_for_update() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
require_plugin (){
|
||||||
|
PLUGIN="$1"
|
||||||
|
|
||||||
|
BRANCH="${abra___branch:-master}"
|
||||||
|
|
||||||
|
warning "The $PLUGIN plugin was not found, fetching via Git"
|
||||||
|
|
||||||
|
if [[ "$BRANCH" != "master" ]]; then
|
||||||
|
git_extra_args="--branch $BRANCH"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
if ! git clone ${git_extra_args:-} "$GIT_URL/$APP.git" "$ABRA_DIR/apps/$APP" > /dev/null 2>&1 ; then
|
||||||
|
error "Could not retrieve the $PLUGIN plugin, does it exist?"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $(cd "$ABRA_DIR/apps/$APP" && git branch --list | wc -l) == "0" ]]; then
|
||||||
|
debug "Failed to clone default branch, guessing alternative is 'main'"
|
||||||
|
(cd "$ABRA_DIR/apps/$APP" && git checkout main > /dev/null 2>&1)
|
||||||
|
fi
|
||||||
|
|
||||||
|
success "Fetched the $PLUGIN plugin via Git"
|
||||||
|
}
|
||||||
|
|
||||||
|
require_app (){
|
||||||
|
APP="$1"
|
||||||
|
APP_DIR="$ABRA_DIR/apps/$APP"
|
||||||
|
|
||||||
|
BRANCH="${abra___branch:-master}"
|
||||||
|
|
||||||
|
warning "The app type '$APP' was not found, fetching via Git"
|
||||||
|
|
||||||
|
if [[ "$BRANCH" != "master" ]]; then
|
||||||
|
git_extra_args="--branch $BRANCH"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
if ! git clone ${git_extra_args:-} "$GIT_URL/$APP.git" "$ABRA_DIR/apps/$APP" > /dev/null 2>&1 ; then
|
||||||
|
error "Could not retrieve app type '$APP', this app type doesn't exist?"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $(cd "$ABRA_DIR/apps/$APP" && git branch --list | wc -l) == "0" ]]; then
|
||||||
|
debug "Failed to clone default branch, guessing alternative is 'main'"
|
||||||
|
(cd "$ABRA_DIR/apps/$APP" && git checkout main > /dev/null 2>&1)
|
||||||
|
fi
|
||||||
|
|
||||||
|
success "Fetched app configuration via Git"
|
||||||
|
}
|
||||||
|
|
||||||
require_app_latest() {
|
require_app_latest() {
|
||||||
APP="$1"
|
APP="$1"
|
||||||
APP_DIR="$ABRA_DIR/apps/$APP"
|
APP_DIR="$ABRA_DIR/apps/$APP"
|
||||||
BRANCH="${abra___branch:-master}"
|
|
||||||
|
|
||||||
debug "Checking for type '$APP'"
|
debug "Checking for type '$APP'"
|
||||||
|
|
||||||
if [ ! -d "$APP_DIR" ]; then
|
if [ ! -d "$APP_DIR" ]; then
|
||||||
warning "The app type '$APP' was not found, fetching via Git"
|
require_app "$APP"
|
||||||
if ! git clone --branch "$BRANCH" "$GIT_URL/$APP.git" "$ABRA_DIR/apps/$APP" > /dev/null 2>&1 ; then
|
|
||||||
error "Could not retrieve app type '$APP', this app type doesn't exist?"
|
|
||||||
fi
|
|
||||||
success "Fetched app configuration via Git (branch: $BRANCH)"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
debug "Using $APP_DIR"
|
debug "Using $APP_DIR"
|
||||||
@ -1712,18 +1756,13 @@ sub_server_new() {
|
|||||||
require_abra_dir
|
require_abra_dir
|
||||||
|
|
||||||
PROVIDER="$abra__provider_"
|
PROVIDER="$abra__provider_"
|
||||||
BRANCH="${abra___branch:-master}"
|
|
||||||
|
|
||||||
if [ "$PROVIDER" != "hetzner" ]; then
|
if [ "$PROVIDER" != "hetzner" ]; then
|
||||||
error "Unknown provider plugin 'abra-${PROVIDER}'"
|
error "Unknown provider plugin 'abra-${PROVIDER}'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -d "$ABRA_DIR/plugins/abra-$PROVIDER" ]; then
|
if [ ! -d "$ABRA_DIR/plugins/abra-$PROVIDER" ]; then
|
||||||
warning "The 'abra-$PROVIDER' plugin was not found, fetching via Git"
|
require_plugin "abra-$PROVIDER"
|
||||||
if ! git clone --branch "$BRANCH" "$GIT_URL/abra-$PROVIDER.git" "$ABRA_DIR/plugins/abra-$PROVIDER" > /dev/null 2>&1 ; then
|
|
||||||
error "Could not retrieve the abra-$PROVIDER plugin, does it exist?"
|
|
||||||
fi
|
|
||||||
success "Fetched abra-$PROVIDER plugin via Git (branch: $BRANCH)"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# shellcheck disable=SC1090
|
# shellcheck disable=SC1090
|
||||||
|
Reference in New Issue
Block a user