workflow updated for new approach
This commit is contained in:
parent
91bd287664
commit
5ce090e45e
@ -23,7 +23,7 @@ spec:
|
||||
value: '{}'
|
||||
- name: manualDependencyUrls
|
||||
value: '{}'
|
||||
- name: helmParameterOverrides
|
||||
- name: valuesContentEdits
|
||||
value: '{}'
|
||||
- name: helmExternalParams
|
||||
value: '{}'
|
||||
@ -39,7 +39,7 @@ spec:
|
||||
- name: dependencyPreferences
|
||||
- name: valuesFileOverrides
|
||||
- name: manualDependencyUrls
|
||||
- name: helmParameterOverrides
|
||||
- name: valuesContentEdits
|
||||
- name: helmExternalParams
|
||||
name: provision-environment
|
||||
steps:
|
||||
@ -61,8 +61,8 @@ spec:
|
||||
value: '{{inputs.parameters.valuesFileOverrides}}'
|
||||
- name: manualDependencyUrls
|
||||
value: '{{inputs.parameters.manualDependencyUrls}}'
|
||||
- name: helmParameterOverrides
|
||||
value: '{{inputs.parameters.helmParameterOverrides}}'
|
||||
- name: valuesContentEdits
|
||||
value: '{{inputs.parameters.valuesContentEdits}}'
|
||||
- name: helmExternalParams
|
||||
value: '{{inputs.parameters.helmExternalParams}}'
|
||||
name: create-git-repo
|
||||
@ -93,7 +93,7 @@ spec:
|
||||
- name: dependencyPreferences
|
||||
- name: valuesFileOverrides
|
||||
- name: manualDependencyUrls
|
||||
- name: helmParameterOverrides
|
||||
- name: valuesContentEdits
|
||||
- name: helmExternalParams
|
||||
name: create-repo
|
||||
script:
|
||||
@ -129,7 +129,7 @@ spec:
|
||||
DEPENDENCY_PREFS='{{inputs.parameters.dependencyPreferences}}'
|
||||
VALUES_FILE_OVERRIDES='{{inputs.parameters.valuesFileOverrides}}'
|
||||
MANUAL_DEPENDENCY_URLS='{{inputs.parameters.manualDependencyUrls}}'
|
||||
HELM_PARAMETER_OVERRIDES='{{inputs.parameters.helmParameterOverrides}}'
|
||||
VALUES_CONTENT_EDITS='{{inputs.parameters.valuesContentEdits}}'
|
||||
HELM_EXTERNAL_PARAMS='{{inputs.parameters.helmExternalParams}}'
|
||||
|
||||
# Sanitize namespace name (replace spaces and special chars with hyphens)
|
||||
@ -309,27 +309,28 @@ spec:
|
||||
done
|
||||
fi
|
||||
|
||||
# Process custom Helm parameter overrides
|
||||
CUSTOM_HELM_PARAMS=""
|
||||
SERVICE_OVERRIDES=$(echo "$HELM_PARAMETER_OVERRIDES" | jq -r ".[\"$service\"] // {}")
|
||||
if [ "$SERVICE_OVERRIDES" != "{}" ] && [ -n "$SERVICE_OVERRIDES" ]; then
|
||||
echo " Processing custom Helm parameter overrides..."
|
||||
for param_key in $(echo "$SERVICE_OVERRIDES" | jq -r 'keys[]'); do
|
||||
PARAM_VALUE=$(echo "$SERVICE_OVERRIDES" | jq -r ".[\"$param_key\"]")
|
||||
echo " Setting $param_key = $PARAM_VALUE"
|
||||
# Use param_key directly - dots are Helm nested path separators, not literal chars
|
||||
CUSTOM_HELM_PARAMS="$CUSTOM_HELM_PARAMS
|
||||
- name: $param_key
|
||||
value: \"$PARAM_VALUE\""
|
||||
done
|
||||
# Check for edited values content - write to override file if exists
|
||||
INLINE_VALUES=""
|
||||
EDITED_CONTENT=$(echo "$VALUES_CONTENT_EDITS" | jq -r ".\"$service\" // empty")
|
||||
if [ -n "$EDITED_CONTENT" ] && [ "$EDITED_CONTENT" != "null" ]; then
|
||||
echo " Writing edited values content to override file..."
|
||||
# Write the edited content to a values override file
|
||||
VALUES_OVERRIDE_FILE="values-override-${SANITIZED_SERVICE}.yaml"
|
||||
echo "$EDITED_CONTENT" > "manifests/$VALUES_OVERRIDE_FILE"
|
||||
echo " Created: manifests/$VALUES_OVERRIDE_FILE"
|
||||
# Set inline values reference for ArgoCD
|
||||
INLINE_VALUES="
|
||||
values: |
|
||||
$(echo "$EDITED_CONTENT" | sed 's/^/ /')"
|
||||
fi
|
||||
|
||||
# Process external params for disabled Helm dependencies (e.g., external database config)
|
||||
SERVICE_EXTERNAL_PARAMS=$(echo "$HELM_EXTERNAL_PARAMS" | jq -r ".[\"$service\"] // {}")
|
||||
CUSTOM_HELM_PARAMS=""
|
||||
SERVICE_EXTERNAL_PARAMS=$(echo "$HELM_EXTERNAL_PARAMS" | jq -r ".\"$service\" // {}")
|
||||
if [ "$SERVICE_EXTERNAL_PARAMS" != "{}" ] && [ -n "$SERVICE_EXTERNAL_PARAMS" ]; then
|
||||
echo " Processing external params for disabled dependencies..."
|
||||
for param_key in $(echo "$SERVICE_EXTERNAL_PARAMS" | jq -r 'keys[]'); do
|
||||
PARAM_VALUE=$(echo "$SERVICE_EXTERNAL_PARAMS" | jq -r ".[\"$param_key\"]")
|
||||
PARAM_VALUE=$(echo "$SERVICE_EXTERNAL_PARAMS" | jq -r ".\"$param_key\"")
|
||||
if [ -n "$PARAM_VALUE" ]; then
|
||||
echo " Setting $param_key = $PARAM_VALUE"
|
||||
# Use param_key directly - dots are Helm nested path separators, not literal chars
|
||||
@ -360,7 +361,7 @@ spec:
|
||||
path: $HELM_PATH
|
||||
helm:
|
||||
valueFiles:
|
||||
- $HELM_VALUES
|
||||
- $HELM_VALUES$INLINE_VALUES
|
||||
parameters:
|
||||
- name: mysql.enabled
|
||||
value: "$MYSQL_ENABLED"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user