From 2d40350cad33e6e0cce32016c072e94f8fe25057 Mon Sep 17 00:00:00 2001 From: Richard Robert Reitz Date: Mon, 20 Oct 2025 17:13:52 +0200 Subject: [PATCH] chore(edgeplatform): using new delete -f feature from edge connect sdk cli --- action.yaml | 31 ++++++++----------------------- endpoint.sh | 21 ++++++++------------- 2 files changed, 16 insertions(+), 36 deletions(-) diff --git a/action.yaml b/action.yaml index 616d2b4..714a7f1 100644 --- a/action.yaml +++ b/action.yaml @@ -3,24 +3,13 @@ description: 'Deletes an Edge Connect application using the edge-connect-client' author: 'DevFW' inputs: - name: - description: 'The application name.' - required: true - appVersion: - description: 'The application version.' - required: true - org: - description: 'The organization name.' - required: true - region: - description: 'The region name.' - required: true - cloudletOrg: - description: 'The cloudlet organization name.' - required: true - cloudlet: - description: 'The cloudlet name.' + configFile: + description: 'Path to the Edge Connect configuration file.' required: true + dryRun: + description: 'Perform a dry run of the deletion.' + required: false + default: 'false' version: description: 'The version of the edge-connect-client to use.' required: false @@ -44,12 +33,8 @@ runs: ${{ github.action_path }}/endpoint.sh shell: bash env: - INPUT_NAME: ${{ inputs.name }} - INPUT_APPVERSION: ${{ inputs.appVersion }} - INPUT_ORG: ${{ inputs.org }} - INPUT_REGION: ${{ inputs.region }} - INPUT_CLOUDLET_ORG: ${{ inputs.cloudletOrg }} - INPUT_CLOUDLET: ${{ inputs.cloudlet }} + INPUT_CONFIG_FILE: ${{ inputs.configFile }} + INPUT_DRY_RUN: ${{ inputs.dryRun }} INPUT_VERSION: ${{ inputs.version }} EDGE_CONNECT_BASE_URL: ${{ inputs.baseUrl }} EDGE_CONNECT_USERNAME: ${{ inputs.username }} diff --git a/endpoint.sh b/endpoint.sh index 4cc78ba..344d5a9 100755 --- a/endpoint.sh +++ b/endpoint.sh @@ -18,22 +18,17 @@ main() { local cli_path="${temp_dir}/edge-connect-client" chmod +x "${cli_path}" - local -a args_instance_delete - args_instance_delete=("--name" "${INPUT_NAME}-${INPUT_APPVERSION}-instance" "--org" "${INPUT_ORG}" "--region" "${INPUT_REGION}" "--cloudlet-org" "${INPUT_CLOUDLET_ORG}" "--cloudlet" "${INPUT_CLOUDLET}") + local -a args + args=("--file" "${INPUT_CONFIG_FILE}") + + if [[ "${INPUT_DRY_RUN}" == "true" ]]; then + args+=("--dry-run") + fi - echo Executing: "${cli_path}" instance delete "${args_instance_delete[@]}" + echo Executing: "${cli_path}" delete --auto-approve "${args[@]}" # The CLI uses an interactive prompt, so we need to pipe "yes" to it. - # we ignore an error by ||true in case the instance does not exist, so that we still delete the app - "${cli_path}" instance delete "${args_instance_delete[@]}" || true - - local -a args_app_delete - args_app_delete=("--name" "${INPUT_NAME}" "--version" "${INPUT_APPVERSION}" "--org" "${INPUT_ORG}" "--region" "${INPUT_REGION}") - - echo Executing: "${cli_path}" app delete "${args_app_delete[@]}" - - # The CLI uses an interactive prompt, so we need to pipe "yes" to it. - "${cli_path}" app delete "${args_app_delete[@]}" + "${cli_path}" delete --auto-approve "${args[@]}" } main