Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Attempt to build app from CLI #1208

Draft
wants to merge 15 commits into
base: trunk
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 12 additions & 15 deletions .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
@@ -1,29 +1,26 @@
# Nodes with values to reuse in the pipeline.
common_params:
# Common plugin settings to use with the `plugins` key.
- &common_plugins
- automattic/a8c-ci-toolkit#3.1.0
# Common environment values to use with the `env` key.
- &common_env
IMAGE_ID: xcode-15.4

# This is the default pipeline – it will build and test the app

env:
IMAGE_ID: $IMAGE_ID

steps:
- label: "🔬 Build and Test"
command: .buildkite/commands/build-and-test.sh
env: *common_env
plugins: *common_plugins
plugins: [$CI_TOOLKIT_PLUGIN]
agents:
queue: mac

- label: ":swift: SwiftLint"
command: run_swiftlint --strict
plugins: *common_plugins
plugins: [$CI_TOOLKIT_PLUGIN]
notify:
- github_commit_status:
context: "SwiftLint"
agents:
queue: "default"
queue: default

- label: "🛠 Verify App Store Target Builds"
command: .buildkite/commands/build-and-test-app-store.sh
env: *common_env
plugins: *common_plugins
plugins: [$CI_TOOLKIT_PLUGIN]
agents:
queue: mac
17 changes: 5 additions & 12 deletions .buildkite/release-builds.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,9 @@
# Nodes with values to reuse in the pipeline.
common_params:
# Common plugin settings to use with the `plugins` key.
- &common_plugins
- automattic/a8c-ci-toolkit#3.1.0
# Common environment values to use with the `env` key.
- &common_env
IMAGE_ID: xcode-15.4

# This is the default pipeline – it will build and test the app
steps:
- label: "🛠 App Store Upload"
command: .buildkite/commands/build-and-upload-release.sh
priority: 1
env: *common_env
plugins: *common_plugins
plugins: [$CI_TOOLKIT_PLUGIN]
agents:
queue: mac
env:
IMAGE_ID: $IMAGE_ID
11 changes: 11 additions & 0 deletions .buildkite/shared-pipeline-vars
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#!/bin/sh

# This file is `source`'d before calling `buildkite-agent pipeline upload`, and can be used
# to set up some variables that will be interpolated in the `.yml` pipeline before uploading it.

# The ~> modifier is not currently used, but we check for it just in case
XCODE_VERSION=$(sed -E -n 's/^(~> )?(.*)/xcode-\2/p' .xcode-version)
CI_TOOLKIT_PLUGIN_VERSION="3.4.2"

