From da1c969d405c09763b0559ba5827b7536cddf34c Mon Sep 17 00:00:00 2001 From: dotnetprog <24593889+dotnetprog@users.noreply.github.com> Date: Sat, 6 Sep 2025 10:15:12 -0400 Subject: [PATCH 1/8] gh actions refacto --- .github/workflows/ci-validation.yml | 79 +++++--------------- .github/workflows/templates/buildjs.yml | 91 ++++++++++++++++++++++++ .github/workflows/templates/buildpcf.yml | 50 +++++++++++++ 3 files changed, 157 insertions(+), 63 deletions(-) create mode 100644 .github/workflows/templates/buildjs.yml create mode 100644 .github/workflows/templates/buildpcf.yml diff --git a/.github/workflows/ci-validation.yml b/.github/workflows/ci-validation.yml index 90bd541..6ec9081 100644 --- a/.github/workflows/ci-validation.yml +++ b/.github/workflows/ci-validation.yml @@ -32,71 +32,24 @@ jobs: buildBroadCastJs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - name: Install dependencies - run: npm ci - working-directory: ${{ env.broadcastjsWorkingDirectory }} - - name: build - run: npm run build - working-directory: ${{ env.broadcastjsWorkingDirectory }} - - name: Run tests - run: npm run test:ci - working-directory: ${{ env.broadcastjsWorkingDirectory }} - - name: Publish Test Report - uses: phoenix-actions/test-reporting@v8 - id: test-report # Set ID reference for step - if: ${{ (success() || failure()) && (github.event_name == 'pull_request') }} # run this step even if previous step failed - with: - name: JEST Tests # Name of the check run which will be created - path: ${{ env.broadcastjsWorkingDirectory }}/*-junit.xml # Path to test results - reporter: jest-junit # Format of test results - - name: Publish Tests Results to CodeCov - uses: codecov/test-results-action@v1 - with: - fail_ci_if_error: true # optional (default = false) - disable_search: true - files: ./${{ env.broadcastjsWorkingDirectory }}/vitest-junit.xml # optional - flags: broadcast # optional - name: broadcastjs-tests # optional - token: ${{ secrets.CODECOV_TOKEN }} # required - verbose: true # optional (default = false) - - name: Publish Coverage to CodeCov - uses: codecov/codecov-action@v5 - with: - fail_ci_if_error: true # optional (default = false) - disable_search: true - files: ./${{ env.broadcastjsWorkingDirectory }}/coverage/lcov.info # optional - flags: broadcast # optional - name: broadcastjs-coverage # optional - token: ${{ secrets.CODECOV_TOKEN }} - verbose: true # optional (default = false) - - name: Create destination folder - run: mkdir -p ${{env.artifactlocation}} - - name: Copy file outputjs into staging directory - run: cp ${{ env.broadcastjsWorkingDirectory }}/dist/broadcast.js ${{env.artifactlocation}} - - name: Upload broadcastjs artifact - if: ${{ success() && (github.event_name == 'push') }} - uses: actions/upload-artifact@v4 - with: - name: broadcastjs - path: ${{env.artifactlocation}} + - uses: actions/checkout@v4 + - uses: ./github/workflows/templates/buildjs.yml + with: + projectdirectory: ${{ env.broadcastjsWorkingDirectory }} + componentName: broadcastjs + publishArtifact: false + testCommand: 'test:ci' + publishCodeCov: ${{github.event_name == 'pull_request'}} + artifactlocation: ${{env.artifactlocation}} + secrets: + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} + buildAppModulePickerPCF: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - name: Install dependencies - run: npm ci - working-directory: ${{ env.pcfWorkkingDirectory }} - - name: build - run: npm run build - working-directory: ${{ env.pcfWorkkingDirectory }} - - name: Create destination folder - run: mkdir -p ${{env.artifactlocation}} - - name: Copy file output pcf bundle into staging directory - run: cp ${{ env.pcfWorkkingDirectory }}/out/controls/AppModulePicker/* ${{env.artifactlocation}} - - name: Upload AppModulePicker artifact - if: ${{ success() && (github.event_name == 'push') }} - uses: actions/upload-artifact@v4 + - uses: ./.github/workflows/templates/buildpcf.yml with: - name: AppModulePicker - path: ${{env.artifactlocation}} \ No newline at end of file + pcfdirectory: ${{ env.pcfWorkkingDirectory }} + publishArtifact: false + componentName: AppModulePicker \ No newline at end of file diff --git a/.github/workflows/templates/buildjs.yml b/.github/workflows/templates/buildjs.yml new file mode 100644 index 0000000..074b223 --- /dev/null +++ b/.github/workflows/templates/buildjs.yml @@ -0,0 +1,91 @@ +# This workflow will build a .NET project +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net + +name: buildjs +on: + workflow_call: + inputs: + projectdirectory: + required: true + type: string + componentName: + required: true + type: string + publishArtifact: + required: true + type: boolean + testCommand: + required: true + type: string + publishCodeCov: + required: true + type: boolean + artifactlocation: + required: false + type: string + secrets: + CODECOV_TOKEN: + required: false +jobs: + buildJS: + name: Build ${{ inputs.componentName }} + runs-on: ubuntu-latest + steps: + - name: Install dependencies + run: npm ci + working-directory: ${{ inputs.projectdirectory }} + - name: build + run: npm run build + working-directory: ${{ inputs.projectdirectory }} + - name: Run tests + run: npm run ${{ inputs.testCommand }} + working-directory: ${{ inputs.projectdirectory }} + - name: Publish Test Report + uses: phoenix-actions/test-reporting@v8 + id: test-report # Set ID reference for step + if: ${{ (success() || failure()) && inputs.publishCodeCov }} # run this step even if previous step failed + with: + name: JEST Tests # Name of the check run which will be created + path: ${{ inputs.projectdirectory }}/*-junit.xml # Path to test results + reporter: jest-junit # Format of test results + - name: Publish Tests Results to CodeCov + uses: codecov/test-results-action@v1 + if: ${{ (success() || failure()) && inputs.publishCodeCov }} + with: + fail_ci_if_error: true # optional (default = false) + disable_search: true + files: ./${{ inputs.projectdirectory }}/vitest-junit.xml # optional + flags: broadcast # optional + name: ${{ inputs.componentName }}-tests # optional + token: ${{ secrets.CODECOV_TOKEN }} # required + verbose: true # optional (default = false) + - name: Publish Coverage to CodeCov + uses: codecov/codecov-action@v5 + if: ${{ (success() || failure()) && inputs.publishCodeCov }} + with: + fail_ci_if_error: true # optional (default = false) + disable_search: true + files: ./${{ inputs.projectdirectory }}/coverage/lcov.info # optional + flags: broadcast # optional + name: ${{ inputs.componentName }}-coverage # optional + token: ${{ secrets.CODECOV_TOKEN }} + verbose: true # optional (default = false) + - name: Create destination folder + if: ${{ success() && inputs.publishArtifact }} + run: mkdir -p ${{inputs.artifactlocation}} + - name: Copy file outputjs into staging directory + if: ${{ success() && inputs.publishArtifact }} + run: cp ${{ inputs.projectdirectory }}/dist/broadcast.js ${{inputs.artifactlocation}} + - name: Upload ${{ inputs.componentName }} artifact + if: ${{ success() && inputs.publishArtifact }} + uses: actions/upload-artifact@v4 + with: + name: ${{ inputs.componentName }} + path: ${{inputs.artifactlocation}} + + + + + + + \ No newline at end of file diff --git a/.github/workflows/templates/buildpcf.yml b/.github/workflows/templates/buildpcf.yml new file mode 100644 index 0000000..58cb1f4 --- /dev/null +++ b/.github/workflows/templates/buildpcf.yml @@ -0,0 +1,50 @@ +# This workflow will build a .NET project +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net + +name: buildPCF +on: + workflow_call: + inputs: + pcfdirectory: + required: true + type: string + publishArtifact: + required: true + type: boolean + componentName: + required: true + type: string + artifactlocation: + required: false + type: string +jobs: + buildPCF: + name: Build ${{ inputs.componentName }} + runs-on: ubuntu-latest + steps: + - name: Install dependencies + run: npm ci + working-directory: ${{ inputs.pcfdirectory }} + - name: build + run: npm run build + working-directory: ${{ inputs.pcfdirectory }} + - name: Create destination folder + if: ${{ success() && inputs.publishArtifact }} + run: mkdir -p ${{inputs.artifactlocation}} + - name: Copy file output pcf bundle into staging directory + if: ${{ success() && inputs.publishArtifact }} + run: cp ${{ inputs.pcfdirectory }}/out/controls/${{ inputs.componentName }}/* ${{inputs.artifactlocation}} + - name: Upload ${{ inputs.componentName }} artifact + if: ${{ success() && inputs.publishArtifact }} + uses: actions/upload-artifact@v4 + with: + name: ${{ inputs.componentName }} + path: ${{inputs.artifactlocation}} + + + + + + + + \ No newline at end of file From 8f357e2474bb2d6d285ea097abf7fab37b02be38 Mon Sep 17 00:00:00 2001 From: dotnetprog <24593889+dotnetprog@users.noreply.github.com> Date: Sat, 6 Sep 2025 10:19:06 -0400 Subject: [PATCH 2/8] test without secrets --- .github/workflows/ci-validation.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci-validation.yml b/.github/workflows/ci-validation.yml index 6ec9081..14b371b 100644 --- a/.github/workflows/ci-validation.yml +++ b/.github/workflows/ci-validation.yml @@ -41,8 +41,8 @@ jobs: testCommand: 'test:ci' publishCodeCov: ${{github.event_name == 'pull_request'}} artifactlocation: ${{env.artifactlocation}} - secrets: - CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} + + buildAppModulePickerPCF: runs-on: ubuntu-latest From b6bbcb7fd855157995f5fea4c30747a66af8e5c0 Mon Sep 17 00:00:00 2001 From: dotnetprog <24593889+dotnetprog@users.noreply.github.com> Date: Sat, 6 Sep 2025 10:22:37 -0400 Subject: [PATCH 3/8] TEST --- .github/workflows/ci-validation.yml | 32 ++++++++++-------------- .github/workflows/templates/buildjs.yml | 1 + .github/workflows/templates/buildpcf.yml | 1 + 3 files changed, 15 insertions(+), 19 deletions(-) diff --git a/.github/workflows/ci-validation.yml b/.github/workflows/ci-validation.yml index 14b371b..9b99dc3 100644 --- a/.github/workflows/ci-validation.yml +++ b/.github/workflows/ci-validation.yml @@ -30,26 +30,20 @@ jobs: solution-file: artifactlocation/broadcast_solution.zip solution-type: Unmanaged buildBroadCastJs: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: ./github/workflows/templates/buildjs.yml - with: - projectdirectory: ${{ env.broadcastjsWorkingDirectory }} - componentName: broadcastjs - publishArtifact: false - testCommand: 'test:ci' - publishCodeCov: ${{github.event_name == 'pull_request'}} - artifactlocation: ${{env.artifactlocation}} + uses: ./github/workflows/templates/buildjs.yml + with: + projectdirectory: ${{ env.broadcastjsWorkingDirectory }} + componentName: broadcastjs + publishArtifact: false + testCommand: 'test:ci' + publishCodeCov: ${{github.event_name == 'pull_request'}} + artifactlocation: ${{env.artifactlocation}} buildAppModulePickerPCF: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: ./.github/workflows/templates/buildpcf.yml - with: - pcfdirectory: ${{ env.pcfWorkkingDirectory }} - publishArtifact: false - componentName: AppModulePicker \ No newline at end of file + uses: ./.github/workflows/templates/buildpcf.yml + with: + pcfdirectory: ${{ env.pcfWorkkingDirectory }} + publishArtifact: false + componentName: AppModulePicker \ No newline at end of file diff --git a/.github/workflows/templates/buildjs.yml b/.github/workflows/templates/buildjs.yml index 074b223..5796e82 100644 --- a/.github/workflows/templates/buildjs.yml +++ b/.github/workflows/templates/buildjs.yml @@ -31,6 +31,7 @@ jobs: name: Build ${{ inputs.componentName }} runs-on: ubuntu-latest steps: + - uses: actions/checkout@v4 - name: Install dependencies run: npm ci working-directory: ${{ inputs.projectdirectory }} diff --git a/.github/workflows/templates/buildpcf.yml b/.github/workflows/templates/buildpcf.yml index 58cb1f4..ca856fe 100644 --- a/.github/workflows/templates/buildpcf.yml +++ b/.github/workflows/templates/buildpcf.yml @@ -22,6 +22,7 @@ jobs: name: Build ${{ inputs.componentName }} runs-on: ubuntu-latest steps: + - uses: actions/checkout@v4 - name: Install dependencies run: npm ci working-directory: ${{ inputs.pcfdirectory }} From 208f3e35e5a209a2434e338c56a5f46d32b0c0c0 Mon Sep 17 00:00:00 2001 From: dotnetprog <24593889+dotnetprog@users.noreply.github.com> Date: Sat, 6 Sep 2025 10:22:58 -0400 Subject: [PATCH 4/8] . --- .github/workflows/ci-validation.yml | 2 +- .github/workflows/release-on-tag.yml | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/release-on-tag.yml diff --git a/.github/workflows/ci-validation.yml b/.github/workflows/ci-validation.yml index 9b99dc3..8b4f1b6 100644 --- a/.github/workflows/ci-validation.yml +++ b/.github/workflows/ci-validation.yml @@ -30,7 +30,7 @@ jobs: solution-file: artifactlocation/broadcast_solution.zip solution-type: Unmanaged buildBroadCastJs: - uses: ./github/workflows/templates/buildjs.yml + uses: ./.github/workflows/templates/buildjs.yml with: projectdirectory: ${{ env.broadcastjsWorkingDirectory }} componentName: broadcastjs diff --git a/.github/workflows/release-on-tag.yml b/.github/workflows/release-on-tag.yml new file mode 100644 index 0000000..070804c --- /dev/null +++ b/.github/workflows/release-on-tag.yml @@ -0,0 +1,18 @@ +name: Create Release on Tag + +on: + push: + # Sequence of patterns matched against refs/tags + tags: + - 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10 + + +env: + pcfWorkkingDirectory: 'src/broadcast-pcf/appmodulepicker' + broadcastjsWorkingDirectory: 'src/broadcast-typescript' + solutionDirectory: 'src/broadcast-solution' + artifactlocation: '${{ github.workspace }}/dist' +jobs: + + + \ No newline at end of file From f954bba4b857222b238566bd16f579e249491f27 Mon Sep 17 00:00:00 2001 From: dotnetprog <24593889+dotnetprog@users.noreply.github.com> Date: Sat, 6 Sep 2025 10:24:28 -0400 Subject: [PATCH 5/8] . --- .github/workflows/ci-validation.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci-validation.yml b/.github/workflows/ci-validation.yml index 8b4f1b6..52aab44 100644 --- a/.github/workflows/ci-validation.yml +++ b/.github/workflows/ci-validation.yml @@ -32,18 +32,18 @@ jobs: buildBroadCastJs: uses: ./.github/workflows/templates/buildjs.yml with: - projectdirectory: ${{ env.broadcastjsWorkingDirectory }} + projectdirectory: 'src/broadcast-typescript' componentName: broadcastjs publishArtifact: false testCommand: 'test:ci' publishCodeCov: ${{github.event_name == 'pull_request'}} - artifactlocation: ${{env.artifactlocation}} + artifactlocation: '${{ github.workspace }}/dist' buildAppModulePickerPCF: uses: ./.github/workflows/templates/buildpcf.yml with: - pcfdirectory: ${{ env.pcfWorkkingDirectory }} + pcfdirectory: 'src/broadcast-pcf/appmodulepicker' publishArtifact: false componentName: AppModulePicker \ No newline at end of file From bba17c3ae1cb11e8f4a191090bb9b9b38d1d6632 Mon Sep 17 00:00:00 2001 From: dotnetprog <24593889+dotnetprog@users.noreply.github.com> Date: Sat, 6 Sep 2025 10:25:31 -0400 Subject: [PATCH 6/8] MOVING FILES --- .github/workflows/{templates => }/buildjs.yml | 0 .github/workflows/{templates => }/buildpcf.yml | 0 .github/workflows/ci-validation.yml | 4 ++-- 3 files changed, 2 insertions(+), 2 deletions(-) rename .github/workflows/{templates => }/buildjs.yml (100%) rename .github/workflows/{templates => }/buildpcf.yml (100%) diff --git a/.github/workflows/templates/buildjs.yml b/.github/workflows/buildjs.yml similarity index 100% rename from .github/workflows/templates/buildjs.yml rename to .github/workflows/buildjs.yml diff --git a/.github/workflows/templates/buildpcf.yml b/.github/workflows/buildpcf.yml similarity index 100% rename from .github/workflows/templates/buildpcf.yml rename to .github/workflows/buildpcf.yml diff --git a/.github/workflows/ci-validation.yml b/.github/workflows/ci-validation.yml index 52aab44..43813c8 100644 --- a/.github/workflows/ci-validation.yml +++ b/.github/workflows/ci-validation.yml @@ -30,7 +30,7 @@ jobs: solution-file: artifactlocation/broadcast_solution.zip solution-type: Unmanaged buildBroadCastJs: - uses: ./.github/workflows/templates/buildjs.yml + uses: ./.github/workflows/buildjs.yml with: projectdirectory: 'src/broadcast-typescript' componentName: broadcastjs @@ -42,7 +42,7 @@ jobs: buildAppModulePickerPCF: - uses: ./.github/workflows/templates/buildpcf.yml + uses: ./.github/workflows/buildpcf.yml with: pcfdirectory: 'src/broadcast-pcf/appmodulepicker' publishArtifact: false From 13db56ab904301e3c60ca0d9e4a41d652c5e982f Mon Sep 17 00:00:00 2001 From: dotnetprog <24593889+dotnetprog@users.noreply.github.com> Date: Sat, 6 Sep 2025 10:28:21 -0400 Subject: [PATCH 7/8] fix --- .github/workflows/ci-validation.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci-validation.yml b/.github/workflows/ci-validation.yml index 43813c8..ccae586 100644 --- a/.github/workflows/ci-validation.yml +++ b/.github/workflows/ci-validation.yml @@ -36,8 +36,10 @@ jobs: componentName: broadcastjs publishArtifact: false testCommand: 'test:ci' - publishCodeCov: ${{github.event_name == 'pull_request'}} + publishCodeCov: true artifactlocation: '${{ github.workspace }}/dist' + secrets: + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} From ce0941efaac4f7a38cc6feb2e93719d99b2d36d9 Mon Sep 17 00:00:00 2001 From: dotnetprog <24593889+dotnetprog@users.noreply.github.com> Date: Sat, 6 Sep 2025 12:19:23 -0400 Subject: [PATCH 8/8] Add workflow to automate release creation --- .github/workflows/release-on-tag.yml | 109 ++++++++++++++++++++++++++- .gitignore | 5 ++ src/solution-mapping-pack.xml | 8 ++ 3 files changed, 121 insertions(+), 1 deletion(-) create mode 100644 src/solution-mapping-pack.xml diff --git a/.github/workflows/release-on-tag.yml b/.github/workflows/release-on-tag.yml index 070804c..10b64d3 100644 --- a/.github/workflows/release-on-tag.yml +++ b/.github/workflows/release-on-tag.yml @@ -1,5 +1,5 @@ name: Create Release on Tag - +run-name: BuildTag ${{ github.ref }} on: push: # Sequence of patterns matched against refs/tags @@ -13,6 +13,113 @@ env: solutionDirectory: 'src/broadcast-solution' artifactlocation: '${{ github.workspace }}/dist' jobs: + buildBroadCastJs: + uses: ./.github/workflows/buildjs.yml + with: + projectdirectory: 'src/broadcast-typescript' + componentName: broadcastjs + publishArtifact: true + testCommand: 'test:ci' + publishCodeCov: false + artifactlocation: '${{ github.workspace }}/dist' + secrets: + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} + + + + buildAppModulePickerPCF: + uses: ./.github/workflows/buildpcf.yml + with: + pcfdirectory: 'src/broadcast-pcf/appmodulepicker' + publishArtifact: true + componentName: AppModulePicker + artifactlocation: '${{ github.workspace }}/dist' + release: + name: Create Release from tag + needs: [ buildAppModulePickerPCF, buildBroadCastJs] + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Install Power Platform Tools + uses: microsoft/powerplatform-actions/actions-install@v1 + - name: Install GitVersion + uses: gittools/actions/gitversion/setup@v4.1.0 + with: + versionSpec: '6.3.x' + - name: Determine Version + id: gitversion # step id used as reference for output values + uses: gittools/actions/gitversion/execute@v4.1.0 + - name: Download broadcastjs artifact + uses: actions/download-artifact@v4 + with: + name: broadcastjs + path: '${{ github.workspace }}/broadcastjs' + - name: Download AppModulePicker artifact + uses: actions/download-artifact@v4 + with: + name: AppModulePicker + path: '${{ github.workspace }}/AppModulePicker' + - name: Rename broadcastjs/bundle.js into bbundle.js + run: bundle.js bbundle.js + working-directory: ${{ github.workspace }}/AppModulePicker + - name: Update PCF control version with ${{ github.ref }} + uses: Mudlet/xmlstarlet-action@v1.2 + with: + args: >- + ed -L --update "/manifest/control/@version" + -v "${{ steps.gitversion.outputs.majorMinorPatch }}" + ${{ github.workspace }}/AppModulePicker/ControlManifest.xml + - name: Update Solution.xml Version with semver + uses: Mudlet/xmlstarlet-action@v1.2 + with: + args: >- + ed -L --update "/ImportExportXml/SolutionManifest/Version" + -v "${{ steps.gitversion.outputs.assemblySemVer }}" + ${{ github.workspace }}/src/broadcast-solution/Other/Solution.xml + - name: delete bundle.js from the solution directory + run: | + rm src/broadcast-solution/Controls/fdn_Broadcast.AppModulePicker/bundle.js + - name: Pack solution + uses: microsoft/powerplatform-actions/pack-solution@v1 + with: + solution-folder: src/broadcast-solution + map-file: src/solution-mapping-pack.xml + solution-file: BroadcastSolution_v${{ steps.gitversion.outputs.majorMinorPatch }}.zip + solution-type: Both + - name: Create Release + id: create_release + uses: actions/create-release@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + tag_name: ${{ github.ref }} + release_name: Release ${{ github.ref }} + draft: false + prerelease: false + - name: Upload Unmanaged Release Solution + id: upload-release-asset + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: ./BroadcastSolution_v${{ steps.gitversion.outputs.majorMinorPatch }}.zip + asset_name: BroadcastSolution_v${{ steps.gitversion.outputs.majorMinorPatch }}.zip + asset_content_type: application/zip + - name: Upload Managed Release Solution + id: upload-release-managed-asset + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: ./BroadcastSolution_v${{ steps.gitversion.outputs.majorMinorPatch }}_Managed.zip + asset_name: BroadcastSolution_v${{ steps.gitversion.outputs.majorMinorPatch }}_Managed.zip + asset_content_type: application/zip + + \ No newline at end of file diff --git a/.gitignore b/.gitignore index 007b947..64e238d 100644 --- a/.gitignore +++ b/.gitignore @@ -140,3 +140,8 @@ vite.config.ts.timestamp-* src/broadcast-pcf/appmodulepicker/push.bat export-solution.ps1 /.vs +pack-solution.ps1 +BroadcastSolution_managed.zip +.gitignore +BroadcastSolution.zip +src/solution-mapping-pack.local.xml diff --git a/src/solution-mapping-pack.xml b/src/solution-mapping-pack.xml new file mode 100644 index 0000000..e6f73e9 --- /dev/null +++ b/src/solution-mapping-pack.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file