From ccb209d4da696b45dd7120fdd3e1e6e20ce69dab Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 16 Jan 2026 08:57:59 +0000 Subject: [PATCH 1/2] Initial plan From 030ebf5c9b7854e1e05ba8784d8a9725f19e90f5 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 16 Jan 2026 08:59:51 +0000 Subject: [PATCH 2/2] IONOS(build): refactor JFrog properties to use array-based construction Co-authored-by: printminion-co <145785698+printminion-co@users.noreply.github.com> --- .github/workflows/build-artifact.yml | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/.github/workflows/build-artifact.yml b/.github/workflows/build-artifact.yml index 0fbbbb406b378..d415547ad11a0 100644 --- a/.github/workflows/build-artifact.yml +++ b/.github/workflows/build-artifact.yml @@ -358,15 +358,18 @@ jobs: JFROG_PATH="${{ env.ARTIFACTORY_REPOSITORY_SNAPSHOT }}/apps/${{ env.CACHE_VERSION }}/${APP_NAME}/${ARCHIVE_NAME}" # Build properties for artifact metadata - JFROG_PROPS="app.name=${APP_NAME}" - JFROG_PROPS="${JFROG_PROPS};app.sha=${APP_SHA}" - JFROG_PROPS="${JFROG_PROPS};vcs.branch=${{ github.ref_name }}" - JFROG_PROPS="${JFROG_PROPS};vcs.revision=${{ github.sha }}" + JFROG_PROPS_LIST=() + JFROG_PROPS_LIST+=("app.name=${APP_NAME}") + JFROG_PROPS_LIST+=("app.sha=${APP_SHA}") + JFROG_PROPS_LIST+=("vcs.branch=${{ github.ref_name }}") + JFROG_PROPS_LIST+=("vcs.revision=${{ github.sha }}") # Add job URL if available JOB_URL="${{ steps.get_job_data.outputs.job_html_url }}" if [ -n "$JOB_URL" ]; then - JFROG_PROPS="${JFROG_PROPS};job.html_url=$JOB_URL" + JFROG_PROPS_LIST+=("job.html_url=$JOB_URL") fi + # Join properties into a single semicolon-separated string + JFROG_PROPS=$(IFS=';'; printf '%s' "${JFROG_PROPS_LIST[*]}") echo "" echo "Uploading to JFrog..." @@ -741,14 +744,17 @@ jobs: export PATH_TO_LATEST_ARTIFACT="${PATH_TO_DIRECTORY}/${PATH_TO_FILE}" # Build properties for artifact metadata - JFROG_PROPS="build.nc_version=${{ needs.build-artifact.outputs.NC_VERSION }}" - JFROG_PROPS="${JFROG_PROPS};vcs.branch=${{ github.ref_name }}" - JFROG_PROPS="${JFROG_PROPS};vcs.revision=${{ github.sha }}" + JFROG_PROPS_LIST=() + JFROG_PROPS_LIST+=("build.nc_version=${{ needs.build-artifact.outputs.NC_VERSION }}") + JFROG_PROPS_LIST+=("vcs.branch=${{ github.ref_name }}") + JFROG_PROPS_LIST+=("vcs.revision=${{ github.sha }}") # Add job URL if available JOB_URL="${{ steps.get_job_data.outputs.job_html_url }}" if [ -n "$JOB_URL" ]; then - JFROG_PROPS="${JFROG_PROPS};job.html_url=$JOB_URL" + JFROG_PROPS_LIST+=("job.html_url=$JOB_URL") fi + # Join properties into a single semicolon-separated string + JFROG_PROPS=$(IFS=';'; printf '%s' "${JFROG_PROPS_LIST[*]}") # Upload with retry logic (3 attempts with 30s delay) MAX_ATTEMPTS=3