Compare commits

...

29 Commits

Author SHA1 Message Date
Max Goedjen
61b245c7b0 Automatic for debug builds 2022-11-20 16:40:04 -08:00
Max Goedjen
6a4d96ac02 Test disable entirely for pre-export 2022-11-20 16:30:56 -08:00
Max Goedjen
b2a8928cbb Fix export path 2022-11-20 16:03:58 -08:00
Max Goedjen
93114a00de ExportPath 2022-11-20 15:42:02 -08:00
Max Goedjen
5d38da1f4b Specify team id 2022-11-20 15:37:58 -08:00
Max Goedjen
c917d6067a Skip install for agent to fix archiving to generic archive 2022-11-20 15:37:53 -08:00
Max Goedjen
7c8d488ef3 Fix export options path 2022-10-27 23:54:11 -07:00
Max Goedjen
d3e3147cc1 generic 2022-10-27 23:50:16 -07:00
Max Goedjen
7715ab4d2b Tweak 2022-10-27 23:48:26 -07:00
Max Goedjen
b78aa7f0ec Set destination 2022-10-27 23:40:57 -07:00
Max Goedjen
34703060b8 Merge 2022-10-27 23:34:25 -07:00
Max Goedjen
6dd4088d2f Secrets duh 2022-10-26 01:46:11 -07:00
Max Goedjen
53087c0439 Secrets duh 2022-10-26 01:43:19 -07:00
Max Goedjen
f32a3a0abd Just hardcoded 2022-10-26 01:39:00 -07:00
Max Goedjen
8e3d53b5c9 Tests 2022-10-26 01:37:47 -07:00
Max Goedjen
29a9ae9dc9 Simplify paths 2022-10-26 01:30:16 -07:00
Max Goedjen
22832b474f Reenable env 2022-10-26 01:26:36 -07:00
Max Goedjen
38f48e74b7 Specify path 2022-10-26 00:59:59 -07:00
Max Goedjen
17f5797552 Disale test 2022-10-26 00:57:25 -07:00
Max Goedjen
8255cbb0e9 move up provis and config 2022-10-26 00:57:06 -07:00
Max Goedjen
ab9f8b5600 Switch to latest 2022-10-26 00:56:17 -07:00
Max Goedjen
e97601ad9c Disable env set 2022-10-26 00:55:46 -07:00
Max Goedjen
200cd6ea9d Switch to latest 2022-10-26 00:55:01 -07:00
Max Goedjen
2bd8b008ca Disable env set 2022-10-26 00:54:07 -07:00
Max Goedjen
23611877ca Back to 11 runner 2022-10-26 00:51:50 -07:00
Max Goedjen
32ebb7f6ec . 2022-10-26 00:43:11 -07:00
Max Goedjen
0b2b9f8a13 Export options 2022-10-26 00:40:17 -07:00
Max Goedjen
71280fd7a5 Updates 2022-10-26 00:40:09 -07:00
Max Goedjen
6c6364f92c Turn on automatic everything 2022-10-26 00:21:29 -07:00
4 changed files with 62 additions and 47 deletions

View File

@@ -1,22 +1,5 @@
#!/bin/bash
# Import certificate and private key
echo $SIGNING_DATA | base64 -d -o Signing.p12
security create-keychain -p ci ci.keychain
security default-keychain -s ci.keychain
security list-keychains -s ci.keychain
security import ./Signing.p12 -k ci.keychain -P $SIGNING_PASSWORD -A
security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k ci ci.keychain
# Import Profiles
mkdir -p ~/Library/MobileDevice/Provisioning\ Profiles
echo $HOST_PROFILE_DATA | base64 -d -o Host.provisionprofile
HOST_UUID=`grep UUID -A1 -a Host.provisionprofile | grep -io "[-A-F0-9]\{36\}"`
cp Host.provisionprofile ~/Library/MobileDevice/Provisioning\ Profiles/$HOST_UUID.provisionprofile
echo $AGENT_PROFILE_DATA | base64 -d -o Agent.provisionprofile
AGENT_UUID=`grep UUID -A1 -a Agent.provisionprofile | grep -io "[-A-F0-9]\{36\}"`
cp Agent.provisionprofile ~/Library/MobileDevice/Provisioning\ Profiles/$AGENT_UUID.provisionprofile
# Create directories for ASC key
mkdir ~/.private_keys
echo -n "$APPLE_API_KEY_DATA" > ~/.private_keys/AuthKey_$APPLE_API_KEY_ID.p8
echo -n "$APPLE_API_KEY_DATA" > ~/.private_keys/AuthKey.p8

