#!/bin/bash set -euo pipefail IFS=$'\n\t' : "${EXISTING_OPS_FILE:=SYNC_FILE_MERGE_LIST}" : "${EXISTING_WHITELIST_FILE:=SYNC_FILE_MERGE_LIST}" # shellcheck source=start-utils . "${SCRIPTS:-/}start-utils" isDebugging && set -x if [[ -v APPEND_OPS ]] && isTrue "${APPEND_OPS}"; then EXISTING_OPS_FILE=MERGE elif [[ -v OVERRIDE_OPS ]] && isTrue "${OVERRIDE_OPS}"; then EXISTING_OPS_FILE=SYNCHRONIZE fi if [[ -v APPEND_WHITELIST ]] && isTrue "${APPEND_WHITELIST}"; then EXISTING_WHITELIST_FILE=MERGE elif [[ -v OVERRIDE_WHITELIST ]] && isTrue "${OVERRIDE_WHITELIST}"; then EXISTING_WHITELIST_FILE=SYNCHRONIZE fi sharedArgs=(--version="$VERSION") if [[ ${FTB_DIR:-} ]]; then sharedArgs+=(--output-directory="$FTB_DIR") else sharedArgs+=(--output-directory=/data) fi if [[ -v OPS_FILE ]]; then existing="$EXISTING_OPS_FILE" if [[ "$EXISTING_OPS_FILE" = SYNC_FILE_MERGE_LIST ]]; then existing=SYNCHRONIZE fi mc-image-helper manage-users \ "${sharedArgs[@]}" \ --type=JAVA_OPS \ --input-is-file \ --existing="${existing}" \ "$OPS_FILE" fi if [[ -v OPS ]]; then args=() existing="$EXISTING_OPS_FILE" # Working with an OPS list, so normalize the value to a "non-file" mode if [[ "$EXISTING_OPS_FILE" = SYNC_FILE_MERGE_LIST ]]; then existing=MERGE fi # legacy option if [[ -v APPEND_OPS ]] && isTrue "${APPEND_OPS}"; then existing=MERGE fi # legacy option if [[ -v OVERRIDE_OPS ]] && isFalse "${OVERRIDE_OPS}"; then existing=SKIP fi # shellcheck disable=SC2086 mc-image-helper manage-users \ "${sharedArgs[@]}" "${args[@]}" \ --type=JAVA_OPS \ --existing="${existing}" \ $OPS fi if [[ -v WHITELIST_FILE ]]; then existing="$EXISTING_WHITELIST_FILE" if [[ "$EXISTING_WHITELIST_FILE" = SYNC_FILE_MERGE_LIST ]]; then existing=SYNCHRONIZE fi mc-image-helper manage-users \ "${sharedArgs[@]}" \ --type=JAVA_WHITELIST \ --input-is-file \ --existing="${existing}" \ "$WHITELIST_FILE" fi if [[ -v WHITELIST ]]; then args=() if isTrue "${APPEND_WHITELIST:-false}" || isFalse "${OVERRIDE_WHITELIST:-true}"; then args+=(--append-only) fi existing="$EXISTING_WHITELIST_FILE" if [[ "$EXISTING_WHITELIST_FILE" = SYNC_FILE_MERGE_LIST ]]; then existing=MERGE fi # shellcheck disable=SC2086 mc-image-helper manage-users \ "${sharedArgs[@]}" "${args[@]}" \ --type=JAVA_WHITELIST \ --existing="${existing}" \ $WHITELIST fi exec "${SCRIPTS:-/}start-finalExec" "$@"