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