View File

@@ -5,32 +5,33 @@ on:
tags:
- '*'
jobs:
test:
runs-on: macOS-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v1
- name: Setup Signing
env:
SIGNING_DATA: ${{ secrets.SIGNING_DATA }}
SIGNING_PASSWORD: ${{ secrets.SIGNING_PASSWORD }}
HOST_PROFILE_DATA: ${{ secrets.HOST_PROFILE_DATA }}
AGENT_PROFILE_DATA: ${{ secrets.AGENT_PROFILE_DATA }}
APPLE_API_KEY_DATA: ${{ secrets.APPLE_API_KEY_DATA }}
APPLE_API_KEY_ID: ${{ secrets.APPLE_API_KEY_ID }}
run: ./.github/scripts/signing.sh
- name: Set Environment
run: sudo xcrun xcode-select -s /Applications/Xcode_14.1.app
- name: Test
run: |
pushd Sources/Packages
swift test
popd
# test:
# runs-on: macOS-latest
# timeout-minutes: 10
# steps:
# - uses: actions/checkout@v3
# - name: Setup Signing
# env:
# SIGNING_DATA: ${{ secrets.SIGNING_DATA }}
# SIGNING_PASSWORD: ${{ secrets.SIGNING_PASSWORD }}
# HOST_PROFILE_DATA: ${{ secrets.HOST_PROFILE_DATA }}
# AGENT_PROFILE_DATA: ${{ secrets.AGENT_PROFILE_DATA }}
# APPLE_API_KEY_DATA: ${{ secrets.APPLE_API_KEY_DATA }}
# APPLE_API_KEY_ID: ${{ secrets.APPLE_API_KEY_ID }}
# run: ./.github/scripts/signing.sh
# - name: Set Environment
# run: sudo xcrun xcode-select -s /Applications/Xcode_14.1.app
# - name: Test
# run: |
# pushd Sources/Packages
# swift test
# popd
build:
runs-on: macOS-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: Setup Signing
env:
SIGNING_DATA: ${{ secrets.SIGNING_DATA }}
@@ -52,16 +53,24 @@ jobs:
sed -i '' -e "s/GITHUB_BUILD_NUMBER/1.$RUN_ID/g" Sources/Config/Config.xcconfig
sed -i '' -e "s/GITHUB_BUILD_URL/https:\/\/github.com\/maxgoedjen\/secretive\/actions\/runs\/$RUN_ID/g" Sources/Secretive/Credits.rtf
- name: Build
run: xcrun xcodebuild -project Sources/Secretive.xcodeproj -scheme Secretive -configuration Release -archivePath Archive.xcarchive archive
env:
APPLE_API_KEY_ID: ${{ secrets.APPLE_API_KEY_ID }}
APPLE_API_ISSUER: ${{ secrets.APPLE_API_ISSUER }}
run: xcrun xcodebuild -project Sources/Secretive.xcodeproj -scheme Secretive -configuration Release -archivePath Archive.xcarchive -destination "generic/platform=macOS" archive
- name: Export Products
env:
APPLE_API_KEY_ID: ${{ secrets.APPLE_API_KEY_ID }}
APPLE_API_ISSUER: ${{ secrets.APPLE_API_ISSUER }}
run: xcrun xcodebuild -exportArchive -archivePath Archive.xcarchive -exportPath Export -exportOptionsPlist Sources/Config/ExportOptions.plist -allowProvisioningUpdates -authenticationKeyIssuerID $APPLE_API_ISSUER -authenticationKeyID $APPLE_API_KEY_ID -authenticationKeyPath ~/.private_keys/AuthKey.p8
- name: Create ZIPs
run: |
ditto -c -k --sequesterRsrc --keepParent Archive.xcarchive/Products/Applications/Secretive.app ./Secretive.zip
ditto -c -k --sequesterRsrc --keepParent Export/Secretive.app ./Secretive.zip
ditto -c -k --sequesterRsrc --keepParent Archive.xcarchive ./Archive.zip
- name: Notarize
env:
APPLE_API_KEY_ID: ${{ secrets.APPLE_API_KEY_ID }}
APPLE_API_ISSUER: ${{ secrets.APPLE_API_ISSUER }}
run: xcrun notarytool submit --key ~/.private_keys/AuthKey_$APPLE_API_KEY_ID.p8 --key-id $APPLE_API_KEY_ID --issuer $APPLE_API_ISSUER Secretive.zip
run: xcrun notarytool submit --key $(pwd)/.private_keys/AuthKey_$APPLE_API_KEY_ID.p8 --key-id $APPLE_API_KEY_ID --issuer $APPLE_API_ISSUER Secretive.zip
- name: Document SHAs
run: |
echo "sha-512:"

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>method</key>
<string>developer-id</string>
<key>teamID</key>
<string>Z72PRUAWF6</string>
</dict>
</plist>

