From 7d4fe9be981351788c579b99ed411ddf912ecf3c Mon Sep 17 00:00:00 2001 From: Phil-NHS Date: Tue, 16 Sep 2025 10:47:59 +0100 Subject: [PATCH 1/4] chore(cicd): Use only development appsettings in checks --- .github/workflows/reuseable-ci-checks.yml | 44 ++++++++++++++--------- 1 file changed, 28 insertions(+), 16 deletions(-) diff --git a/.github/workflows/reuseable-ci-checks.yml b/.github/workflows/reuseable-ci-checks.yml index 9523b66..daec6cb 100644 --- a/.github/workflows/reuseable-ci-checks.yml +++ b/.github/workflows/reuseable-ci-checks.yml @@ -23,14 +23,14 @@ on: required: true WASMSERVERHOST_APPSETTINGS_DEVELOPMENT: required: true - UNITTESTS_APPSETTINGS_PRODUCTION: - required: true - WASMSTATICCLIENT_APPSETTINGS_PRODUCTION: - required: true - WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION: - required: true - WASMSERVERHOST_APPSETTINGS_PRODUCTION: - required: true + # UNITTESTS_APPSETTINGS_PRODUCTION: + # required: true + # WASMSTATICCLIENT_APPSETTINGS_PRODUCTION: + # required: true + # WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION: + # required: true + # WASMSERVERHOST_APPSETTINGS_PRODUCTION: + # required: true TEL_GIT_PACKAGES_TOKEN: required: true @@ -90,10 +90,11 @@ jobs: paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost.Client/wwwroot/appsettings.Development.json"]='${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_DEVELOPMENT }}' paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/appsettings.Development.json"]='${{ secrets.WASMSERVERHOST_APPSETTINGS_DEVELOPMENT }}' - paths["./TELBlazor.Components.UnitTests/appsettings.Production.json"]='${{ secrets.UNITTESTS_APPSETTINGS_PRODUCTION }}' - paths["./TELBlazor.Components.ShowCase.WasmStaticClient/wwwroot/appsettings.Production.json"]='${{ secrets.WASMSTATICCLIENT_APPSETTINGS_PRODUCTION }}' - paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost.Client/wwwroot/appsettings.Production.json"]='${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION }}' - paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/appsettings.Production.json"]='${{ secrets.WASMSERVERHOST_APPSETTINGS_PRODUCTION }}' + # qqqq drop later + # paths["./TELBlazor.Components.UnitTests/appsettings.Production.json"]='${{ secrets.UNITTESTS_APPSETTINGS_PRODUCTION }}' + # paths["./TELBlazor.Components.ShowCase.WasmStaticClient/wwwroot/appsettings.Production.json"]='${{ secrets.WASMSTATICCLIENT_APPSETTINGS_PRODUCTION }}' + # paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost.Client/wwwroot/appsettings.Production.json"]='${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION }}' + # paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/appsettings.Production.json"]='${{ secrets.WASMSERVERHOST_APPSETTINGS_PRODUCTION }}' for path in "${!paths[@]}"; do mkdir -p "$(dirname "$path")" @@ -117,6 +118,8 @@ jobs: run: dotnet workload install wasm-tools --skip-manifest-update --source https://api.nuget.org/v3/index.json - name: Build and create package locally + env: + ASPNETCORE_ENVIRONMENT: Development run: | dotnet build TELBlazor.Components -c Release \ /p:TELBlazorPackageVersion=$TELBLAZOR_PACKAGE_VERSION \ @@ -126,6 +129,8 @@ jobs: - name: Build solution without generating new package + env: + ASPNETCORE_ENVIRONMENT: Development run: | dotnet build TELBlazor.sln -c Release \ /p:TELBlazorPackageVersion=$TELBLAZOR_PACKAGE_VERSION \ @@ -259,10 +264,11 @@ jobs: paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost.Client/wwwroot/appsettings.Development.json"]='${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_DEVELOPMENT }}' paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/appsettings.Development.json"]='${{ secrets.WASMSERVERHOST_APPSETTINGS_DEVELOPMENT }}' - paths["./TELBlazor.Components.UnitTests/appsettings.Production.json"]='${{ secrets.UNITTESTS_APPSETTINGS_PRODUCTION }}' - paths["./TELBlazor.Components.ShowCase.WasmStaticClient/wwwroot/appsettings.Production.json"]='${{ secrets.WASMSTATICCLIENT_APPSETTINGS_PRODUCTION }}' - paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost.Client/wwwroot/appsettings.Production.json"]='${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION }}' - paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/appsettings.Production.json"]='${{ secrets.WASMSERVERHOST_APPSETTINGS_PRODUCTION }}' + # qqqq drop + # paths["./TELBlazor.Components.UnitTests/appsettings.Production.json"]='${{ secrets.UNITTESTS_APPSETTINGS_PRODUCTION }}' + # paths["./TELBlazor.Components.ShowCase.WasmStaticClient/wwwroot/appsettings.Production.json"]='${{ secrets.WASMSTATICCLIENT_APPSETTINGS_PRODUCTION }}' + # paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost.Client/wwwroot/appsettings.Production.json"]='${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION }}' + # paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/appsettings.Production.json"]='${{ secrets.WASMSERVERHOST_APPSETTINGS_PRODUCTION }}' for path in "${!paths[@]}"; do mkdir -p "$(dirname "$path")" @@ -284,6 +290,8 @@ jobs: run: dotnet workload install wasm-tools --skip-manifest-update --source https://api.nuget.org/v3/index.json - name: Build and create package locally + env: + ASPNETCORE_ENVIRONMENT: Development run: | dotnet build TELBlazor.Components -c Release \ /p:TELBlazorPackageVersion=$TELBLAZOR_PACKAGE_VERSION \ @@ -292,6 +300,8 @@ jobs: /p:DisablePackageGeneration=false - name: Build solution without generating new package + env: + ASPNETCORE_ENVIRONMENT: Development run: | dotnet build TELBlazor.sln -c Release \ /p:TELBlazorPackageVersion=$TELBLAZOR_PACKAGE_VERSION \ @@ -305,6 +315,8 @@ jobs: - name: Run tests with coverage threshold check id: unit_e2e_tests + env: + ASPNETCORE_ENVIRONMENT: Development run: | dotnet test --no-build --no-restore -c Release \ /p:TELBlazorPackageVersion=$TELBLAZOR_PACKAGE_VERSION \ From 2f05f0e507e185419ad26ceb25bf514eafd21d0b Mon Sep 17 00:00:00 2001 From: Phil-NHS Date: Tue, 16 Sep 2025 11:00:55 +0100 Subject: [PATCH 2/4] chore(cicd): need to not provide unneeded secrets even for test run --- .github/workflows/dev.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/dev.yml b/.github/workflows/dev.yml index 630ea52..d7521d2 100644 --- a/.github/workflows/dev.yml +++ b/.github/workflows/dev.yml @@ -50,10 +50,10 @@ jobs: TEL_GIT_PACKAGES_TOKEN: ${{secrets.NUGETKEY }} # Prod - UNITTESTS_APPSETTINGS_PRODUCTION: ${{ secrets.UNITTESTS_APPSETTINGS_PRODUCTION }} - WASMSTATICCLIENT_APPSETTINGS_PRODUCTION: ${{ secrets.WASMSTATICCLIENT_APPSETTINGS_PRODUCTION }} - WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION: ${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION }} - WASMSERVERHOST_APPSETTINGS_PRODUCTION: ${{ secrets.WASMSERVERHOST_APPSETTINGS_PRODUCTION }} + # UNITTESTS_APPSETTINGS_PRODUCTION: ${{ secrets.UNITTESTS_APPSETTINGS_PRODUCTION }} + # WASMSTATICCLIENT_APPSETTINGS_PRODUCTION: ${{ secrets.WASMSTATICCLIENT_APPSETTINGS_PRODUCTION }} + # WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION: ${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION }} + # WASMSERVERHOST_APPSETTINGS_PRODUCTION: ${{ secrets.WASMSERVERHOST_APPSETTINGS_PRODUCTION }} # Now we've done due diligence # The checks have been allowed to run if the workflow fails so if there a multiple fails we know. From 8a00ed1a82353aaf5a7166d24b03591eecef9519 Mon Sep 17 00:00:00 2001 From: Phil-NHS Date: Tue, 16 Sep 2025 12:32:15 +0100 Subject: [PATCH 3/4] chore(cicd): Removing the prod appsetting from dev checks --- .github/workflows/pull_request.yml | 7 +------ .github/workflows/reuseable-ci-checks.yml | 16 +--------------- 2 files changed, 2 insertions(+), 21 deletions(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 853771e..347caf5 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -23,9 +23,4 @@ jobs: WASMSTATICCLIENT_APPSETTINGS_DEVELOPMENT: ${{ secrets.WASMSTATICCLIENT_APPSETTINGS_DEVELOPMENT }} WASMSERVERHOSTCLIENT_APPSETTINGS_DEVELOPMENT: ${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_DEVELOPMENT }} WASMSERVERHOST_APPSETTINGS_DEVELOPMENT: ${{ secrets.WASMSERVERHOST_APPSETTINGS_DEVELOPMENT }} - TEL_GIT_PACKAGES_TOKEN: ${{secrets.NUGETKEY }} - - UNITTESTS_APPSETTINGS_PRODUCTION: ${{ secrets.UNITTESTS_APPSETTINGS_PRODUCTION }} - WASMSTATICCLIENT_APPSETTINGS_PRODUCTION: ${{ secrets.WASMSTATICCLIENT_APPSETTINGS_PRODUCTION }} - WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION: ${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION }} - WASMSERVERHOST_APPSETTINGS_PRODUCTION: ${{ secrets.WASMSERVERHOST_APPSETTINGS_PRODUCTION }} \ No newline at end of file + TEL_GIT_PACKAGES_TOKEN: ${{secrets.NUGETKEY }} \ No newline at end of file diff --git a/.github/workflows/reuseable-ci-checks.yml b/.github/workflows/reuseable-ci-checks.yml index daec6cb..d126610 100644 --- a/.github/workflows/reuseable-ci-checks.yml +++ b/.github/workflows/reuseable-ci-checks.yml @@ -90,12 +90,6 @@ jobs: paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost.Client/wwwroot/appsettings.Development.json"]='${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_DEVELOPMENT }}' paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/appsettings.Development.json"]='${{ secrets.WASMSERVERHOST_APPSETTINGS_DEVELOPMENT }}' - # qqqq drop later - # paths["./TELBlazor.Components.UnitTests/appsettings.Production.json"]='${{ secrets.UNITTESTS_APPSETTINGS_PRODUCTION }}' - # paths["./TELBlazor.Components.ShowCase.WasmStaticClient/wwwroot/appsettings.Production.json"]='${{ secrets.WASMSTATICCLIENT_APPSETTINGS_PRODUCTION }}' - # paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost.Client/wwwroot/appsettings.Production.json"]='${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION }}' - # paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/appsettings.Production.json"]='${{ secrets.WASMSERVERHOST_APPSETTINGS_PRODUCTION }}' - for path in "${!paths[@]}"; do mkdir -p "$(dirname "$path")" printf '%s' "${paths[$path]}" > "$path" @@ -264,12 +258,6 @@ jobs: paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost.Client/wwwroot/appsettings.Development.json"]='${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_DEVELOPMENT }}' paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/appsettings.Development.json"]='${{ secrets.WASMSERVERHOST_APPSETTINGS_DEVELOPMENT }}' - # qqqq drop - # paths["./TELBlazor.Components.UnitTests/appsettings.Production.json"]='${{ secrets.UNITTESTS_APPSETTINGS_PRODUCTION }}' - # paths["./TELBlazor.Components.ShowCase.WasmStaticClient/wwwroot/appsettings.Production.json"]='${{ secrets.WASMSTATICCLIENT_APPSETTINGS_PRODUCTION }}' - # paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost.Client/wwwroot/appsettings.Production.json"]='${{ secrets.WASMSERVERHOSTCLIENT_APPSETTINGS_PRODUCTION }}' - # paths["./TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/TELBlazor.Components.ShowCase.E2ETests.WasmServerHost/appsettings.Production.json"]='${{ secrets.WASMSERVERHOST_APPSETTINGS_PRODUCTION }}' - for path in "${!paths[@]}"; do mkdir -p "$(dirname "$path")" printf '%s' "${paths[$path]}" > "$path" @@ -352,10 +340,8 @@ jobs: # Echo the entire artifact list for debugging purposes echo "Artifact List: $ARTIFACT_LIST" - #qqqq worked mostly ARTIFACT_URL=$(echo "$ARTIFACT_LIST" | jq -r '.artifacts[] | select(.name=="coverage-report") | .url') ARTIFACT_URL=$(echo "$ARTIFACT_LIST" | jq -r '.artifacts | map(select(.name=="coverage-report")) | sort_by(.created_at) | last | .url') - - + # Echo the artifact URL to confirm echo "Artifact URL: $ARTIFACT_URL" echo "artifact_url=$ARTIFACT_URL" >> $GITHUB_ENV From 36aae75207a6ac1aea9b0dffa7d5228777f758a3 Mon Sep 17 00:00:00 2001 From: Phil-NHS Date: Tue, 16 Sep 2025 13:22:30 +0100 Subject: [PATCH 4/4] chore(cicd): More debugging --- .../automerge-dependabot-prs-into-collected-branch.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/automerge-dependabot-prs-into-collected-branch.yml b/.github/workflows/automerge-dependabot-prs-into-collected-branch.yml index 298cb94..4581476 100644 --- a/.github/workflows/automerge-dependabot-prs-into-collected-branch.yml +++ b/.github/workflows/automerge-dependabot-prs-into-collected-branch.yml @@ -26,6 +26,9 @@ jobs: echo "target branch: ${{ github.event.pull_request.base.ref }}" echo "source branch: ${{ github.event.pull_request.head.ref }}" echo "PR Number: ${{ github.event.pull_request.number }}" + echo "event type: ${{ github.event.pull_request.type || 'N/A' }}" + echo "Pull request user login: ${{ github.event.pull_request.user.login }}" + echo "Repository: ${{ github.repository }}" # Branch rules ensure doesnt auto merge if shouldnt auto-merge: @@ -36,7 +39,6 @@ jobs: - name: Checkout the repository uses: actions/checkout@v4 - # qqqq could use action - name: Set up GitHub CLI run: | # Install GitHub CLI (gh) @@ -45,7 +47,6 @@ jobs: - name: extract update type id: extract - # Specific dependabot token qqqq? env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: |