Skip to content
This repository has been archived by the owner on Mar 11, 2022. It is now read-only.

Commit

Permalink
Merge pull request #84 from aaronraimist/automated-sparkle
Browse files Browse the repository at this point in the history
Automate Sparkle [WIP]
  • Loading branch information
neilalexander authored Sep 23, 2018
2 parents f5405e4 + 3680a5c commit 1bd64ea
Show file tree
Hide file tree
Showing 18 changed files with 421 additions and 40 deletions.
26 changes: 0 additions & 26 deletions .ci/bintray-release.json

This file was deleted.

37 changes: 27 additions & 10 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,27 @@ jobs:
- run:
name: Create Upload Directory
command: mkdir -p /tmp/seaglass/upload
- run:
name: Decrypt signing key
command: |
if [ "${CIRCLE_BRANCH}" == "release" ]; then
openssl aes-256-cbc -d -in .circleci/signing.key -k $SPARKLE_EDDSA_SECRET >> /tmp/dsa_priv.pem || true
fi
- run:
name: Install AWS CLI
command: |
pip install awscli --upgrade --user
~/Library/Python/2.7/bin/aws configure set aws_access_key_id ${AWS_ACCESS_KEY_ID}
~/Library/Python/2.7/bin/aws configure set aws_secret_access_key ${AWS_SECRET_ACCESS_KEY}
~/Library/Python/2.7/bin/aws configure set region eu-west-2
if [ "${CIRCLE_BRANCH}" == "release" ]; then
pip install awscli --upgrade --user
~/Library/Python/2.7/bin/aws configure set aws_access_key_id ${AWS_ACCESS_KEY_ID}
~/Library/Python/2.7/bin/aws configure set aws_secret_access_key ${AWS_SECRET_ACCESS_KEY}
~/Library/Python/2.7/bin/aws configure set region eu-west-2
fi
- run:
name: Retrieve appcast.xml
command: |
if [ "${CIRCLE_BRANCH}" == "release" ]; then
~/Library/Python/2.7/bin/aws s3 cp s3://seaglass-ci/appcast.xml ~/seaglass/ --acl public-read || true;
fi
- run:
name: Fetch CocoaPods Specs
command: curl https://cocoapods-specs.circleci.com/fetch-cocoapods-repo-from-s3.sh | bash -s cf
Expand All @@ -30,14 +44,17 @@ jobs:
- run:
name: Build Seaglass
command: |
xcodebuild -workspace Seaglass.xcworkspace -scheme Seaglass archive -archivePath ~/seaglass/build/Seaglass.xcarchive | xcpretty
xcodebuild -exportArchive -archivePath ~/seaglass/build/Seaglass.xcarchive -exportOptionsPlist .ci/ExportOptions.plist -exportPath ~/seaglass/build CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO
if [ "${CIRCLE_BRANCH}" == "release" ]; then
fastlane build_and_release;
else
fastlane build;
fi
- run:
name: Package Seaglass
working_directory: ~/seaglass/build/
name: Upload appcast.xml to S3
command: |
tar -zcf /tmp/seaglass/upload/Seaglass-$(cd ~/seaglass && sh scripts/version.sh).tar.gz Seaglass.app
~/Library/Python/2.7/bin/aws s3 cp /tmp/seaglass/upload/* s3://seaglass-ci/ --acl public-read
if [ "${CIRCLE_BRANCH}" == "release" ]; then
~/Library/Python/2.7/bin/aws s3 cp ~/seaglass/appcast.xml s3://seaglass-ci/ --acl public-read;
fi
- store_artifacts:
path: /tmp/seaglass/upload
destination: /
Binary file added .circleci/signing.key
Binary file not shown.
36 changes: 36 additions & 0 deletions .circleci/signing.pub
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
-----BEGIN PUBLIC KEY-----
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
LcGU6BcWTtXM5+yiSuMkE0EXsnAD7JzeNCOP
-----END PUBLIC KEY-----
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,5 @@ xcuserdata/
# End of https://www.gitignore.io/api/xcode,cocoapods

build/

fastlane/report.xml
3 changes: 3 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
source "https://rubygems.org"

gem "fastlane"
2 changes: 2 additions & 0 deletions Podfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,6 @@ target 'Seaglass' do
pod 'SwiftMatrixSDK', '0.10.12'
pod 'Down'
pod 'TSMarkdownParser'
pod 'Sparkle'
pod 'LetsMove'
end
12 changes: 10 additions & 2 deletions Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ PODS:
- AFNetworking/Serialization (3.2.1)
- Down (0.5.2)
- GZIP (1.2.2)
- LetsMove (1.24)
- OLMKit (2.2.2):
- OLMKit/olmc (= 2.2.2)
- OLMKit/olmcpp (= 2.2.2)
Expand All @@ -22,6 +23,7 @@ PODS:
- Realm (3.6.0):
- Realm/Headers (= 3.6.0)
- Realm/Headers (3.6.0)
- Sparkle (1.20.0)
- SwiftMatrixSDK (0.10.12):
- AFNetworking (~> 3.2.0)
- GZIP (~> 1.2.1)
Expand All @@ -31,6 +33,8 @@ PODS:

DEPENDENCIES:
- Down
- LetsMove
- Sparkle
- SwiftMatrixSDK (= 0.10.12)
- TSMarkdownParser

Expand All @@ -39,20 +43,24 @@ SPEC REPOS:
- AFNetworking
- Down
- GZIP
- LetsMove
- OLMKit
- Realm
- Sparkle
- SwiftMatrixSDK
- TSMarkdownParser

SPEC CHECKSUMS:
AFNetworking: b6f891fdfaed196b46c7a83cf209e09697b94057
Down: 587371ad58002b06023d9c602519216862c3acbc
GZIP: 12374d285e3b5d46cfcd480700fcfc7e16caf4f1
LetsMove: fefe56bc7bc7fb7d37049e28a14f297961229fc5
OLMKit: b9d8c0ffee9ea8c45bc0aaa9afb47f93fba7efbd
Realm: 08b464b462d4f31bbd4ba5f5a1c8722ef0a700b7
Sparkle: 48999e7ee032f05ca05e28451eadf4af8ede6b44
SwiftMatrixSDK: 793d7505afe6cb8aa563c2c4c94613ef279bca87
TSMarkdownParser: 3224ea196ecc7148fa7e03bc438f9390d4edfb6d

PODFILE CHECKSUM: dc40b72e766133403770363a8237d902c3a691ca
PODFILE CHECKSUM: 3d7addb7b20fc302245d8951a9721bc1542434b1

COCOAPODS: 1.5.3
COCOAPODS: 1.6.0.beta.1
16 changes: 14 additions & 2 deletions Seaglass.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@
394679E721304B0500FF67C1 /* InlineImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 394679E621304B0500FF67C1 /* InlineImageView.swift */; };
395C008D20D6AAC200C67609 /* RoomsCacheEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 395C008C20D6AAC200C67609 /* RoomsCacheEntry.swift */; };
39640E38212E09130060F170 /* MainViewSendErrorController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39640E37212E09130060F170 /* MainViewSendErrorController.swift */; };
3982A6B92157B74D00303E84 /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = 3982A6B82157B74D00303E84 /* dsa_pub.pem */; };
39850C512118F51D00D20974 /* RoomListEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39850C502118F51D00D20974 /* RoomListEntry.swift */; };
39850C532118F55200D20974 /* RoomAliasEntry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39850C522118F55200D20974 /* RoomAliasEntry.swift */; };
3994B34820C6E02700DD1D8D /* MainViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3994B34720C6E02700DD1D8D /* MainViewController.swift */; };
Expand Down Expand Up @@ -135,6 +136,7 @@
394679E621304B0500FF67C1 /* InlineImageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InlineImageView.swift; sourceTree = "<group>"; };
395C008C20D6AAC200C67609 /* RoomsCacheEntry.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomsCacheEntry.swift; sourceTree = "<group>"; };
39640E37212E09130060F170 /* MainViewSendErrorController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainViewSendErrorController.swift; sourceTree = "<group>"; };
3982A6B82157B74D00303E84 /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = dsa_pub.pem; sourceTree = SOURCE_ROOT; };
39850C502118F51D00D20974 /* RoomListEntry.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomListEntry.swift; sourceTree = "<group>"; };
39850C522118F55200D20974 /* RoomAliasEntry.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomAliasEntry.swift; sourceTree = "<group>"; };
3994B34720C6E02700DD1D8D /* MainViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainViewController.swift; sourceTree = "<group>"; };
Expand Down Expand Up @@ -234,6 +236,7 @@
391BFE2B20C68AD200B4EFEC /* Seaglass.entitlements */,
391BFE2220C68AD100B4EFEC /* Seaglass.xcdatamodeld */,
391BFE1E20C68AD100B4EFEC /* AppDelegate.swift */,
3982A6B82157B74D00303E84 /* dsa_pub.pem */,
);
path = Seaglass;
sourceTree = "<group>";
Expand Down Expand Up @@ -577,6 +580,7 @@
buildActionMask = 2147483647;
files = (
3931F29A21398189001F91DC /* MessageInputField.xib in Resources */,
3982A6B92157B74D00303E84 /* dsa_pub.pem in Resources */,
391BFE2620C68AD200B4EFEC /* Assets.xcassets in Resources */,
391BFE2920C68AD200B4EFEC /* Main.storyboard in Resources */,
);
Expand Down Expand Up @@ -637,12 +641,14 @@
files = (
);
inputPaths = (
"${SRCROOT}/Pods/Target Support Files/Pods-Seaglass/Pods-Seaglass-frameworks.sh",
"${PODS_ROOT}/Target Support Files/Pods-Seaglass/Pods-Seaglass-frameworks.sh",
"${BUILT_PRODUCTS_DIR}/AFNetworking/AFNetworking.framework",
"${BUILT_PRODUCTS_DIR}/Down/Down.framework",
"${BUILT_PRODUCTS_DIR}/GZIP/GZIP.framework",
"${BUILT_PRODUCTS_DIR}/LetsMove/LetsMove.framework",
"${BUILT_PRODUCTS_DIR}/OLMKit/OLMKit.framework",
"${BUILT_PRODUCTS_DIR}/Realm/Realm.framework",
"${PODS_ROOT}/Sparkle/Sparkle.framework",
"${BUILT_PRODUCTS_DIR}/SwiftMatrixSDK/SwiftMatrixSDK.framework",
"${BUILT_PRODUCTS_DIR}/TSMarkdownParser/TSMarkdownParser.framework",
);
Expand All @@ -651,14 +657,16 @@
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/AFNetworking.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Down.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GZIP.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/LetsMove.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/OLMKit.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Realm.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Sparkle.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SwiftMatrixSDK.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/TSMarkdownParser.framework",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Seaglass/Pods-Seaglass-frameworks.sh\"\n";
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Seaglass/Pods-Seaglass-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
/* End PBXShellScriptBuildPhase section */
Expand Down Expand Up @@ -895,6 +903,7 @@
CODE_SIGN_INJECT_BASE_ENTITLEMENTS = NO;
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 1;
INFOPLIST_FILE = Seaglass/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
Expand All @@ -904,6 +913,7 @@
PRODUCT_NAME = "$(TARGET_NAME)";
STRIP_INSTALLED_PRODUCT = NO;
SWIFT_VERSION = 4.0;
VERSIONING_SYSTEM = "apple-generic";
};
name = Debug;
};
Expand All @@ -916,6 +926,7 @@
CODE_SIGN_INJECT_BASE_ENTITLEMENTS = NO;
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 1;
INFOPLIST_FILE = Seaglass/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
Expand All @@ -925,6 +936,7 @@
PRODUCT_NAME = "$(TARGET_NAME)";
STRIP_INSTALLED_PRODUCT = NO;
SWIFT_VERSION = 4.0;
VERSIONING_SYSTEM = "apple-generic";
};
name = Release;
};
Expand Down
10 changes: 10 additions & 0 deletions Seaglass/AppDelegate.swift
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,16 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSMenuDelegate {
func applicationShouldTerminate(_ sender: NSApplication) -> NSApplication.TerminateReply {
return .terminateNow
}

func applicationWillFinishLaunching(_ notification: Notification) {
print("Seaglass version: " + (Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as! String))

// if you checked the box that said "Do not show this message again" but want see the Move to Applications dialog box again, run:
// defaults write eu.neilalexander.seaglass moveToApplicationsFolderAlertSuppress NO
#if RELEASE
PFMoveToApplicationsFolderIfNecessary();
#endif
}

}

