mirror of
https://github.com/bitwarden/ios.git
synced 2025-12-10 00:42:29 -06:00
531 lines
17 KiB
YAML
531 lines
17 KiB
YAML
name: Bitwarden
|
|
fileGroups:
|
|
- Configs
|
|
- Docs
|
|
configs:
|
|
Debug: debug
|
|
Release: release
|
|
include:
|
|
- path: project-common.yml
|
|
options:
|
|
fileTypes:
|
|
"icon":
|
|
file: true
|
|
settings:
|
|
MARKETING_VERSION: 2024.6.0 # Bump this for a new version update.
|
|
CURRENT_PROJECT_VERSION: 1
|
|
projectReferences:
|
|
BitwardenKit:
|
|
path: BitwardenKit.xcodeproj
|
|
schemes:
|
|
Bitwarden:
|
|
build:
|
|
targets:
|
|
Bitwarden: all
|
|
BitwardenTests: [test]
|
|
run:
|
|
commandLineArguments:
|
|
"-com.apple.CoreData.ConcurrencyDebug 1": true
|
|
test:
|
|
commandLineArguments:
|
|
"-testing": true
|
|
environmentVariables:
|
|
TZ: UTC
|
|
gatherCoverageData: true
|
|
language: en
|
|
region: US
|
|
coverageTargets:
|
|
- Bitwarden
|
|
- BitwardenActionExtension
|
|
- BitwardenAutoFillExtension
|
|
- BitwardenShareExtension
|
|
- BitwardenShared
|
|
- BitwardenKit/AuthenticatorBridgeKit
|
|
- BitwardenKit/BitwardenKit
|
|
- BitwardenKit/Networking
|
|
targets:
|
|
- BitwardenTests
|
|
- BitwardenActionExtensionTests
|
|
- BitwardenAutoFillExtensionTests
|
|
- BitwardenShareExtensionTests
|
|
- BitwardenSharedTests
|
|
- BitwardenSharedSnapshotTests
|
|
- BitwardenSharedViewInspectorTests
|
|
- BitwardenKit/AuthenticatorBridgeKitTests
|
|
- BitwardenKit/BitwardenKitTests
|
|
- BitwardenKit/NetworkingTests
|
|
testPlans:
|
|
- path: TestPlans/Bitwarden-Default.xctestplan
|
|
defaultPlan: true
|
|
- path: TestPlans/Bitwarden-Unit.xctestplan
|
|
- path: TestPlans/Bitwarden-Snapshot.xctestplan
|
|
- path: TestPlans/Bitwarden-ViewInspector.xctestplan
|
|
BitwardenActionExtension:
|
|
build:
|
|
targets:
|
|
BitwardenActionExtension: all
|
|
BitwardenActionExtensionTests: [test]
|
|
test:
|
|
environmentVariables:
|
|
TZ: UTC
|
|
gatherCoverageData: true
|
|
language: en
|
|
region: US
|
|
targets:
|
|
- BitwardenActionExtensionTests
|
|
testPlans:
|
|
- path: TestPlans/Bitwarden-Default.xctestplan
|
|
defaultPlan: true
|
|
- path: TestPlans/Bitwarden-Unit.xctestplan
|
|
BitwardenAutoFillExtension:
|
|
build:
|
|
targets:
|
|
BitwardenAutoFillExtension: all
|
|
BitwardenAutoFillExtensionTests: [test]
|
|
test:
|
|
environmentVariables:
|
|
TZ: UTC
|
|
gatherCoverageData: true
|
|
language: en
|
|
region: US
|
|
targets:
|
|
- BitwardenAutoFillExtensionTests
|
|
testPlans:
|
|
- path: TestPlans/Bitwarden-Default.xctestplan
|
|
defaultPlan: true
|
|
- path: TestPlans/Bitwarden-Unit.xctestplan
|
|
BitwardenShareExtension:
|
|
build:
|
|
targets:
|
|
BitwardenShareExtension: all
|
|
BitwardenShareExtensionTests: [test]
|
|
test:
|
|
environmentVariables:
|
|
TZ: UTC
|
|
gatherCoverageData: true
|
|
language: en
|
|
region: US
|
|
targets:
|
|
- BitwardenShareExtensionTests
|
|
testPlans:
|
|
- path: TestPlans/Bitwarden-Default.xctestplan
|
|
defaultPlan: true
|
|
- path: TestPlans/Bitwarden-Unit.xctestplan
|
|
BitwardenShared:
|
|
build:
|
|
targets:
|
|
BitwardenShared: all
|
|
BitwardenSharedTests: [test]
|
|
BitwardenSharedSnapshotTests: [test]
|
|
BitwardenSharedViewInspectorTests: [test]
|
|
test:
|
|
commandLineArguments:
|
|
"-testing": true
|
|
environmentVariables:
|
|
TZ: UTC
|
|
gatherCoverageData: true
|
|
language: en
|
|
region: US
|
|
targets:
|
|
- BitwardenSharedTests
|
|
- BitwardenSharedSnapshotTests
|
|
- BitwardenSharedViewInspectorTests
|
|
testPlans:
|
|
- path: TestPlans/Bitwarden-Default.xctestplan
|
|
defaultPlan: true
|
|
- path: TestPlans/Bitwarden-Unit.xctestplan
|
|
- path: TestPlans/Bitwarden-Snapshot.xctestplan
|
|
- path: TestPlans/Bitwarden-ViewInspector.xctestplan
|
|
BitwardenWatchApp:
|
|
build:
|
|
targets:
|
|
BitwardenWatchApp: all
|
|
BitwardenWatchWidgetExtension:
|
|
build:
|
|
targets:
|
|
BitwardenWatchWidgetExtension: all
|
|
targets:
|
|
Bitwarden:
|
|
type: application
|
|
platform: iOS
|
|
configFiles:
|
|
Debug: Configs/Bitwarden-Debug.xcconfig
|
|
Release: Configs/Bitwarden-Release.xcconfig
|
|
settings:
|
|
base:
|
|
INFOPLIST_FILE: Bitwarden/Application/Support/Info.plist
|
|
sources:
|
|
- path: Bitwarden
|
|
excludes:
|
|
- "**/*Tests.*"
|
|
- "**/TestHelpers/*"
|
|
- "**/swiftgen-pm.yml"
|
|
- "**/GoogleService-Info.*.plist"
|
|
- "**/__Snapshots__/*"
|
|
- path: Bitwarden
|
|
includes:
|
|
- "**/__Snapshots__/*"
|
|
- "**/GoogleService-Info.*.plist"
|
|
buildPhase: none
|
|
- path: Bitwarden/Application/Support/GoogleService-Info.plist
|
|
buildPhase: resources
|
|
- path: README.md
|
|
buildPhase: none
|
|
- path: swiftgen-pm.yml
|
|
buildPhase: none
|
|
- path: BitwardenResources/Localizations # Needed for AppIntent.
|
|
dependencies:
|
|
- target: BitwardenShared
|
|
- target: BitwardenActionExtension
|
|
- target: BitwardenAutoFillExtension
|
|
- target: BitwardenShareExtension
|
|
- target: BitwardenWatchApp
|
|
- target: BitwardenKit/AuthenticatorBridgeKit
|
|
- target: BitwardenKit/BitwardenKit
|
|
- target: BitwardenKit/BitwardenResources
|
|
- target: BitwardenKit/Networking
|
|
- package: BitwardenSdk
|
|
- package: Firebase
|
|
product: FirebaseCrashlytics
|
|
preBuildScripts:
|
|
- path: Scripts/update_acknowledgements.sh
|
|
name: "Settings.bundle: Update Acknowledgements"
|
|
outputFiles:
|
|
- $(SRCROOT)/Bitwarden/Application/Support/Settings.bundle/Acknowledgements.plist
|
|
- $(SRCROOT)/Bitwarden/Application/Support/Settings.bundle/Acknowledgements.latest_results.txt
|
|
- $(SRCROOT)/Bitwarden/Application/Support/Settings.bundle/Acknowledgements
|
|
postCompileScripts:
|
|
- script: |
|
|
if [[ ! "$PATH" =~ "/opt/homebrew/bin" ]]; then
|
|
PATH="/opt/homebrew/bin:$PATH"
|
|
fi
|
|
mint run swiftlint
|
|
name: Swiftlint
|
|
basedOnDependencyAnalysis: false
|
|
- script: |
|
|
if [[ ! "$PATH" =~ "/opt/homebrew/bin" ]]; then
|
|
PATH="/opt/homebrew/bin:$PATH"
|
|
fi
|
|
mint run swiftformat --lint --lenient .
|
|
name: SwiftFormat Lint
|
|
basedOnDependencyAnalysis: false
|
|
postBuildScripts:
|
|
- path: Scripts/update_settings_version_number.sh
|
|
name: "Settings.bundle: Update Version Number"
|
|
basedOnDependencyAnalysis: false
|
|
BitwardenTests:
|
|
type: bundle.unit-test
|
|
platform: iOS
|
|
settings:
|
|
base:
|
|
INFOPLIST_FILE: Bitwarden/Application/TestHelpers/Support/Info.plist
|
|
sources:
|
|
- path: Bitwarden
|
|
includes:
|
|
- "**/*Tests.*"
|
|
- "**/TestHelpers/*"
|
|
- path: GlobalTestHelpers
|
|
dependencies:
|
|
- target: Bitwarden
|
|
- target: BitwardenShared
|
|
- target: BitwardenKit/BitwardenKitMocks
|
|
- target: BitwardenKit/TestHelpers
|
|
randomExecutionOrder: true
|
|
|
|
BitwardenActionExtension:
|
|
type: app-extension
|
|
platform: iOS
|
|
configFiles:
|
|
Debug: Configs/BitwardenActionExtension-Debug.xcconfig
|
|
Release: Configs/BitwardenActionExtension-Release.xcconfig
|
|
settings:
|
|
base:
|
|
CODE_SIGN_ENTITLEMENTS: BitwardenActionExtension/Application/Support/BitwardenActionExtension.entitlements
|
|
INFOPLIST_FILE: BitwardenActionExtension/Application/Support/Info.plist
|
|
sources:
|
|
- path: BitwardenActionExtension
|
|
excludes:
|
|
- "**/*Tests.*"
|
|
- "**/TestHelpers/*"
|
|
dependencies:
|
|
- package: BitwardenSdk
|
|
- target: BitwardenShared
|
|
BitwardenActionExtensionTests:
|
|
type: bundle.unit-test
|
|
platform: iOS
|
|
settings:
|
|
base:
|
|
INFOPLIST_FILE: BitwardenActionExtension/Application/TestHelpers/Support/Info.plist
|
|
sources:
|
|
- path: BitwardenActionExtension
|
|
includes:
|
|
- "**/*Tests.*"
|
|
- "**/TestHelpers/*"
|
|
- path: GlobalTestHelpers
|
|
dependencies:
|
|
- target: BitwardenActionExtension
|
|
- target: BitwardenShared
|
|
- target: BitwardenKit/TestHelpers
|
|
randomExecutionOrder: true
|
|
|
|
BitwardenAutoFillExtension:
|
|
type: app-extension
|
|
platform: iOS
|
|
configFiles:
|
|
Debug: Configs/BitwardenAutoFillExtension.xcconfig
|
|
Release: Configs/BitwardenAutoFillExtension.xcconfig
|
|
settings:
|
|
base:
|
|
CODE_SIGN_ENTITLEMENTS: BitwardenAutoFillExtension/Application/Support/BitwardenAutoFill.entitlements
|
|
INFOPLIST_FILE: BitwardenAutoFillExtension/Application/Support/Info.plist
|
|
sources:
|
|
- path: BitwardenAutoFillExtension
|
|
excludes:
|
|
- "**/*Tests.*"
|
|
- "**/TestHelpers/*"
|
|
dependencies:
|
|
- package: BitwardenSdk
|
|
- target: BitwardenShared
|
|
BitwardenAutoFillExtensionTests:
|
|
type: bundle.unit-test
|
|
platform: iOS
|
|
settings:
|
|
base:
|
|
INFOPLIST_FILE: BitwardenAutoFillExtension/Application/TestHelpers/Support/Info.plist
|
|
sources:
|
|
- path: BitwardenAutoFillExtension
|
|
includes:
|
|
- "**/*Tests.*"
|
|
- "**/TestHelpers/*"
|
|
- path: GlobalTestHelpers
|
|
dependencies:
|
|
- target: BitwardenAutoFillExtension
|
|
- target: BitwardenShared
|
|
- target: BitwardenKit/TestHelpers
|
|
randomExecutionOrder: true
|
|
|
|
BitwardenShareExtension:
|
|
type: app-extension
|
|
platform: iOS
|
|
configFiles:
|
|
Debug: Configs/BitwardenShareExtension.xcconfig
|
|
Release: Configs/BitwardenShareExtension.xcconfig
|
|
settings:
|
|
base:
|
|
INFOPLIST_FILE: BitwardenShareExtension/Application/Support/Info.plist
|
|
CODE_SIGN_ENTITLEMENTS: BitwardenShareExtension/Application/Support/BitwardenShareExtension.entitlements
|
|
sources:
|
|
- path: BitwardenShareExtension
|
|
excludes:
|
|
- "**/*Tests.*"
|
|
- "**/TestHelpers/*"
|
|
dependencies:
|
|
- package: BitwardenSdk
|
|
- target: BitwardenShared
|
|
BitwardenShareExtensionTests:
|
|
type: bundle.unit-test
|
|
platform: iOS
|
|
settings:
|
|
base:
|
|
INFOPLIST_FILE: BitwardenShareExtension/Application/TestHelpers/Support/Info.plist
|
|
sources:
|
|
- path: BitwardenShareExtension
|
|
includes:
|
|
- "**/*Tests.*"
|
|
- "**/TestHelpers/*"
|
|
- path: GlobalTestHelpers
|
|
dependencies:
|
|
- target: BitwardenShareExtension
|
|
- target: BitwardenShared
|
|
- target: BitwardenKit/TestHelpers
|
|
randomExecutionOrder: true
|
|
|
|
BitwardenShared:
|
|
type: framework
|
|
platform: iOS
|
|
configFiles:
|
|
Debug: Configs/BitwardenShared-Debug.xcconfig
|
|
Release: Configs/BitwardenShared-Release.xcconfig
|
|
settings:
|
|
base:
|
|
APPLICATION_EXTENSION_API_ONLY: true
|
|
DEVELOPMENT_ASSET_PATHS:
|
|
- BitwardenShared/UI/Auth/PreviewContent
|
|
- BitwardenShared/UI/Platform/PreviewContent
|
|
- BitwardenShared/UI/Tools/PreviewContent
|
|
- BitwardenShared/UI/Vault/PreviewContent
|
|
INFOPLIST_FILE: BitwardenShared/UI/Platform/Application/Support/Info.plist
|
|
sources:
|
|
- path: BitwardenShared
|
|
excludes:
|
|
- "**/*Tests.*"
|
|
- "**/TestHelpers/*"
|
|
- "**/Fixtures/*"
|
|
- "**/__Snapshots__/*"
|
|
- "**/Sourcery/Generated/*"
|
|
- "**/sourcery.yml"
|
|
- path: BitwardenShared
|
|
includes:
|
|
- "**/__Snapshots__/*"
|
|
buildPhase: none
|
|
- path: BitwardenShared/UI/Platform/Application/Support/Generated/Assets.swift
|
|
optional: true
|
|
- path: BitwardenWatchShared
|
|
- path: BitwardenShared/Sourcery/sourcery.yml
|
|
buildPhase: none
|
|
dependencies:
|
|
- package: BitwardenSdk
|
|
- target: BitwardenKit/AuthenticatorBridgeKit
|
|
- target: BitwardenKit/BitwardenKit
|
|
- target: BitwardenKit/BitwardenResources
|
|
- target: BitwardenKit/Networking
|
|
preBuildScripts:
|
|
- name: SwiftGen
|
|
script: |
|
|
if [[ ! "$PATH" =~ "/opt/homebrew/bin" ]]; then
|
|
PATH="/opt/homebrew/bin:$PATH"
|
|
fi
|
|
mint run swiftgen config run --config "swiftgen-pm.yml"
|
|
basedOnDependencyAnalysis: false
|
|
outputFiles:
|
|
- $(SRCROOT)/BitwardenShared/UI/Platform/Application/Support/Generated/Assets.swift
|
|
- name: Sourcery
|
|
script: |
|
|
if [[ ! "$PATH" =~ "/opt/homebrew/bin" ]]; then
|
|
PATH="/opt/homebrew/bin:$PATH"
|
|
fi
|
|
mint run sourcery --config BitwardenShared/Sourcery/sourcery.yml
|
|
basedOnDependencyAnalysis: false
|
|
outputFiles:
|
|
- $(SRCROOT)/BitwardenShared/Sourcery/Generated/AutoMockable.generated.swift
|
|
BitwardenSharedTests:
|
|
type: bundle.unit-test
|
|
platform: iOS
|
|
configFiles:
|
|
Debug: Configs/BitwardenSharedTests-Debug.xcconfig
|
|
Release: Configs/BitwardenSharedTests-Release.xcconfig
|
|
settings:
|
|
base:
|
|
BUNDLE_LOADER: "$(TEST_HOST)"
|
|
TEST_HOST: "$(BUILT_PRODUCTS_DIR)/Bitwarden.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Bitwarden"
|
|
INFOPLIST_FILE: BitwardenShared/UI/Platform/Application/TestHelpers/Support/Info.plist
|
|
sources:
|
|
- path: BitwardenShared
|
|
includes:
|
|
- "**/*Tests.*"
|
|
- "**/TestHelpers/*"
|
|
- "**/Fixtures/*"
|
|
excludes:
|
|
- "**/*SnapshotTests.*"
|
|
- "**/*ViewInspectorTests.*"
|
|
- path: GlobalTestHelpers
|
|
- path: BitwardenShared/Sourcery/Generated
|
|
optional: true
|
|
- path: BitwardenShared/Sourcery/Generated/AutoMockable.generated.swift
|
|
optional: true
|
|
dependencies:
|
|
- target: Bitwarden
|
|
- target: BitwardenShared
|
|
- target: BitwardenKit/AuthenticatorBridgeKitMocks
|
|
- target: BitwardenKit/BitwardenKitMocks
|
|
- target: BitwardenKit/TestHelpers
|
|
- package: BitwardenSdk
|
|
- package: SnapshotTesting
|
|
product: InlineSnapshotTesting
|
|
randomExecutionOrder: true
|
|
BitwardenSharedSnapshotTests:
|
|
type: bundle.unit-test
|
|
platform: iOS
|
|
configFiles:
|
|
Debug: Configs/BitwardenSharedTests-Debug.xcconfig
|
|
Release: Configs/BitwardenSharedTests-Release.xcconfig
|
|
settings:
|
|
base:
|
|
BUNDLE_LOADER: "$(TEST_HOST)"
|
|
TEST_HOST: "$(BUILT_PRODUCTS_DIR)/Bitwarden.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Bitwarden"
|
|
INFOPLIST_FILE: BitwardenShared/UI/Platform/Application/TestHelpers/Support/Info.plist
|
|
sources:
|
|
- path: BitwardenShared
|
|
includes:
|
|
- "**/*SnapshotTests.*"
|
|
- "**/TestHelpers/*"
|
|
- "**/Fixtures/*"
|
|
- path: GlobalTestHelpers
|
|
- path: BitwardenShared/Sourcery/Generated
|
|
optional: true
|
|
- path: BitwardenShared/Sourcery/Generated/AutoMockable.generated.swift
|
|
optional: true
|
|
dependencies:
|
|
- target: Bitwarden
|
|
- target: BitwardenShared
|
|
- target: BitwardenKit/BitwardenKitMocks
|
|
- target: BitwardenKit/TestHelpers
|
|
- package: BitwardenSdk
|
|
- package: SnapshotTesting
|
|
- package: SnapshotTesting
|
|
product: InlineSnapshotTesting
|
|
randomExecutionOrder: true
|
|
BitwardenSharedViewInspectorTests:
|
|
type: bundle.unit-test
|
|
platform: iOS
|
|
configFiles:
|
|
Debug: Configs/BitwardenSharedTests-Debug.xcconfig
|
|
Release: Configs/BitwardenSharedTests-Release.xcconfig
|
|
settings:
|
|
base:
|
|
BUNDLE_LOADER: "$(TEST_HOST)"
|
|
TEST_HOST: "$(BUILT_PRODUCTS_DIR)/Bitwarden.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Bitwarden"
|
|
INFOPLIST_FILE: BitwardenShared/UI/Platform/Application/TestHelpers/Support/Info.plist
|
|
sources:
|
|
- path: BitwardenShared
|
|
includes:
|
|
- "**/*ViewInspectorTests.*"
|
|
- "**/TestHelpers/*"
|
|
- "**/Fixtures/*"
|
|
- path: GlobalTestHelpers
|
|
- path: BitwardenShared/Sourcery/Generated
|
|
optional: true
|
|
- path: BitwardenShared/Sourcery/Generated/AutoMockable.generated.swift
|
|
optional: true
|
|
dependencies:
|
|
- target: Bitwarden
|
|
- target: BitwardenShared
|
|
- target: BitwardenKit/BitwardenKitMocks
|
|
- target: BitwardenKit/TestHelpers
|
|
- target: BitwardenKit/ViewInspectorTestHelpers
|
|
- package: BitwardenSdk
|
|
- package: ViewInspector
|
|
randomExecutionOrder: true
|
|
|
|
BitwardenWatchApp:
|
|
type: application
|
|
platform: watchOS
|
|
configFiles:
|
|
Debug: Configs/BitwardenWatchApp-Debug.xcconfig
|
|
Release: Configs/BitwardenWatchApp-Release.xcconfig
|
|
settings:
|
|
base:
|
|
INFOPLIST_FILE: BitwardenWatchApp/Info.plist
|
|
sources:
|
|
- path: BitwardenWatchApp
|
|
- path: BitwardenWatchShared
|
|
- path: BitwardenWatchApp/GoogleService-Info.plist
|
|
buildPhase: resources
|
|
dependencies:
|
|
- target: BitwardenWatchWidgetExtension
|
|
- package: Firebase
|
|
product: FirebaseCrashlytics
|
|
|
|
BitwardenWatchWidgetExtension:
|
|
type: app-extension
|
|
platform: watchOS
|
|
deploymentTarget: 9.0
|
|
configFiles:
|
|
Debug: Configs/BitwardenWatchWidgetExtension.xcconfig
|
|
Release: Configs/BitwardenWatchWidgetExtension.xcconfig
|
|
settings:
|
|
base:
|
|
INFOPLIST_FILE: BitwardenWatchWidgetExtension/Application/Support/Info.plist
|
|
sources:
|
|
- path: BitwardenWatchWidgetExtension
|