export IMAGE_ID="$XCODE_VERSION"
export CI_TOOLKIT_PLUGIN="automattic/a8c-ci-toolkit#$CI_TOOLKIT_PLUGIN_VERSION"
1 change: 1 addition & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ Layout/LineLength:
Metrics/BlockLength:
Exclude:
- fastlane/Fastfile
- fastlane/lanes/*.rb
- Rakefile

Style/HashSyntax:
Expand Down
1 change: 1 addition & 0 deletions .xcode-version
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
15.4
2 changes: 1 addition & 1 deletion Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ source 'https://rubygems.org'

gem 'cocoapods', '~> 1.14'
gem 'danger-dangermattic', '~> 1.0'
gem 'fastlane', '~> 2.219'
gem 'fastlane', '~> 2.222'
gem 'fastlane-plugin-appcenter', '~> 1.11'
gem 'fastlane-plugin-sentry', '~> 1.14'
gem 'fastlane-plugin-wpmreleasetoolkit', '~> 9.2'
Expand Down
26 changes: 13 additions & 13 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -24,20 +24,20 @@ GEM
ast (2.4.2)
atomos (0.1.3)
aws-eventstream (1.3.0)
aws-partitions (1.940.0)
aws-sdk-core (3.197.0)
aws-partitions (1.958.0)
aws-sdk-core (3.201.3)
aws-eventstream (~> 1, >= 1.3.0)
aws-partitions (~> 1, >= 1.651.0)
aws-sigv4 (~> 1.8)
jmespath (~> 1, >= 1.6.1)
aws-sdk-kms (1.83.0)
aws-sdk-core (~> 3, >= 3.197.0)
aws-sigv4 (~> 1.1)
aws-sdk-s3 (1.152.0)
aws-sdk-core (~> 3, >= 3.197.0)
aws-sdk-kms (1.88.0)
aws-sdk-core (~> 3, >= 3.201.0)
aws-sigv4 (~> 1.5)
aws-sdk-s3 (1.156.0)
aws-sdk-core (~> 3, >= 3.201.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.8)
aws-sigv4 (1.8.0)
aws-sigv4 (~> 1.5)
aws-sigv4 (1.9.0)
aws-eventstream (~> 1, >= 1.0.2)
babosa (1.0.4)
base64 (0.2.0)
Expand Down Expand Up @@ -142,7 +142,7 @@ GEM
escape (0.0.4)
ethon (0.16.0)
ffi (>= 1.15.0)
excon (0.110.0)
excon (0.111.0)
faraday (1.10.3)
faraday-em_http (~> 1.0)
faraday-em_synchrony (~> 1.0)
Expand Down Expand Up @@ -174,7 +174,7 @@ GEM
faraday_middleware (1.2.0)
faraday (~> 1.0)
fastimage (2.3.1)
fastlane (2.220.0)
fastlane (2.222.0)
CFPropertyList (>= 2.3, < 4.0.0)
addressable (>= 2.8, < 3.0.0)
artifactory (~> 3.0)
Expand Down Expand Up @@ -294,7 +294,7 @@ GEM
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
language_server-protocol (3.17.0.3)
mini_magick (4.12.0)
mini_magick (4.13.2)
mini_mime (1.1.5)
mini_portile2 (2.8.7)
minitest (5.23.1)
Expand Down Expand Up @@ -408,7 +408,7 @@ PLATFORMS
DEPENDENCIES
cocoapods (~> 1.14)
danger-dangermattic (~> 1.0)
fastlane (~> 2.219)
fastlane (~> 2.222)
fastlane-plugin-appcenter (~> 1.11)
fastlane-plugin-sentry (~> 1.14)
fastlane-plugin-wpmreleasetoolkit (~> 9.2)
Expand Down
26 changes: 8 additions & 18 deletions Simplenote.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -450,7 +450,9 @@
37F742EA202A382400A47D3A /* AboutViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AboutViewController.swift; sourceTree = "<group>"; };
39ACEAE8218A03C6C22DC662 /* Pods-Automattic-Simplenote.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Automattic-Simplenote.release.xcconfig"; path = "Target Support Files/Pods-Automattic-Simplenote/Pods-Automattic-Simplenote.release.xcconfig"; sourceTree = "<group>"; };
3F1FC4212C0EBEF10066B187 /* Simplenote.xctestplan */ = {isa = PBXFileReference; lastKnownFileType = text; path = Simplenote.xctestplan; sourceTree = "<group>"; };
3F6C39912C33C11100776C37 /* Base.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Base.xcconfig; sourceTree = "<group>"; };
3FD478252C5762250071B8B9 /* Project.Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Project.Release.xcconfig; path = config/Project.Release.xcconfig; sourceTree = "<group>"; };
3FD478262C5762350071B8B9 /* Project.Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Project.Debug.xcconfig; path = config/Project.Debug.xcconfig; sourceTree = "<group>"; };
3FD478272C5762400071B8B9 /* Project.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Project.xcconfig; path = config/Project.xcconfig; sourceTree = "<group>"; };
466FFF2F17CC10A800399652 /* Simplenote.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Simplenote.app; sourceTree = BUILT_PRODUCTS_DIR; };
469512CB17CD23100014A2BF /* Simplenote-Info-Hockey.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Simplenote-Info-Hockey.plist"; sourceTree = "<group>"; };
46A0BEB8175BFD540050E864 /* Simplenote.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = Simplenote.entitlements; sourceTree = SOURCE_ROOT; };
Expand Down Expand Up @@ -1134,7 +1136,9 @@
8C902F8C22D3EE350018D654 /* Version.public.xcconfig */,
8C902F8722D3ED910018D654 /* Simplenote.release.xcconfig */,
8C902F8E22D3EFE60018D654 /* Simplenote.debug.xcconfig */,
3F6C39912C33C11100776C37 /* Base.xcconfig */,
3FD478252C5762250071B8B9 /* Project.Release.xcconfig */,
3FD478262C5762350071B8B9 /* Project.Debug.xcconfig */,
3FD478272C5762400071B8B9 /* Project.xcconfig */,
);
name = config;
sourceTree = "<group>";
Expand Down Expand Up @@ -2573,7 +2577,6 @@
ASSETCATALOG_COMPILER_APPICON_NAME = "AppIcon-Beta";
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Simplenote/SimplenoteDebug.entitlements;
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
Expand Down Expand Up @@ -2606,8 +2609,8 @@
);
PRODUCT_BUNDLE_IDENTIFIER = com.automattic.SimplenoteMac.Development;
PRODUCT_NAME = Simplenote;
PROVISIONING_PROFILE = "";
PROVISIONING_PROFILE_SPECIFIER = "Simplenote Mac - Development";
PROVISIONING_PROFILE_SPECIFIER = "";
"PROVISIONING_PROFILE_SPECIFIER[sdk=macosx*]" = "Simplenote Mac - Development";
SDKROOT = macosx;
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SWIFT_VERSION = 5.0;
Expand All @@ -2624,7 +2627,6 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Simplenote.entitlements;
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
DEAD_CODE_STRIPPING = YES;
FRAMEWORK_SEARCH_PATHS = (
Expand Down Expand Up @@ -2655,9 +2657,6 @@
);
PRODUCT_BUNDLE_IDENTIFIER = com.automattic.SimplenoteMac;
PRODUCT_NAME = Simplenote;
PROVISIONING_PROFILE = "";
"PROVISIONING_PROFILE[sdk=macosx*]" = "";
PROVISIONING_PROFILE_SPECIFIER = "match AppStore com.automattic.SimplenoteMac macos";
SDKROOT = macosx;
SWIFT_VERSION = 5.0;
WRAPPER_EXTENSION = app;
Expand All @@ -2667,7 +2666,6 @@
B52D0EC6230DCAD7003F799D /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Manual;
DEAD_CODE_STRIPPING = YES;
MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)";
PRODUCT_NAME = "$(TARGET_NAME)";
Expand All @@ -2677,7 +2675,6 @@
B52D0EC7230DCAD7003F799D /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Manual;
DEAD_CODE_STRIPPING = YES;
MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)";
PRODUCT_NAME = "$(TARGET_NAME)";
Expand All @@ -2700,12 +2697,9 @@
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = PZYM8XX95Q;
"DEVELOPMENT_TEAM[sdk=macosx*]" = PZYM8XX95Q;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
Expand Down Expand Up @@ -2744,12 +2738,9 @@
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = NO;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = PZYM8XX95Q;
"DEVELOPMENT_TEAM[sdk=macosx*]" = PZYM8XX95Q;
ENABLE_NS_ASSERTIONS = NO;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
Expand Down Expand Up @@ -2859,7 +2850,6 @@
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.automattic.SimplenoteMac.IntentsExtension;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "match AppStore com.automattic.SimplenoteMac.IntentsExtension macos";
SKIP_INSTALL = YES;
SWIFT_ACTIVE_COMPILATION_CONDITIONS = APP_EXTENSION;
SWIFT_EMIT_LOC_STRINGS = YES;
Expand Down
3 changes: 3 additions & 0 deletions config/Project.Debug.xcconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#include "Project.xcconfig"