7 changes: 7 additions & 0 deletions Seaglass/Base.lproj/Main.storyboard
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,12 @@ Copyright 2017 © Avery Pierce</string>
<segue destination="aqV-Si-XFo" kind="show" id="IGX-BI-8df"/>
</connections>
</menuItem>
<menuItem title="Check for Updates..." id="dy5-S4-hQj">
<modifierMask key="keyEquivalentModifierMask"/>
<connections>
<action selector="checkForUpdates:" target="MHl-Dn-83Q" id="hdE-O0-KYo"/>
</connections>
</menuItem>
<menuItem isSeparatorItem="YES" id="VOq-y0-SEH"/>
<menuItem title="Preferences…" tag="1" keyEquivalent="," id="BOF-NM-1cW">
<connections>
Expand Down Expand Up @@ -740,6 +746,7 @@ Copyright 2017 © Avery Pierce</string>
<outlet property="MenuSeaglass" destination="uQy-DD-JDr" id="apX-OF-CcS"/>
</connections>
</customObject>
<customObject id="MHl-Dn-83Q" customClass="SUUpdater"/>
<customObject id="YLy-65-1bz" customClass="NSFontManager"/>
<customObject id="Ady-hI-5gd" userLabel="First Responder" customClass="NSResponder" sceneMemberID="firstResponder"/>
<userDefaultsController id="ybo-8F-whA"/>
Expand Down
6 changes: 6 additions & 0 deletions Seaglass/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,11 @@
<string>NSApplication</string>
<key>NSRequiresAquaSystemAppearance</key>
<false/>
<key>SUPublicDSAKeyFile</key>
<string>dsa_pub.pem</string>
<key>SUFeedURL</key>
<string>https://s3.eu-west-2.amazonaws.com/seaglass-ci/appcast.xml</string>
<key>SUShowReleaseNotes</key>
<false/>
</dict>
</plist>
12 changes: 12 additions & 0 deletions appcast.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version='1.0' standalone='yes'?>
<rss xmlns:sparkle='http://www.andymatuschak.org/xml-namespaces/sparkle' version='2.0'>
<channel>
<title>Seaglass</title>
<item>
<title>0.0.477-automated-sparkle-f02ae61</title>
<pubDate>Thu, 20 Sep 2018 21:25:15 -0500</pubDate>
<sparkle:minimumSystemVersion>10.13</sparkle:minimumSystemVersion>
<enclosure url='Seaglass-0.0.477-automated-sparkle-f02ae61.zip' sparkle:version='477' sparkle:shortVersionString='0.0.477-automated-sparkle-f02ae61' length='22068974' type='application/octet-stream'/>
</item>
</channel>
</rss>
36 changes: 36 additions & 0 deletions dsa_pub.pem
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
-----BEGIN PUBLIC KEY-----
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
LcGU6BcWTtXM5+yiSuMkE0EXsnAD7JzeNCOP
-----END PUBLIC KEY-----
Loading

0 comments on commit 1bd64ea

Please sign in to comment.