Skip to content
This repository was archived by the owner on Aug 30, 2024. It is now read-only.

Commit ad58071

Browse files
authored
Update package.yml (#151)
test of signing files
1 parent 2645bb6 commit ad58071

File tree

1 file changed

+49
-3
lines changed

1 file changed

+49
-3
lines changed

.github/workflows/package.yml

Lines changed: 49 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,30 @@ jobs:
2828
- name: Build
2929
working-directory: ${{github.workspace}}/build
3030
run: cmake --build . -t DolbyIO.Comms.Native
31+
- if: ${{matrix.os == 'macos-latest'}}
32+
env:
33+
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
34+
P12_PASSWORD: ${{ secrets.P12_PASSWORD }}
35+
BUILD_PROVISION_PROFILE_BASE64: ${{ secrets.BUILD_PROVISION_PROFILE_BASE64 }}
36+
KEYCHAIN_PASSWORD: ${{ secrets.KEYCHAIN_PASSWORD }}
37+
IAPI_DOTNET_APP_SPECYFIC_PASSWORD: ${{ secrets.IAPI_DOTNET_APP_SPECYFIC_PASSWORD }}
38+
working-directory: ${{github.workspace}}/build/bin
39+
run: |
40+
# create variables
41+
CERTIFICATE_PATH=$RUNNER_TEMP/build_certificate.p12
42+
KEYCHAIN_PATH=$RUNNER_TEMP/app-signing.keychain-db
43+
# import certificate and provisioning profile from secrets
44+
echo -n "$BUILD_CERTIFICATE_BASE64" | base64 --decode -o $CERTIFICATE_PATH
45+
# create temporary keychain
46+
security create-keychain -p "$KEYCHAIN_PASSWORD" $KEYCHAIN_PATH
47+
security set-keychain-settings -lut 21600 $KEYCHAIN_PATH
48+
security unlock-keychain -p "$KEYCHAIN_PASSWORD" $KEYCHAIN_PATH
49+
# import certificate to keychain
50+
security import $CERTIFICATE_PATH -P "$P12_PASSWORD" -A -t cert -f pkcs12 -k $KEYCHAIN_PATH
51+
security list-keychain -d user -s $KEYCHAIN_PATH
52+
xcrun notarytool store-credentials "dotnet-sdk-notarization-profile" --apple-id "iapi@dolby.com" --team-id B55NRA8BRW --password "${IAPI_DOTNET_APP_SPECYFIC_PASSWORD}"
53+
codesign --force --strict --timestamp --sign 'Developer ID Application: VOXEET INC. (B55NRA8BRW)' *.dylib
54+
3155
3256
- name: Pack
3357
working-directory: ${{github.workspace}}/build
@@ -43,7 +67,6 @@ jobs:
4367
& 'C:/Program Files (x86)/Windows Kits/10/bin/10.0.17763.0/x86/signtool.exe' sign /f ./certificate.pfx /p ${{ secrets.WINDOWS_CERTIFICATE_PASSWORD}} /t http://timestamp.digicert.com/ dolbyio_comms_sdk.dll
4468
& 'C:/Program Files (x86)/Windows Kits/10/bin/10.0.17763.0/x86/signtool.exe' sign /f ./certificate.pfx /p ${{ secrets.WINDOWS_CERTIFICATE_PASSWORD}} /t http://timestamp.digicert.com/ dolbyio_comms_media.dll
4569
Remove-Item -Recurse -Force certificate.pfx
46-
4770
- uses: actions/upload-artifact@v3
4871
with:
4972
name: nugets
@@ -57,6 +80,27 @@ jobs:
5780
with:
5881
submodules: true
5982
lfs: true
83+
- name: Install the Apple certificate and notarization profile
84+
env:
85+
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
86+
P12_PASSWORD: ${{ secrets.P12_PASSWORD }}
87+
BUILD_PROVISION_PROFILE_BASE64: ${{ secrets.BUILD_PROVISION_PROFILE_BASE64 }}
88+
KEYCHAIN_PASSWORD: ${{ secrets.KEYCHAIN_PASSWORD }}
89+
IAPI_DOTNET_APP_SPECYFIC_PASSWORD: ${{ secrets.IAPI_DOTNET_APP_SPECYFIC_PASSWORD }}
90+
run: |
91+
# create variables
92+
CERTIFICATE_PATH=$RUNNER_TEMP/build_certificate.p12
93+
KEYCHAIN_PATH=$RUNNER_TEMP/app-signing.keychain-db
94+
# import certificate and provisioning profile from secrets
95+
echo -n "$BUILD_CERTIFICATE_BASE64" | base64 --decode -o $CERTIFICATE_PATH
96+
# create temporary keychain
97+
security create-keychain -p "$KEYCHAIN_PASSWORD" $KEYCHAIN_PATH
98+
security set-keychain-settings -lut 21600 $KEYCHAIN_PATH
99+
security unlock-keychain -p "$KEYCHAIN_PASSWORD" $KEYCHAIN_PATH
100+
# import certificate to keychain
101+
security import $CERTIFICATE_PATH -P "$P12_PASSWORD" -A -t cert -f pkcs12 -k $KEYCHAIN_PATH
102+
security list-keychain -d user -s $KEYCHAIN_PATH
103+
xcrun notarytool store-credentials "dotnet-sdk-notarization-profile" --apple-id "iapi@dolby.com" --team-id B55NRA8BRW --password "${IAPI_DOTNET_APP_SPECYFIC_PASSWORD}"
60104
- uses: ./.github/actions/configure
61105
- uses: actions/download-artifact@v3
62106
with:
@@ -75,7 +119,6 @@ jobs:
75119
echo "${{ secrets.WINDOWS_CERTIFICATE }}" | base64 --decode > certificate.pfx
76120
dotnet nuget sign DolbyIO.Comms.Sdk.*.nupkg --certificate-path ./certificate.pfx --certificate-password ${{ secrets.WINDOWS_CERTIFICATE_PASSWORD}} --timestamper http://timestamp.digicert.com/
77121
rm certificate.pfx
78-
79122
- uses: actions/upload-artifact@v3
80123
with:
81124
name: nugets
@@ -91,7 +134,10 @@ jobs:
91134

92135
- run: 7z x "${{github.workspace}}/build/bin/DolbyIO.Comms.Sdk.Runtime.*.nupkg" -o${{github.workspace}}/build "runtimes/*"
93136
working-directory: ${{github.workspace}}/build
94-
137+
138+
- name: Sign osx libs
139+
run: |
140+
codesign --force --strict --timestamp --sign 'Developer ID Application: VOXEET INC. (B55NRA8BRW)' ${{github.workspace}}/build/runtimes/osx-universal/native/*.dylib
95141
- uses: actions/upload-artifact@v3
96142
with:
97143
name: dolbyio-dotnet-binaries

0 commit comments

Comments
 (0)