View File

@@ -697,7 +697,7 @@
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = Secretive/Secretive.entitlements;
CODE_SIGN_IDENTITY = "Developer ID Application";
CODE_SIGN_IDENTITY = "";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 1;
@@ -713,7 +713,7 @@
MARKETING_VERSION = 1;
PRODUCT_BUNDLE_IDENTIFIER = com.maxgoedjen.Secretive.Host;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "Secretive - Host";
PROVISIONING_PROFILE_SPECIFIER = "";
SWIFT_VERSION = 5.0;
};
name = Release;
@@ -830,10 +830,13 @@
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = Secretive/Secretive.entitlements;
CODE_SIGN_IDENTITY = "";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_ASSET_PATHS = "\"Secretive/Preview Content\"";
DEVELOPMENT_TEAM = Z72PRUAWF6;
ENABLE_HARDENED_RUNTIME = NO;
ENABLE_PREVIEWS = YES;
INFOPLIST_FILE = Secretive/Info.plist;
@@ -844,6 +847,7 @@
MARKETING_VERSION = 1;
PRODUCT_BUNDLE_IDENTIFIER = com.maxgoedjen.Secretive.Host;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
SWIFT_VERSION = 5.0;
};
name = Test;
@@ -874,9 +878,12 @@
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = SecretAgent/SecretAgent.entitlements;
CODE_SIGN_IDENTITY = "";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
DEVELOPMENT_ASSET_PATHS = "\"SecretAgent/Preview Content\"";
DEVELOPMENT_TEAM = Z72PRUAWF6;
ENABLE_HARDENED_RUNTIME = YES;
ENABLE_PREVIEWS = YES;
INFOPLIST_FILE = SecretAgent/Info.plist;
@@ -887,6 +894,8 @@
MARKETING_VERSION = 1;
PRODUCT_BUNDLE_IDENTIFIER = com.maxgoedjen.Secretive.SecretAgent;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
SKIP_INSTALL = YES;
SWIFT_VERSION = 5.0;
};
name = Test;
@@ -896,6 +905,7 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = SecretAgent/SecretAgent.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
DEVELOPMENT_ASSET_PATHS = "\"SecretAgent/Preview Content\"";
@@ -910,6 +920,8 @@
MARKETING_VERSION = 1;
PRODUCT_BUNDLE_IDENTIFIER = com.maxgoedjen.Secretive.SecretAgent;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
SKIP_INSTALL = YES;
SWIFT_VERSION = 5.0;
};
name = Debug;
@@ -919,7 +931,7 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = SecretAgent/SecretAgent.entitlements;
CODE_SIGN_IDENTITY = "Developer ID Application";
CODE_SIGN_IDENTITY = "";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
DEVELOPMENT_ASSET_PATHS = "\"SecretAgent/Preview Content\"";
@@ -934,7 +946,8 @@
MARKETING_VERSION = 1;
PRODUCT_BUNDLE_IDENTIFIER = com.maxgoedjen.Secretive.SecretAgent;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "Secretive - Secret Agent";
PROVISIONING_PROFILE_SPECIFIER = "";
SKIP_INSTALL = YES;
SWIFT_VERSION = 5.0;
};
name = Release;