Closed janpio closed 1 year ago
Same problem here with Travis. I posted a question and some more details over here: https://travis-ci.community/t/cannot-add-certificate-to-cert-currentuser-my/5976
Good news, I got this working with GitHub Actions 😊
This is the (short version of the) workflow script I'm using
name: Build for Windows
on: [push]
jobs:
build:
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v1
- name: Install Node.js 12
uses: actions/setup-node@master
with:
node-version: '12.x'
registry-url: 'https://npm.pkg.github.com'
- name: Install Visual Studio 2017
run: choco install visualstudio2017buildtools
- name: Install Visual Studio 2017 Workloads
shell: powershell
run: ./vs2017.ps1
- name: Import code signing certificate
shell: powershell
run: ./certificate.ps1
- name: Install Cordova
run: yarn global add cordova@9
- name: Install dependencies
env:
NODE_AUTH_TOKEN: ${{ secrets.YARN_TOKEN }}
run: yarn install
- name: Build
shell: bash
run: yarn build
- name: Cordova
shell: bash
env:
MSBUILDDIR: '/C/Program Files (x86)/Microsoft Visual Studio/2017/BuildTools/MSBuild/15.0/Bin'
NODE_AUTH_TOKEN: ${{ secrets.YARN_TOKEN }}
run: >
cordova prepare windows &&
cordova build windows --release --archs="x86 x64" --bundle --win --buildConfig=build.json
It runs two PowerShell scripts. One which installs VS2017 and the required dependencies (the GitHub Actions windows environment comes with VS2019 installed which doesn't work for cordova-windows):
Start-Process `
-FilePath "C:\Program Files (x86)\Microsoft Visual Studio\Installer\vs_installer.exe" `
-Wait `
-ArgumentList @( `
"modify",
"--installPath `"C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools`"",
"--add Microsoft.VisualStudio.Component.Windows10SDK",
"--add Microsoft.VisualStudio.Component.Windows10SDK.15063.Desktop",
"--add Microsoft.VisualStudio.Component.Windows10SDK.15063.UWP",
"--add Microsoft.VisualStudio.Workload.WebBuildTools",
"--add Microsoft.VisualStudio.Workload.UniversalBuildTools",
"--norestart",
"--quiet"
)
And one which installs the code signing certificate:
$Pfxpath = './codesigning.pfx'
$Password = ConvertTo-SecureString -String 'secret' -AsPlainText -Force
Import-PfxCertificate -FilePath $Pfxpath -CertStoreLocation Cert:\CurrentUser\My -Password $Password
We are archiving this repository following Apache Cordova's Deprecation Policy. We will not continue to work on this repository. Therefore all issues and pull requests are being closed. Thanks for your contribution.
Is there any CI service that can install and run Cordova Windows apps?
I tried these:
cordova run windows
(and if you disable that check, you getError: The package or bundle is not digitally signed or its signature is corrupted.
)APPX0105: Cannot import the key file 'CordovaApp_TemporaryKey.pfx'. The key file may be password protected. To correct this, try to import the certificate manually into the current user’s personal certificate store.
,Azure Pipelines also runs as Admin, with that check disabled you get this:
On Windows this would also output
Administrator credentials are required to continue. Please accept the UAC prompt and provide your administrator password if asked.
and actually prompt you for Admin permissions.