CODE_SIGN_IDENTITY = Apple Development
6 changes: 6 additions & 0 deletions config/Project.Release.xcconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#include "Project.xcconfig"

// Each target using this will interpolate its own computed value for the bundle id
PROVISIONING_PROFILE_SPECIFIER = match AppStore $(PRODUCT_BUNDLE_IDENTIFIER) macos

CODE_SIGN_IDENTITY = Apple Distribution: Automattic, Inc. (PZYM8XX95Q)
4 changes: 1 addition & 3 deletions Base.xcconfig → config/Project.xcconfig
Original file line number Diff line number Diff line change
@@ -1,4 +1,2 @@
#include "Version.public.xcconfig"

CODE_SIGN_STYLE = Manual
DEVELOPMENT_TEAM = PZYM8XX95Q
CODE_SIGN_STYLE = Manual
5 changes: 2 additions & 3 deletions config/Simplenote.debug.xcconfig
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
#include "Base.xcconfig"
#include "Project.Debug.xcconfig"
#include "Version.public.xcconfig"

CODE_SIGN_IDENTITY = Apple Development

// Notice we don't have a PROVISIONING_PROFILE_SPECIFIER defined here because this xcconfig is used at the project-level but that settings need to be target-level.
// Once we'll have target-level xcconfigs, we shall add the setting there
5 changes: 2 additions & 3 deletions config/Simplenote.release.xcconfig
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
#include "Base.xcconfig"
#include "Project.Release.xcconfig"
#include "Version.public.xcconfig"

CODE_SIGN_IDENTITY = Apple Distribution

// Notice we don't have a PROVISIONING_PROFILE_SPECIFIER defined here because this xcconfig is used at the project-level but that settings need to be target-level.
// Once we'll have target-level xcconfigs, we shall add the setting there
6 changes: 3 additions & 3 deletions config/Version.public.xcconfig
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
VERSION_SHORT=2.20
VERSION_SHORT=2.21

// Public long version. Example: 2.0.0.0. The last 0 means the first build for
// version 2.0.0
VERSION_LONG=2.20.0.4
VERSION_LONG=2.21.0.0

// This is the value for the CFBundleVersion it should be incremented on every
// build that gets distributed
BUILD_NUMBER=11258
BUILD_NUMBER=11259
Loading
Loading