Closed cmoody closed 5 months ago
The docs made it seem like totp_secret
was not needed unless doing an EV Code Signing. I am using the regular Code Signing certificate but have gone ahead and added totp_secret
. Still the same results.
C:\Windows\system32\cmd.exe -/c D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\CodeSignTool.bat sign -username=*** -*** -totp_secret=*** -input_file_path=D:\a\civitai-link-desktop\civitai-link-desktop\dist\civitai-link-1.10.19-setup.exe -output_dir_path=D:\a\civitai-link-desktop\civitai-link-desktop\dist -malware_block=false
The system cannot find the file specified.
@cmoody I think there is a case that escaped from the tests I wrote while preparing the github action. It may be related to path lengths or some characters. I will do extra tests and get back to you.
Could the version of the JDK be the problem?
if defined code_sign_tool_path (
%code_sign_tool_path%\jdk-11.0.2\bin\java -Xmx1024M -jar %code_sign_tool_path%\jar\code_sign_tool-1.3.0.jar %*
) else (
.\jdk-11.0.2\bin\java -Xmx1024M -jar .\jar\code_sign_tool-1.3.0.jar %*
)
Shell Cmd: cmd.exe -/c
Exec Cmd : D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\CodeSignTool.bat
CodeSigner Command: cmd.exe -/c D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\CodeSignTool.bat sign -username="***" -password="***" -totp_secret="" -input_file_path="D:\a\civitai-link-desktop\civitai-link-desktop\dist\civitai-link-1.10.24-setup.exe" -output_dir_path=D:\a\civitai-link-desktop\civitai-link-desktop\dist -malware_block=false
JDK home: C:\hostedtoolcache\windows\Java_Temurin-Hotspot_jdk\8.0.402-6\x64
JDK version: 0
Trying to resolve the latest version from remote
::group::Print information about available versions
Print information about available versions
corretto-retrieve-available-versions: 37.906ms
Available versions: [10]
8: 8.402.08.1, 11: 11.0.22.7.1, 15: 15.0.2.7.1, 16: 16.0.2.7.1, 17: 17.0.10.7.1, 18: 18.0.2.9.1, 19: 19.0.2.7.1, 20: 20.0.2.10.1, 21: 21.0.2.13.1, 22: 22.0.0.36.2
::endgroup::
Resolved latest version as 11.0.22.7.1
Trying to download...
Downloading Java 11.0.22.7.1 (Corretto) from https://corretto.aws/downloads/resources/11.0.22.7.1/amazon-corretto-11.0.22.7.1-windows-x64-jdk.zip ...
##[debug]Downloading https://corretto.aws/downloads/resources/11.0.22.7.1/amazon-corretto-11.0.22.7.1-windows-x64-jdk.zip
##[debug]Destination D:\a\_temp\12324f4e-2a94-4c66-9e47-cb73fd0d4ec2
##[debug]download complete
Extracting Java archive...
##[debug]Using pwsh at path: C:\Program Files\PowerShell\7\pwsh.exe
"C:\Program Files\PowerShell\7\pwsh.exe" -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command "$ErrorActionPreference = 'Stop' ; try { Add-Type -AssemblyName System.IO.Compression.ZipFile } catch { } ; try { [System.IO.Compression.ZipFile]::ExtractToDirectory('D:\a\_temp\12324f4e-2a94-4c66-9e47-cb73fd0d4ec2', 'D:\a\_temp\1a4b8233-1ac8-460a-af5f-a7d4993e2cf1', $true) } catch { if (($_.Exception.GetType().FullName -eq 'System.Management.Automation.MethodException') -or ($_.Exception.GetType().FullName -eq 'System.Management.Automation.RuntimeException') ){ Expand-Archive -LiteralPath 'D:\a\_temp\12324f4e-2a94-4c66-9e47-cb73fd0d4ec2' -DestinationPath 'D:\a\_temp\1a4b8233-1ac8-460a-af5f-a7d4993e2cf1' -Force } else { throw $_ } } ;"
##[debug]Caching tool Java_Corretto_jdk 11.0.22.7.1 x64
##[debug]source dir: D:\a\_temp\1a4b8233-1ac8-460a-af5f-a7d4993e2cf1\jdk11.0.22_7
##[debug]destination C:\hostedtoolcache\windows\Java_Corretto_jdk\11.0.22.7.1\x64
##[debug]finished caching tool
Java 11.0.22.7.1 was downloaded
Setting Java 11.0.22.7.1 as the default
Downloading that same JDK locally, I see /jdk11.0.22_7/bin/
, but the CodeSignTool.bat
batch script refers to %code_sign_tool_path%\jdk-11.0.2\bin\java
. It looks like the version is looked up dynamically, so that may have been updated recently?
@cmoody I could not reproduce the problem you experienced. However, I made an update to a part that might cause the problem. Can you try signing again with the latest version in the develop branch?
I added debug logging to see if that gives us a little more insight. Ultimately looks like the same issue.
OAUTH2_ENDPOINT=https://login.ssl.com/oauth2/token
CSC_API_ENDPOINT=https://cs.ssl.com/
TSA_URL=http://ts.ssl.com/
TSA_LEGACY_URL=http://ts.ssl.com/legacy to D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\conf\code_sign_tool.properties
Set CODE_SIGN_TOOL_PATH env variable: D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0
Exec Cmd Content: @echo OFF
set code_sign_tool_path=D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0
if defined code_sign_tool_path (
%code_sign_tool_path%\jdk-11.0.2\bin\java -Xmx1024M -jar %code_sign_tool_path%\jar\code_sign_tool-1.3.0.jar %*
) else (
.\jdk-11.0.2\bin\java -Xmx1024M -jar .\jar\code_sign_tool-1.3.0.jar %*
)
Shell Cmd: cmd.exe -/c
Exec Cmd : D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\CodeSignTool.bat
CodeSigner Command: cmd.exe -/c D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\CodeSignTool.bat sign -username="***" -password="***" -totp_secret=*** -input_file_path="D:\a\civitai-link-desktop\civitai-link-desktop\dist\civitai-link-1.10.27-setup.exe" -output_dir_path=D:\a\civitai-link-desktop\civitai-link-desktop\dist -malware_block=false
JDK home: C:\hostedtoolcache\windows\Java_Temurin-Hotspot_jdk\8.0.402-6\x64
JDK version: 0
Trying to resolve the latest version from remote
::group::Print information about available versions
Print information about available versions
Resolved latest version as 11.0.22.7.1
Trying to download...
Downloading Java 11.0.22.7.1 (Corretto) from https://corretto.aws/downloads/resources/11.0.22.7.1/amazon-corretto-11.0.22.7.1-windows-x64-jdk.zip ...
##[debug]Downloading https://corretto.aws/downloads/resources/11.0.22.7.1/amazon-corretto-11.0.22.7.1-windows-x64-jdk.zip
##[debug]Destination D:\a\_temp\ea0028e4-9714-4dff-a0a1-9bc0cc8fb64f
##[debug]download complete
Extracting Java archive...
##[debug]Using pwsh at path: C:\Program Files\PowerShell\7\pwsh.exe
"C:\Program Files\PowerShell\7\pwsh.exe" -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command "$ErrorActionPreference = 'Stop' ; try { Add-Type -AssemblyName System.IO.Compression.ZipFile } catch { } ; try { [System.IO.Compression.ZipFile]::ExtractToDirectory('D:\a\_temp\ea0028e4-9714-4dff-a0a1-9bc0cc8fb64f', 'D:\a\_temp\80f4c81e-d646-4ff6-90e7-8796e9ffe474', $true) } catch { if (($_.Exception.GetType().FullName -eq 'System.Management.Automation.MethodException') -or ($_.Exception.GetType().FullName -eq 'System.Management.Automation.RuntimeException') ){ Expand-Archive -LiteralPath 'D:\a\_temp\ea0028e4-9714-4dff-a0a1-9bc0cc8fb64f' -DestinationPath 'D:\a\_temp\80f4c81e-d646-4ff6-90e7-8796e9ffe474' -Force } else { throw $_ } } ;"
##[debug]Caching tool Java_Corretto_jdk 11.0.22.7.1 x64
##[debug]source dir: D:\a\_temp\80f4c81e-d646-4ff6-90e7-8796e9ffe474\jdk11.0.22_7
##[debug]destination C:\hostedtoolcache\windows\Java_Corretto_jdk\11.0.22.7.1\x64
##[debug]finished caching tool
Java 11.0.22.7.1 was downloaded
Setting Java 11.0.22.7.1 as the default
Malware scan is: disabled
C:\Windows\system32\cmd.exe -/c D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\CodeSignTool.bat sign -username=*** -*** -totp_secret=*** -input_file_path=D:\a\civitai-link-desktop\civitai-link-desktop\dist\civitai-link-1.10.27-setup.exe -output_dir_path=D:\a\civitai-link-desktop\civitai-link-desktop\dist -malware_block=false
The system cannot find the file specified.
Error: The process 'C:\Windows\system32\cmd.exe' failed with exit code 1
##[debug]Node Action run completed with exit code 1
##[debug]CODESIGNTOOL_PATH='D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0'
##[debug]CODE_SIGN_TOOL_PATH='D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0'
##[debug]JAVA_HOME='C:\hostedtoolcache\windows\Java_Corretto_jdk\11.0.22.7.1\x64'
##[debug]JAVA_HOME_11_X64='C:\hostedtoolcache\windows\Java_Corretto_jdk\11.0.22.7.1\x64'
##[debug]JAVA_VERSION='11'
##[debug]Set output distribution = Corretto
##[debug]Set output path = C:\hostedtoolcache\windows\Java_Corretto_jdk\11.0.22.7.1\x64
##[debug]Set output version = 11.0.22.7.1
##[debug]Finishing: Sign Artifact with CodeSignTool```
@bayrakmustafa when you are running your tests are you setting the Java Version as part of the build? https://www.ssl.com/how-to/cloud-code-signing-integration-with-github-actions/ has an Install Maven and Java
step that Im wondering if its setting the version for things to use and we are finding the wrong path.
@cmoody There is a test I wrote at https://github.com/SSLcom/esigner-codesign/blob/develop/.github/workflows/test.yml#L133. Actually, I don't do anything different from you. It comes with Java in Windows setup. There shouldn't be a situation where the signing command cannot find Java because it uses that Java. I will change the signing command. I will update to use the Java I just installed, not the Java in the Windows setup. I will inform you again when the update is done.
@cmoody I updated a few places where there might be problems. I also added a log for windows. Can you test the latest version in the develop branch by adding the following parameter?
signing_method: v2
@bayrakmustafa same issue
Java 11.0.22.7.1 was downloaded
Setting Java 11.0.22.7.1 as the default
Malware scan is: disabled
C:\Windows\system32\cmd.exe -/c D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\CodeSignTool.bat sign -username=*** -*** -totp_secret=*** -input_file_path=D:\a\civitai-link-desktop\civitai-link-desktop\dist\civitai-link-1.10.28-setup.exe -output_dir_path=D:\a\civitai-link-desktop\civitai-link-desktop\dist -malware_block=false
The system cannot find the file specified.
Error: The process 'C:\Windows\system32\cmd.exe' failed with exit code 1
The system cannot find the file specified.
do we know where this error comes from? I see the files in the path when I use dir ${{ github.workspace }}
I do see you have steps to copy files from the build to the workspace. Wondering if theres some issue around that where the internal paths dont line up. Grasping at straws at the moment.
I've been helping @cmoody debug this and even forked the GH action, which has lead me to believe it is one of the arguments with the paths, but I'm not sure which one/why.
Changing the command that gets executed from CodeSignTool.bat sign -username=...
to CodeSignTool.bat sign -help
confirmed that the JDK is installed and the batch script can run the JAR successfully:
D:\a\civitai-link-desktop\civitai-link-desktop>set code_sign_tool_path=D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0
D:\a\civitai-link-desktop\civitai-link-desktop>if defined code_sign_tool_path (
dir D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0
dir D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\jdk-11.0.2
dir D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\jdk-11.0.2\bin
D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\jdk-11.0.2\bin\java.exe -jar D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\jar\code_sign_tool-1.3.0.jar sign -help
) else (.\jdk-11.0.2\bin\java.exe -jar .\jar\code_sign_tool-1.3.0.jar sign -help )
Volume in drive D is Temporary Storage
Volume Serial Number is 204B-68C1
Directory of D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0
03/21/2024 06:05 PM <DIR> .
03/21/2024 06:05 PM <DIR> ..
03/21/2024 06:05 PM 415 CodeSignTool.bat
03/21/2024 06:05 PM <DIR> conf
03/21/2024 06:05 PM <DIR> jar
03/21/2024 06:05 PM <DIR> jdk-11.0.2
03/21/2024 06:05 PM <DIR> logs
06/13/2023 09:01 PM 1,021 release-notes.txt
2 File(s) 1,436 bytes
6 Dir(s) 76,146,909,184 bytes free
Volume in drive D is Temporary Storage
Volume Serial Number is 204B-68C1
and
Usage: CodeSignTool sign [-hV] [-malware_block] [-override]
[-credential_id=<credentialId>]
-input_file_path=<inputFilePath>
[-output_dir_path=<outputDirPath>]
-*** [-program_name=<programName>]
[-totp_secret=<totpSecret>] -username=<username>
Sign code
-credential_id=<credentialId>
Credential ID
-h, --help Show this help message and exit.
-input_file_path=<inputFilePath>
Path of the code object to be signed
-malware_block Overrides the malware scan settings configured on
Would it be possible for the Java code to print the path that is not found, so that we can confirm it's not an issue with backslashes/quotes being translated incorrectly?
I added a check within the JS wrapper to see if the -input_file_path
exists when that runs, like so:
else if (inputKey == constants_1.INPUT_FILE_PATH) {
input = path_1.default.normalize(input);
try {
const stats = fs.statSync(input);
console.log('input file path stats:', stats);
} catch (err) {
console.error('error checking input file path:', err);
}
command = `${command} -input_file_path="${input}"`;
}
and the input file does exist at that point:
##[debug]Run CodeSigner
##[debug]Running ESigner.com CodeSign Action ====>
input file path stats: Stats {
dev: 1348902718,
mode: 33206,
nlink: 1,
uid: 0,
gid: 0,
rdev: 0,
blksize: 4096,
ino: 562949953425515,
size: 9563[80](https://github.com/civitai/civitai-link-desktop/actions/runs/8378457401/job/22949113464#step:8:81)74,
blocks: 1[86](https://github.com/civitai/civitai-link-desktop/actions/runs/8378457401/job/22949113464#step:8:87)800,
atimeMs: 1711047333007.5652,
mtimeMs: 1711047333007.5652,
ctimeMs: 1711047333007.5652,
birthtimeMs: 1711047329427.4114,
atime: 2024-03-21T18:55:33.008Z,
mtime: 2024-03-21T18:55:33.008Z,
ctime: 2024-03-21T18:55:33.008Z,
birthtime: 2024-03-21T18:55:29.427Z
}
CodeSignTool output path D:\a\civitai-link-desktop\civitai-link-desktop\dist already exist
I was careful to do the fs.stat
test after the path_1.default.normalize
, so it should be tested the same path that is provided to the JAR later, but one of them says it exists and the other claims it does not (within the same action, step, etc).
@bayrakmustafa I did try something that was interesting. I copied the creation of that ps1 file and then tried to sign it. Got the same results.
name: Build/release Electron app
on:
push:
tags:
- v*.*.*
jobs:
release:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
steps:
- name: Check out Git repository
uses: actions/checkout@v4
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 18
- name: Install Dependencies
run: npm install
- name: build-linux
if: matrix.os == 'ubuntu-latest'
run: npm run build:linux
- name: build-mac
if: matrix.os == 'macos-latest'
run: npm run build:mac
- name: build-win
if: matrix.os == 'windows-latest'
run: npm run build:win
- name: Create Input file for test signing
shell: bash
run: |
mkdir -p ${GITHUB_WORKSPACE}/example
echo 'Write-Output -InputObject "Happy Signing From ESigner.com!"' > ${GITHUB_WORKSPACE}/example/codesign1.ps1
- name: Test Signing
if: matrix.os == 'windows-latest'
uses: sslcom/esigner-codesign@develop
with:
command: sign
username: ${{ secrets.ES_USERNAME }}
password: ${{ secrets.ES_PASSWORD }}
credential_id: ${{ secrets.CREDENTIAL_ID }}
totp_secret: ${{ secrets.ES_TOTP_SECRET }}
file_path: ${GITHUB_WORKSPACE}/example/codesign1.ps1
malware_block: false
override: true
environment_name: PROD
clean_logs: true
- name: release
uses: softprops/action-gh-release@v1
if: always()
with:
draft: true
files: |
dist/*.exe
dist/*.zip
dist/*.dmg
dist/*.AppImage
dist/*.snap
dist/*.deb
dist/*.rpm
dist/*.tar.gz
dist/*.yml
dist/*.blockmap
env:
GITHUB_TOKEN: ${{ secrets.ACCESS_TOKEN }}
C:\Windows\system32\cmd.exe -/c D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\CodeSignTool.bat sign -username=*** -*** -credential_id=*** -totp_secret=*** -input_file_path=D:\a\civitai-link-desktop\civitai-link-desktop\example\codesign1.ps1 -override=true -malware_block=false
The system cannot find the file specified.
Error: The process 'C:\Windows\system32\cmd.exe' failed with exit code 1
I thought maybe it was node versions so Ive checked those. Nothing looks too different there. The only thing I changed really was this environment_name: PROD
instead of it being TEST. Not sure if that impacts any path issues.
Im going to fork the repo tonight and try to see if I can recreate the same failure to help narrow this down.
@cmoody I tested the yml file you sent by converting it to the figure below, and I still had no problems. There seems to be a very interesting situation. Can you test it with the yml below?
I also made an update to the signing command. Could you try again by adding signing_method: v2
to your yml file? I completely eliminated the batch file. Signing is done directly via java command. Here is a example: https://github.com/SSLcom/esigner-codesign/blob/develop/.github/workflows/test.yml#L207
name: Build/release Electron app
on: [push]
jobs:
release:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
steps:
- name: Check out Git repository
uses: actions/checkout@v4
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 18
- name: Create Input file for test signing
shell: bash
run: |
mkdir -p ${GITHUB_WORKSPACE}/example
echo 'Write-Output -InputObject "Happy Signing From ESigner.com!"' > ${GITHUB_WORKSPACE}/example/codesign1.ps1
- name: Test Signing
if: matrix.os == 'windows-latest'
uses: sslcom/esigner-codesign@develop
with:
command: sign
username: ${{ secrets.ES_USERNAME }}
password: ${{ secrets.ES_PASSWORD }}
credential_id: ${{ secrets.CREDENTIAL_ID }}
totp_secret: ${{ secrets.ES_TOTP_SECRET }}
file_path: ${GITHUB_WORKSPACE}/example/codesign1.ps1
malware_block: false
override: true
environment_name: PROD
clean_logs: true
Truly stumped. I created a new workflow with just what you have above and get the same error.
Exec Cmd : D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\CodeSignTool.bat
CodeSigner Command: cmd.exe -/c D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\CodeSignTool.bat sign -username="***" -password="***" -credential_id="***" -totp_secret="***" -input_file_path="D:\a\civitai-link-desktop\civitai-link-desktop\example\codesign1.ps1" -override=true -malware_block=false
Malware scan is: disabled
C:\Windows\system32\cmd.exe -/c D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\CodeSignTool.bat sign -username=*** -*** -credential_id=*** -totp_secret=*** -input_file_path=D:\a\civitai-link-desktop\civitai-link-desktop\example\codesign1.ps1 -override=true -malware_block=false
The system cannot find the file specified.
@cmoody Can you share the full log after adding the signing_method: v2
option to yml? Here is an example https://github.com/SSLcom/esigner-codesign/blob/develop/.github/workflows/test.yml#L56
##[debug]Evaluating condition for step: 'Test Signing'
##[debug]Evaluating: (success() && (matrix.os == 'windows-latest'))
##[debug]Evaluating And:
##[debug]..Evaluating success:
##[debug]..=> true
##[debug]..Evaluating Equal:
##[debug]....Evaluating Index:
##[debug]......Evaluating matrix:
##[debug]......=> Object
##[debug]......Evaluating String:
##[debug]......=> 'os'
##[debug]....=> 'windows-latest'
##[debug]....Evaluating String:
##[debug]....=> 'windows-latest'
##[debug]..=> true
##[debug]=> true
##[debug]Expanded: (true && ('windows-latest' == 'windows-latest'))
##[debug]Result: true
##[debug]Starting: Test Signing
##[debug]Loading inputs
##[debug]Evaluating: secrets.ES_USERNAME
##[debug]Evaluating Index:
##[debug]..Evaluating secrets:
##[debug]..=> Object
##[debug]..Evaluating String:
##[debug]..=> 'ES_USERNAME'
##[debug]=> '***'
##[debug]Result: '***'
##[debug]Evaluating: secrets.ES_PASSWORD
##[debug]Evaluating Index:
##[debug]..Evaluating secrets:
##[debug]..=> Object
##[debug]..Evaluating String:
##[debug]..=> 'ES_PASSWORD'
##[debug]=> '***'
##[debug]Result: '***'
##[debug]Evaluating: secrets.CREDENTIAL_ID
##[debug]Evaluating Index:
##[debug]..Evaluating secrets:
##[debug]..=> Object
##[debug]..Evaluating String:
##[debug]..=> 'CREDENTIAL_ID'
##[debug]=> '***'
##[debug]Result: '***'
##[debug]Evaluating: secrets.ES_TOTP_SECRET
##[debug]Evaluating Index:
##[debug]..Evaluating secrets:
##[debug]..=> Object
##[debug]..Evaluating String:
##[debug]..=> 'ES_TOTP_SECRET'
##[debug]=> '***'
##[debug]Result: '***'
##[debug]Loading env
Run sslcom/esigner-codesign@develop
with:
command: sign
username: ***
password: ***
credential_id: ***
totp_secret: ***
file_path: ${GITHUB_WORKSPACE}/example/codesign1.ps1
malware_block: false
override: true
environment_name: TEST
clean_logs: true
signing_method: v[2](https://github.com/civitai/civitai-link-desktop/actions/runs/8381556518/job/22953351552?pr=13#step:5:2)
jvm_max_memory: 1024M
##[debug]Run CodeSigner
##[debug]Running ESigner.com CodeSign Action ====>
Input Commands: sign -username="***" -password="***" -credential_id="***" -totp_secret="***" -input_file_path="D:\a\civitai-link-desktop\civitai-link-desktop\example\codesign1.ps1" -override=true -malware_block=false
JDK home: C:\hostedtoolcache\windows\Java_Temurin-Hotspot_jdk\8.0.402-6\x64
JDK version: 0
Trying to resolve the latest version from remote
::group::Print information about available versions
Print information about available versions
corretto-retrieve-available-versions: 176.284ms
Available versions: [10]
8: 8.402.08.1, 11: 11.0.22.7.1, 15: 15.0.2.7.1, 16: 16.0.2.7.1, 17: 17.0.10.7.1, 18: 18.0.2.9.1, 19: 19.0.2.7.1, 20: 20.0.2.10.1, 21: 21.0.2.1[3](https://github.com/civitai/civitai-link-desktop/actions/runs/8381556518/job/22953351552?pr=13#step:5:3).1, 22: 22.0.0.36.2
::endgroup::
Resolved latest version as 11.0.22.7.1
Trying to download...
Downloading Java 11.0.22.7.1 (Corretto) from https://corretto.aws/downloads/resources/11.0.22.7.1/amazon-corretto-11.0.22.7.1-windows-x6[4](https://github.com/civitai/civitai-link-desktop/actions/runs/8381556518/job/22953351552?pr=13#step:5:4)-jdk.zip ...
##[debug]Downloading https://corretto.aws/downloads/resources/11.0.22.7.1/amazon-corretto-11.0.22.7.1-windows-x64-jdk.zip
##[debug]Destination D:\a\_temp\01d747ba-a0de-4aa1-bcc3-c[5](https://github.com/civitai/civitai-link-desktop/actions/runs/8381556518/job/22953351552?pr=13#step:5:5)7ba49[6](https://github.com/civitai/civitai-link-desktop/actions/runs/8381556518/job/22953351552?pr=13#step:5:6)5988
##[debug]download complete
Extracting Java archive...
##[debug]Using pwsh at path: C:\Program Files\PowerShell\[7](https://github.com/civitai/civitai-link-desktop/actions/runs/8381556518/job/22953351552?pr=13#step:5:7)\pwsh.exe
"C:\Program Files\PowerShell\7\pwsh.exe" -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command "$ErrorActionPreference = 'Stop' ; try { Add-Type -AssemblyName System.IO.Compression.ZipFile } catch { } ; try { [System.IO.Compression.ZipFile]::ExtractToDirectory('D:\a\_temp\01d747ba-a0de-4aa1-bcc3-c57ba49659[8](https://github.com/civitai/civitai-link-desktop/actions/runs/8381556518/job/22953351552?pr=13#step:5:8)8', 'D:\a\_temp\0d61a[9](https://github.com/civitai/civitai-link-desktop/actions/runs/8381556518/job/22953351552?pr=13#step:5:9)65-59bf-4cc2-b077-c8ce8bed0f70', $true) } catch { if (($_.Exception.GetType().FullName -eq 'System.Management.Automation.MethodException') -or ($_.Exception.GetType().FullName -eq 'System.Management.Automation.RuntimeException') ){ Expand-Archive -LiteralPath 'D:\a\_temp\01d747ba-a0de-4aa1-bcc3-c57ba4965988' -DestinationPath 'D:\a\_temp\0d61a965-59bf-4cc2-b077-c8ce8bed0f70' -Force } else { throw $_ } } ;"
##[debug]Caching tool Java_Corretto_jdk 11.0.22.7.1 x64
##[debug]source dir: D:\a\_temp\0d61a965-59bf-4cc2-b077-c8ce8bed0f70\jdk11.0.22_7
##[debug]destination C:\hostedtoolcache\windows\Java_Corretto_jdk\11.0.22.7.1\x64
##[debug]finished caching tool
Java 11.0.22.7.1 was downloaded
Setting Java 11.0.22.7.1 as the default
##[debug]File: .editorconfig
##[debug]File: .env.example
##[debug]File: .env.production
##[debug]File: .eslintignore
##[debug]File: .eslintrc.cjs
##[debug]File: .git
##[debug]File: .github
##[debug]File: .gitignore
##[debug]File: .npmrc
##[debug]File: .prettierignore
##[debug]File: .prettierrc
##[debug]File: .vscode
##[debug]File: build
##[debug]File: components.json
##[debug]File: dev-app-update.yml
##[debug]File: electron-builder.yml
##[debug]File: electron.vite.config.ts
##[debug]File: example
##[debug]File: package-lock.json
##[debug]File: package.json
##[debug]File: postcss.config.js
##[debug]File: README.md
##[debug]File: resources
##[debug]File: src
##[debug]File: tailwind.config.js
##[debug]File: tsconfig.json
##[debug]File: tsconfig.node.json
##[debug]File: tsconfig.web.json
Created CodeSignTool base path D:\a\civitai-link-desktop\civitai-link-desktop\codesign
Downloading CodeSignTool from https://github.com/SSLcom/CodeSignTool/releases/download/v1.3.0/CodeSignTool-v1.3.0-windows.zip
##[debug]Downloading https://github.com/SSLcom/CodeSignTool/releases/download/v1.3.0/CodeSignTool-v1.3.0-windows.zip
##[debug]Destination D:\a\_temp\b57c4b13-1a29-46f3-80be-7caf87758759
##[debug]download complete
##[debug]Using pwsh at path: C:\Program Files\PowerShell\7\pwsh.exe
"C:\Program Files\PowerShell\7\pwsh.exe" -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command "$ErrorActionPreference = 'Stop' ; try { Add-Type -AssemblyName System.IO.Compression.ZipFile } catch { } ; try { [System.IO.Compression.ZipFile]::ExtractToDirectory('D:\a\_temp\b57c4b13-1a29-46f3-80be-7caf87758759', 'D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0', $true) } catch { if (($_.Exception.GetType().FullName -eq 'System.Management.Automation.MethodException') -or ($_.Exception.GetType().FullName -eq 'System.Management.Automation.RuntimeException') ){ Expand-Archive -LiteralPath 'D:\a\_temp\b57c4b13-1a29-46f3-80be-7caf87758759' -DestinationPath 'D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0' -Force } else { throw $_ } } ;"
Extract CodeSignTool from download path D:\a\_temp\b57c4b13-1a29-46f3-80be-7caf87758759 to D:\a\civitai-link-desktop\civitai-link-desktop\codesign
Archive name: CodeSignTool-v1.3.0, D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0
##[debug]File: CodeSignTool.bat
##[debug]File: conf
##[debug]File: jar
##[debug]File: jdk-11.0.2
##[debug]File: logs
##[debug]File: release-notes.txt
Write CodeSignTool config file CLIENT_ID=qOUeZCCzSqgA93acB3LYq6lBNjgZdiOxQc-KayC3UMw
OAUTH2_ENDPOINT=https://oauth-sandbox.ssl.com/oauth2/token
CSC_API_ENDPOINT=https://cs-try.ssl.com
TSA_URL=http://ts.ssl.com
TSA_LEGACY_URL=http://ts.ssl.com/legacy to D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\conf\code_sign_tool.properties
Set CODE_SIGN_TOOL_PATH env variable: D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0
Shell Cmd: cmd.exe -/c
Exec Cmd : ${{ JAVA_HOME }} -Xmx[10](https://github.com/civitai/civitai-link-desktop/actions/runs/8381556518/job/22953351552?pr=13#step:5:10)24M -jar D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\jar\code_sign_tool-1.3.0.jar
CodeSigner Command: cmd.exe -/c C:\hostedtoolcache\windows\Java_Temurin-Hotspot_jdk\8.0.402-6\x64/bin/java -Xmx1024M -jar D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\jar\code_sign_tool-1.3.0.jar sign -username="***" -password="***" -credential_id="***" -totp_secret="***" -input_file_path="D:\a\civitai-link-desktop\civitai-link-desktop\example\codesign1.ps1" -override=true -malware_block=false
Malware scan is: disabled
C:\Windows\system32\cmd.exe -/c C:\hostedtoolcache\windows\Java_Temurin-Hotspot_jdk\8.0.402-6\x64/bin/java -Xmx1024M -jar D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0\jar\code_sign_tool-1.3.0.jar sign -username=*** -*** -credential_id=*** -totp_secret=*** -input_file_path=D:\a\civitai-link-desktop\civitai-link-desktop\example\codesign1.ps1 -override=true -malware_block=false
The system cannot find the file specified.
Error: The process 'C:\Windows\system32\cmd.exe' failed with exit code 1
##[debug]Node Action run completed with exit code 1
##[debug]JAVA_HOME='C:\hostedtoolcache\windows\Java_Corretto_jdk\[11](https://github.com/civitai/civitai-link-desktop/actions/runs/8381556518/job/22953351552?pr=13#step:5:11).0.[22](https://github.com/civitai/civitai-link-desktop/actions/runs/8381556518/job/22953351552?pr=13#step:5:22).7.1\x[64](https://github.com/civitai/civitai-link-desktop/actions/runs/8381556518/job/22953351552?pr=13#step:5:64)'
##[debug]JAVA_HOME_11_X64='C:\hostedtoolcache\windows\Java_Corretto_jdk\11.0.22.7.1\x64'
##[debug]JAVA_VERSION='11'
##[debug]CODESIGNTOOL_PATH='D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0'
##[debug]CODE_SIGN_TOOL_PATH='D:\a\civitai-link-desktop\civitai-link-desktop\codesign\CodeSignTool-v1.3.0'
##[debug]Set output distribution = Corretto
##[debug]Set output path = C:\hostedtoolcache\windows\Java_Corretto_jdk\11.0.22.7.1\x64
##[debug]Set output version = 11.0.22.7.1
##[debug]Finishing: Test Signing
@cmoody I couldn't find anything about the problem. I didn't experience any problems in my own tests. Could you please try creating a repo from scratch and testing it there? It might be something to do with the repo name or anything else, I'm not sure. Truly stumped
@cmoody I forked your project. You can look at https://github.com/bayrakmustafa/civitai-link-desktop. I was able to build successfully and sign the exe file. If you want, you can examine the yml file. I didn't experience any problems. Does your problem still persist?
@bayrakmustafa sorry for the late reply. I started signing locally just to get launched. The only thing thats changed is I made the repo public since its going to be open source. Would there be an issue with that difference?
@cmoody When I check https://github.com/civitai/civitai-link-desktop/pull/13 I see that you are still having problems. I forked the test branch and tested again. Unfortunately, I'm okay with it too. Please, there is a yml file containing demo user information at https://github.com/bayrakmustafa/civitai-link-desktop/blob/test/.github/workflows/release.yml. Can you test with this file? Maybe there is something wrong with environment_name being PROD.
https://github.com/civitai/civitai-link-desktop/pull/15 https://github.com/civitai/civitai-link-desktop/actions/runs/8470030027/job/23206772712
Looks like all of that works. Is there a setting in ssl.com for environment or is it just based on the type of ssl cert you get?
@cmoody I added you as an authorized person to the https://github.com/eSignerCKA/civitai-link-desktop repo. Do you have a chance to change the secret values at https://github.com/eSignerCKA/civitai-link-desktop/settings/secrets/actions with information about your own prod certificate? Since you will write it in Secrets, I will not have the chance to see these values. Once we detect and fix the problem, we delete the repo.
@bayrakmustafa sorry for the delay. Been working around everything manually so we can get a build out but am back to start looking at this. Ive gone ahead and added everything to the secrets on that repo.
@cmoody It's not important. I started working to solve the problem
@cmoody I think I've identified the problem. But I haven't found a solution yet. The problem seems to be caused by special characters in the SSL.com account password. For a quick solution, you can reset your SSL.com account password. If you set a new password by paying attention to special characters, your problem will be solved. If you can then send your old password to mustafa.bayrak@windowslive.com, I will work on the special characters in the password.
@cmoody I solved the problem. Can you test again? (https://github.com/eSignerCKA/civitai-link-desktop/actions/runs/8529193622/job/23364439496)
Looks like the signing step is working now! Thanks for the help. https://github.com/civitai/civitai-link-desktop/actions/runs/8529787442/job/23366275422 its failing because of another step but the signing step looks to be good.
Looks like the code signing is "successful" in that the process works and it says it was successful but when you go to download the exe its not signed. https://github.com/civitai/civitai-link-desktop/actions/runs/8607582442/job/23588337302
@cmoody I checked the exe file by adding the upload process at https://github.com/eSignerCKA/civitai-link-desktop/actions/runs/8638202336. You can download and check the uploaded file from the artifacts section. It appears signed. Can you check the step where you upload the signed file? Could you be working with the wrong file?
@cmoody I think there is a case that escaped from the tests I wrote while preparing the github action. It may be related to path lengths or some characters. I will do extra tests and get back to you.
Hi, it seems the bug is very obvious, in your latest 1.3.1 windows version, the folder does not contain the jdk at all... And your batch script try to reference the jdk inside the dir: Please fix this soon... It's a fatal bug
@niudai Which link did you download from? Can you try by downloading it from https://github.com/SSLcom/CodeSignTool/releases/download/v1.3.1/CodeSignTool-v1.3.1-windows.zip? It's in the jdk.
I am building an Electron app. I have a github workflow that works to build apps. I am now trying to add in the code signing step. Everything looks correct, including the outputs for where files are. However once it gets to the point to run
CodeSignTool.bat
it fails. Im hoping I am just overlooking a simple path or name.Github Workflow
Sign Artifact with CodeSignTool
I even added a step before to list on files in the directory. I saw all of the built Windows files but still get
The system cannot find the file specified.