diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 30e0b5fd..f7fe44e5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -190,10 +190,9 @@ jobs: - name: run PubSub sample run: | python ./utils/run_in_ci.py --file ./.github/workflows/ci_run_pubsub_cfg.json - # TODO Temporarily disable this job. Enable it after the issue is properly fixes. - # - name: run Windows Certificate Connect sample - # run: | - # python ./utils/run_in_ci.py --file ./.github/workflows/ci_run_windows_cert_connect_cfg.json + - name: run Windows Certificate Connect sample + run: | + python ./utils/run_in_ci.py --file ./.github/workflows/ci_run_windows_cert_connect_cfg.json - name: configure AWS credentials (MQTT5) uses: aws-actions/configure-aws-credentials@v2 with: diff --git a/utils/run_in_ci.py b/utils/run_in_ci.py index ecd86b5a..f87302c3 100644 --- a/utils/run_in_ci.py +++ b/utils/run_in_ci.py @@ -147,7 +147,18 @@ def make_windows_pfx_file(certificate_file_path, private_key_path, pfx_file_path # Import the PFX into the Windows Certificate Store # (Passing '$mypwd' is required even though it is empty and our certificate has no password. It fails CI otherwise) - import_pfx_arguments = ["powershell.exe", "Import-PfxCertificate", "-FilePath", pfx_file_path, "-CertStoreLocation", "Cert:\\" + pfx_certificate_store_location, "-Password", "$mypwd"] + import_pfx_arguments = [ + "powershell.exe", + # Powershell 7.3 introduced an issue where launching powershell from cmd would not set PSModulePath correctly. + # As a workaround, we set `PSModulePath` to empty so powershell would automatically reset the PSModulePath to default. + # More details: https://github.com/PowerShell/PowerShell/issues/18530 + "$env:PSModulePath = '';", + "Import-PfxCertificate", + "-FilePath", pfx_file_path, + "-CertStoreLocation", + "Cert:\\" + pfx_certificate_store_location, + "-Password", + "$mypwd"] import_pfx_run = subprocess.run(args=import_pfx_arguments, shell=True, stdout=subprocess.PIPE) if (import_pfx_run.returncode != 0): print ("ERROR: Could not import PFX certificate into Windows store!")