44
.github/workflows/_helm-e2e.yml
vendored
44
.github/workflows/_helm-e2e.yml
vendored
@@ -131,32 +131,32 @@ jobs:
|
|||||||
ref: ${{ steps.get-checkout-ref.outputs.CHECKOUT_REF }}
|
ref: ${{ steps.get-checkout-ref.outputs.CHECKOUT_REF }}
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
- name: Validate Inputs
|
|
||||||
run: |
|
|
||||||
cd ${{ github.workspace }}
|
|
||||||
folders=($(find . -maxdepth 1 -type d ! -name ".*" -printf "%f\n" | tr '[:upper:]' '[:lower:]'))
|
|
||||||
echo "folders: ${folders[@]}"
|
|
||||||
echo "example: ${{ inputs.example }}"
|
|
||||||
example_lower=$(echo "${{ inputs.example }}" | tr '[:upper:]' '[:lower:]')
|
|
||||||
if [[ ! " ${folders[@]} " =~ " ${example_lower} " ]]; then
|
|
||||||
echo "Error: Input '${example_lower}' is not in the list of folders."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
- name: Set variables
|
- name: Set variables
|
||||||
env:
|
env:
|
||||||
example: ${{ inputs.example }}
|
example: ${{ inputs.example }}
|
||||||
run: |
|
run: |
|
||||||
CHART_NAME="${example,,}" # CodeGen
|
if [[ ! "$example" =~ ^[a-zA-Z]{1,20}$ ]] || [[ "$example" =~ \.\. ]] || [[ "$example" == -* || "$example" == *- ]]; then
|
||||||
echo "CHART_NAME=$CHART_NAME" >> $GITHUB_ENV
|
echo "Error: Invalid input - only lowercase alphanumeric and internal hyphens allowed"
|
||||||
echo "RELEASE_NAME=${CHART_NAME}$(date +%Y%m%d%H%M%S)" >> $GITHUB_ENV
|
exit 1
|
||||||
echo "NAMESPACE=${CHART_NAME}-$(head -c 4 /dev/urandom | xxd -p)" >> $GITHUB_ENV
|
fi
|
||||||
echo "ROLLOUT_TIMEOUT_SECONDS=600s" >> $GITHUB_ENV
|
# SAFE_PREFIX="kb-"
|
||||||
echo "TEST_TIMEOUT_SECONDS=600s" >> $GITHUB_ENV
|
CHART_NAME="${SAFE_PREFIX}$(echo "$example" | tr '[:upper:]' '[:lower:]')"
|
||||||
echo "KUBECTL_TIMEOUT_SECONDS=60s" >> $GITHUB_ENV
|
RAND_SUFFIX=$(openssl rand -hex 2 | tr -dc 'a-f0-9')
|
||||||
echo "should_cleanup=false" >> $GITHUB_ENV
|
|
||||||
echo "skip_validate=false" >> $GITHUB_ENV
|
cat <<EOF >> $GITHUB_ENV
|
||||||
echo "CHART_FOLDER=${example}/kubernetes/helm" >> $GITHUB_ENV
|
CHART_NAME=${CHART_NAME}
|
||||||
|
RELEASE_NAME=${CHART_NAME}-$(date +%s)
|
||||||
|
NAMESPACE=ns-${CHART_NAME}-${RAND_SUFFIX}
|
||||||
|
ROLLOUT_TIMEOUT_SECONDS=600s
|
||||||
|
TEST_TIMEOUT_SECONDS=600s
|
||||||
|
KUBECTL_TIMEOUT_SECONDS=60s
|
||||||
|
should_cleanup=false
|
||||||
|
skip_validate=false
|
||||||
|
CHART_FOLDER=${example}/kubernetes/helm
|
||||||
|
EOF
|
||||||
|
|
||||||
|
echo "Generated safe variables:" >> $GITHUB_STEP_SUMMARY
|
||||||
|
echo "- CHART_NAME: ${CHART_NAME}" >> $GITHUB_STEP_SUMMARY
|
||||||
|
|
||||||
- name: Helm install
|
- name: Helm install
|
||||||
id: install
|
id: install
|
||||||
|
|||||||
Reference in New Issue
Block a user