workflow updated for new approach

This commit is contained in:
Vaibhav Pathak 2026-01-19 11:49:06 +05:30
parent 91bd287664
commit 5ce090e45e

View File

@ -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"