@@ -187,12 +187,17 @@ jobs:
187187 node-version : 20.x
188188 - name : Install pnpm modules
189189 run : pnpm install --frozen-lockfile
190- - name : Replace placeholder with instrumentation key
190+ - name : Set instrumentation key in fiori-mcp-server
191191 uses : jacobtomlinson/gha-find-replace@v3
192192 with :
193- include : |
194- packages/fiori-mcp-server/src/telemetry/index.ts
195- packages/sap-systems-ext/src/utils/telemetryHelper.ts
193+ include : packages/fiori-mcp-server/src/telemetry/index.ts
194+ find : ' ApplicationInsightsInstrumentationKeyPLACEH0LDER'
195+ replace : ${{ secrets.INSTRUMENTATION_KEY }}
196+ regex : false
197+ - name : Set instrumentation key in sap-systems-ext
198+ uses : jacobtomlinson/gha-find-replace@v3
199+ with :
200+ include : packages/sap-systems-ext/src/utils/telemetryHelper.ts
196201 find : ' ApplicationInsightsInstrumentationKeyPLACEH0LDER'
197202 replace : ${{ secrets.INSTRUMENTATION_KEY }}
198203 regex : false
@@ -207,33 +212,42 @@ jobs:
207212 publish : pnpm ci:publish
208213 env :
209214 GITHUB_TOKEN : ${{ secrets.ACCESS_PAT }}
210- - name : Detect sap-systems-ext publication
215+ - name : Detect extension publication
211216 if : steps.changesetPublish.outputs.published == 'true'
212- id : detect_sap_systems_ext
213217 run : |
214218 PUBLISHED=$(echo '${{ steps.changesetPublish.outputs.publishedPackages }}' | jq -r '.[].name')
215- if echo "$PUBLISHED" | grep -q '^sap-ux-sap-systems-ext$'; then
216- echo "SAP_SYSTEMS_EXT_CHANGED=true" >> $GITHUB_ENV
219+ # Extract the first package name matching sap-ux-*-ext
220+ EXT_PKG=$(echo "$PUBLISHED" | grep -E '^sap-ux-.*-ext$' | head -n 1 || true)
221+
222+ if [ -n "$EXT_PKG" ]; then
223+ echo "EXTENSION_UPDATED=true" >> $GITHUB_ENV
224+ echo "EXT_PKG=$EXT_PKG" >> $GITHUB_ENV
225+
226+ # Strip 'sap-ux-' prefix to derive directory name
227+ EXT_DIR_NAME=$(echo "$EXT_PKG" | sed 's/^sap-ux-//')
228+ echo "EXT_DIR=packages/${EXT_DIR_NAME}" >> $GITHUB_ENV
217229 else
218- echo "SAP_SYSTEMS_EXT_CHANGED =false" >> $GITHUB_ENV
230+ echo "EXTENSION_UPDATED =false" >> $GITHUB_ENV
219231 fi
220- - name : Read sap-systems-ext version
221- if : env.SAP_SYSTEMS_EXT_CHANGED == 'true'
222- run : echo "EXT_VERSION=$(jq -r '.version' packages/sap-systems-ext/package.json)" >> $GITHUB_ENV
223- - name : Package sap-systems-ext VSCode extension
224- if : env.SAP_SYSTEMS_EXT_CHANGED == 'true'
225- run : pnpm --filter sap-ux-sap-systems-ext ide-ext:package
226- - name : Create GitHub Release (sap-systems-ext)
227- if : env.SAP_SYSTEMS_EXT_CHANGED == 'true'
232+ - name : Read extension version
233+ if : env.EXTENSION_UPDATED == 'true'
234+ run : |
235+ EXT_VERSION=$(jq -r '.version' "${{ env.EXT_DIR }}/package.json")
236+ echo "EXT_VERSION=$EXT_VERSION" >> $GITHUB_ENV
237+ - name : Package VSCode extension
238+ if : env.EXTENSION_UPDATED == 'true'
239+ run : pnpm --filter ${{ env.EXT_PKG }} ide-ext:package
240+ - name : Create GitHub Release (extension)
241+ if : env.EXTENSION_UPDATED == 'true'
228242 uses : softprops/action-gh-release@v1
229243 with :
230- tag_name : sap-ux-sap-systems-ext @${{ env.EXT_VERSION }}
231- name : sap-ux-sap-systems-ext v${{ env.EXT_VERSION }}
232- body : ' VSCode SAP Systems extension v${{ env.EXT_VERSION }} release. '
233- draft : false
244+ tag_name : ${{ env.EXT_PKG }} @${{ env.EXT_VERSION }}
245+ name : ${{ env.EXT_PKG }} v${{ env.EXT_VERSION }}
246+ body : ' Extension release: ${{ env.EXT_PKG }} v${{ env.EXT_VERSION }}'
247+ draft : true
234248 prerelease : false
235249 generate_release_notes : true
236- files : packages/sap-systems-ext /*.vsix
250+ files : ${{ env.EXT_DIR }} /*.vsix
237251 fail_on_unmatched_files : true
238252 env :
239253 GITHUB_TOKEN : ${{ secrets.ACCESS_PAT }}
@@ -247,10 +261,10 @@ jobs:
247261 echo "$(echo '${{ steps.changesetPublish.outputs.publishedPackages }}' | jq --raw-output 'map("*" + .name + "*" + " - " + "<https://www.npmjs.com/package/" + .name + "|" + .version + ">") | join("\\n")')" >> $GITHUB_ENV
248262 echo "$EOF" >> $GITHUB_ENV
249263 - name : Prepare Slack notification message (extension release only)
250- if : env.SAP_SYSTEMS_EXT_CHANGED == 'true'
264+ if : env.EXTENSION_UPDATED == 'true'
251265 run : |
252- RELEASE_URL="https://github.com/${{ github.repository }}/releases/tag/sap-ux-sap-systems-ext @${{ env.EXT_VERSION }}"
253- echo "EXT_RELEASE_MESSAGE=:package: VSCode SAP Systems extension v${{ env.EXT_VERSION }} released - <${RELEASE_URL}|View on GitHub>" >> $GITHUB_ENV
266+ RELEASE_URL="https://github.com/${{ github.repository }}/releases/tag/${{ env.EXT_PKG }} @${{ env.EXT_VERSION }}"
267+ echo "EXT_RELEASE_MESSAGE=:package: Extension *${{ env.EXT_PKG }}* v${{ env.EXT_VERSION }} released - <${RELEASE_URL}|View on GitHub>" >> $GITHUB_ENV
254268 - name : Send Slack notification (published packages)
255269 if : steps.changesetPublish.outputs.published == 'true'
256270@@ -260,7 +274,7 @@ jobs:
260274 env :
261275 SLACK_WEBHOOK_URL : ${{ secrets.SLACK_WEBHOOK_URL }}
262276 - name : Send Slack notification (extension release)
263- if : env.SAP_SYSTEMS_EXT_CHANGED == 'true'
277+ if : env.EXTENSION_UPDATED == 'true'
264278265279 with :
266280 payload : |
0 commit comments