Add ability to skip signing when building build arguments
This commit is contained in:
parent
967e7e7559
commit
6b1293eb34
|
@ -7,7 +7,7 @@ public protocol BuildGraphInspecting {
|
|||
/// Returns the build arguments to be used with the given target.
|
||||
/// - Parameter target: Target whose build arguments will be returned.
|
||||
/// - Parameter configuration: The configuration to be built. When nil, it defaults to the configuration specified in the scheme.
|
||||
func buildArguments(target: Target, configuration: String?) -> [XcodeBuildArgument]
|
||||
func buildArguments(target: Target, configuration: String?, skipSigning: Bool) -> [XcodeBuildArgument]
|
||||
|
||||
/// Given a directory, it returns the first .xcworkspace found.
|
||||
/// - Parameter path: Found .xcworkspace.
|
||||
|
@ -46,7 +46,7 @@ public protocol BuildGraphInspecting {
|
|||
public class BuildGraphInspector: BuildGraphInspecting {
|
||||
public init() {}
|
||||
|
||||
public func buildArguments(target: Target, configuration: String?) -> [XcodeBuildArgument] {
|
||||
public func buildArguments(target: Target, configuration: String?, skipSigning: Bool) -> [XcodeBuildArgument] {
|
||||
var arguments: [XcodeBuildArgument]
|
||||
if target.platform == .macOS {
|
||||
arguments = [.sdk(target.platform.xcodeDeviceSDK)]
|
||||
|
@ -63,6 +63,18 @@ public class BuildGraphInspector: BuildGraphInspecting {
|
|||
}
|
||||
}
|
||||
|
||||
// Signing
|
||||
if skipSigning {
|
||||
arguments.append(
|
||||
contentsOf: [
|
||||
.xcarg("CODE_SIGN_IDENTITY", ""),
|
||||
.xcarg("CODE_SIGNING_REQUIRED", "NO"),
|
||||
.xcarg("CODE_SIGN_ENTITLEMENTS", ""),
|
||||
.xcarg("CODE_SIGNING_ALLOWED", "NO")
|
||||
]
|
||||
)
|
||||
}
|
||||
|
||||
return arguments
|
||||
}
|
||||
|
||||
|
|
|
@ -35,10 +35,10 @@ public final class MockBuildGraphInspector: BuildGraphInspecting {
|
|||
buildableEntrySchemesStub?(graph) ?? []
|
||||
}
|
||||
|
||||
public var buildArgumentsStub: ((Target, String?) -> [XcodeBuildArgument])?
|
||||
public func buildArguments(target: Target, configuration: String?) -> [XcodeBuildArgument] {
|
||||
public var buildArgumentsStub: ((Target, String?, Bool) -> [XcodeBuildArgument])?
|
||||
public func buildArguments(target: Target, configuration: String?, skipSigning: Bool) -> [XcodeBuildArgument] {
|
||||
if let buildArgumentsStub = buildArgumentsStub {
|
||||
return buildArgumentsStub(target, configuration)
|
||||
return buildArgumentsStub(target, configuration, skipSigning)
|
||||
} else {
|
||||
return []
|
||||
}
|
||||
|
|
|
@ -97,7 +97,7 @@ final class BuildService {
|
|||
_ = try xcodebuildController.build(.workspace(workspacePath),
|
||||
scheme: scheme.name,
|
||||
clean: clean,
|
||||
arguments: buildGraphInspector.buildArguments(target: buildableTarget, configuration: configuration))
|
||||
arguments: buildGraphInspector.buildArguments(target: buildableTarget, configuration: configuration, skipSigning: false))
|
||||
.printFormattedOutput()
|
||||
.toBlocking()
|
||||
.last()
|
||||
|
|
|
@ -163,7 +163,7 @@ final class TestService {
|
|||
scheme: scheme.name,
|
||||
clean: clean,
|
||||
destination: destination,
|
||||
arguments: buildGraphInspector.buildArguments(target: buildableTarget, configuration: configuration)
|
||||
arguments: buildGraphInspector.buildArguments(target: buildableTarget, configuration: configuration, skipSigning: true)
|
||||
)
|
||||
.printFormattedOutput()
|
||||
.toBlocking()
|
||||
|
|
|
@ -26,7 +26,7 @@ final class BuildGraphInspectorTests: TuistUnitTestCase {
|
|||
let target = Target.test(platform: .macOS)
|
||||
|
||||
// When
|
||||
let got = subject.buildArguments(target: target, configuration: nil)
|
||||
let got = subject.buildArguments(target: target, configuration: nil, skipSigning: false)
|
||||
|
||||
// Then
|
||||
XCTAssertEqual(got, [
|
||||
|
@ -39,7 +39,7 @@ final class BuildGraphInspectorTests: TuistUnitTestCase {
|
|||
let target = Target.test(platform: .iOS)
|
||||
|
||||
// When
|
||||
let got = subject.buildArguments(target: target, configuration: nil)
|
||||
let got = subject.buildArguments(target: target, configuration: nil, skipSigning: false)
|
||||
|
||||
// Then
|
||||
XCTAssertEqual(got, [
|
||||
|
@ -52,7 +52,7 @@ final class BuildGraphInspectorTests: TuistUnitTestCase {
|
|||
let target = Target.test(platform: .watchOS)
|
||||
|
||||
// When
|
||||
let got = subject.buildArguments(target: target, configuration: nil)
|
||||
let got = subject.buildArguments(target: target, configuration: nil, skipSigning: false)
|
||||
|
||||
// Then
|
||||
XCTAssertEqual(got, [
|
||||
|
@ -65,7 +65,7 @@ final class BuildGraphInspectorTests: TuistUnitTestCase {
|
|||
let target = Target.test(platform: .tvOS)
|
||||
|
||||
// When
|
||||
let got = subject.buildArguments(target: target, configuration: nil)
|
||||
let got = subject.buildArguments(target: target, configuration: nil, skipSigning: false)
|
||||
|
||||
// Then
|
||||
XCTAssertEqual(got, [
|
||||
|
@ -79,7 +79,7 @@ final class BuildGraphInspectorTests: TuistUnitTestCase {
|
|||
let target = Target.test(settings: settings)
|
||||
|
||||
// When
|
||||
let got = subject.buildArguments(target: target, configuration: "Release")
|
||||
let got = subject.buildArguments(target: target, configuration: "Release", skipSigning: false)
|
||||
|
||||
// Then
|
||||
XCTAssertTrue(got.contains(.configuration("Release")))
|
||||
|
@ -91,7 +91,7 @@ final class BuildGraphInspectorTests: TuistUnitTestCase {
|
|||
let target = Target.test(settings: settings)
|
||||
|
||||
// When
|
||||
let got = subject.buildArguments(target: target, configuration: "Release")
|
||||
let got = subject.buildArguments(target: target, configuration: "Release", skipSigning: false)
|
||||
|
||||
// Then
|
||||
XCTAssertFalse(got.contains(.configuration("Release")))
|
||||
|
|
|
@ -71,7 +71,7 @@ final class BuildServiceTests: TuistUnitTestCase {
|
|||
XCTAssertEqual(_path, path)
|
||||
return workspacePath
|
||||
}
|
||||
buildgraphInspector.buildArgumentsStub = { _target, _ in
|
||||
buildgraphInspector.buildArgumentsStub = { _target, _, _ in
|
||||
XCTAssertEqual(_target, target)
|
||||
return buildArguments
|
||||
}
|
||||
|
@ -114,7 +114,7 @@ final class BuildServiceTests: TuistUnitTestCase {
|
|||
XCTAssertEqual(_path, path)
|
||||
return workspacePath
|
||||
}
|
||||
buildgraphInspector.buildArgumentsStub = { _target, _ in
|
||||
buildgraphInspector.buildArgumentsStub = { _target, _, _ in
|
||||
XCTAssertEqual(_target, target)
|
||||
return buildArguments
|
||||
}
|
||||
|
@ -160,7 +160,7 @@ final class BuildServiceTests: TuistUnitTestCase {
|
|||
XCTAssertEqual(_path, path)
|
||||
return workspacePath
|
||||
}
|
||||
buildgraphInspector.buildArgumentsStub = { _, _ in
|
||||
buildgraphInspector.buildArgumentsStub = { _, _, _ in
|
||||
buildArguments
|
||||
}
|
||||
xcodebuildController.buildStub = { _target, _scheme, _clean, _arguments in
|
||||
|
@ -213,7 +213,7 @@ final class BuildServiceTests: TuistUnitTestCase {
|
|||
XCTAssertEqual(_path, path)
|
||||
return workspacePath
|
||||
}
|
||||
buildgraphInspector.buildArgumentsStub = { _, _ in
|
||||
buildgraphInspector.buildArgumentsStub = { _, _, _ in
|
||||
buildArguments
|
||||
}
|
||||
xcodebuildController.buildStub = { _target, _scheme, _clean, _arguments in
|
||||
|
|
|
@ -65,7 +65,7 @@ final class TestServiceTests: TuistUnitTestCase {
|
|||
XCTAssertEqual(_path, path)
|
||||
return workspacePath
|
||||
}
|
||||
buildGraphInspector.buildArgumentsStub = { _target, _ in
|
||||
buildGraphInspector.buildArgumentsStub = { _target, _, _ in
|
||||
XCTAssertEqual(_target, target)
|
||||
return buildArguments
|
||||
}
|
||||
|
@ -118,7 +118,7 @@ final class TestServiceTests: TuistUnitTestCase {
|
|||
XCTAssertEqual(_path, path)
|
||||
return workspacePath
|
||||
}
|
||||
buildGraphInspector.buildArgumentsStub = { _, _ in
|
||||
buildGraphInspector.buildArgumentsStub = { _, _, _ in
|
||||
buildArguments
|
||||
}
|
||||
xcodebuildController.testStub = { _target, _scheme, _clean, _, _arguments in
|
||||
|
|
Loading…
Reference in New Issue