Structure
ResolvedConfig
Flat struct containing all resolved configuration values after merging CLI flags, environment variables, Shipfile.yml, and built-in defaults.
struct ResolvedConfigOverview
ResolvedConfig is created by ConfigResolver and passed to actions via ActionContext. Actions read from this struct rather than parsing raw config sources themselves.
Priority
CLI flags (highest)
Shipfile.yml values
Environment variables (
SHIPIT_*)Built-in defaults (lowest)
Topics
Instance Properties
let androidBuildSystem: BuildSystemResolved Android build system.
BuildSystem.nativefor pure Gradle projects;.flutter,.reactNative, or.kmpwhen the Android app is produced by a cross-platform tool.let androidBuildType: AndroidBuildTypeDefault Android artifact type.
let androidBuildVariant: StringDefault Android build variant (e.g.
release,debug).let androidCLI: AndroidCLIConfigResolved AndroidCLI integration settings.
let androidGradleFlags: [String]Additional Gradle flags applied to Android Gradle invocations.
let androidGradleProperties: [String : String]Additional Gradle
-Pproject properties.let androidKeyAlias: String?Signing key alias within the keystore.
let androidKeyPassword: String?Key password (from environment — never stored in Shipfile).
let androidKeystorePassword: String?Keystore password (from environment — never stored in Shipfile).
let androidKeystorePath: String?Path to the Android keystore file.
let androidModule: StringGradle module name (e.g.
app).let androidPackageName: String?Android application package name (e.g.
com.example.myapp).let androidRolloutFraction: Double?Staged rollout fraction (0.0–1.0).
nilmeans full rollout.let androidScope: GradleTaskScopeDefault Android Gradle test scope.
let androidTestDevices: TestDeviceConfigDefault Android test device configuration.
let androidTestKind: TestKindDefault Android test kind.
let appProject: String?Path to the Xcode project. Used when
appWorkspaceis nil.let appScheme: String?The Xcode scheme for building and testing.
let appWorkspace: String?Path to the Xcode workspace.
let archiveExportMethod: StringExport method for IPA generation.
let archiveIncludeSymbols: BoolWhether to include debug symbols.
let archiveOutputPath: String?Output path for the
.xcarchive.let ascIssuerID: String?App Store Connect Issuer ID.
let ascKeyID: String?App Store Connect API Key ID.
let ascPrivateKeyData: Data?Raw contents of the
.p8private key.let automaticCodeSigning: BoolWhether Xcode automatic signing should be used.
let automaticRelease: BoolWhether to release automatically after approval.
let buildConfiguration: StringBuild configuration name (e.g.
Release,Debug).let bundleID: String?The app bundle identifier.
let bundleIDFromTargetBuildSettings: BoolWhether the bundle identifier was inferred from Xcode target build settings.
let ci: BoolWhether the current run is in CI mode.
let codeSigningGitUrl: String?Git URL of the encrypted certificate repository.
let codeSigningP12Data: Data?Decoded
.p12certificate content for manual signing when provided via base64.let codeSigningP12Password: String?Password for the resolved
.p12certificate.let codeSigningP12Path: String?Path to the resolved
.p12certificate for manual signing.let codeSigningProvisioningProfileData: Data?Decoded
.mobileprovisioncontent for manual signing when provided via base64.let codeSigningProvisioningProfilePath: String?Path to the resolved
.mobileprovisionfile for manual signing.let codeSigningStorage: StringCertificate storage backend (
git,s3, orgcs).let codeSigningType: StringCode signing type (
vaultormanual).let customActions: [String : CustomActionConfig]User-defined composite actions from the Shipfile.
let derivedDataPath: String?Path to the derived data directory.
let distributeExternal: BoolWhether to distribute to external testers.
let exportArchivePath: String?Input archive path for the export step.
let exportOutputDirectory: String?Output directory for the exported IPA.
let googlePlayServiceAccountData: Data?Raw service account JSON data for Google Play authentication.
let gradleProjectDir: StringDirectory containing the Gradle root project.
let gradlewPath: String?Explicit path to the
gradlewwrapper script.let iosBuildSystem: BuildSystemResolved iOS build system.
BuildSystem.nativefor Swift-only Xcode projects;.flutter,.reactNative, or.kmpwhen the iOS app is produced by a cross-platform tool.let kmpArchiveTarget: StringKMP iOS framework target used for archives.
let kmpBuildTarget: StringKMP iOS framework target used for local builds.
let kmpSharedModule: StringKMP Gradle module containing shared iOS framework tasks.
let kmpTestTask: StringKMP iOS test Gradle task.
let metadataDirectory: StringLocal directory containing metadata files.
let phasedRelease: BoolWhether to use phased release.
let platform: PlatformResolved target platform.
let processedFiles: [String]Files that were successfully read while resolving this configuration.
let projectGenerationAutoGenerate: BoolWhether to auto-generate the project when the output is missing.
let projectGenerationCommand: String?Shell command to run for project generation.
let projectGenerationOutputProject: String?Path to the generated output project (e.g.
MyApp.xcodeproj).let projectGenerationSpecPath: String?Path to the project spec file (e.g.
project.yml).let projectGenerationTool: String?Project generation tool name (e.g.
xcodegen,tuist).let projectRoot: StringDirectory used for project-relative tool execution. Defaults to the Shipfile directory.
let screenshotDevices: [String]Simulator device names for screenshot capture.
let screenshotLocales: [String]Locale identifiers for screenshot capture.
let screenshotOutputDirectory: StringOutput directory for organized screenshots.
let screenshotScheme: String?Xcode scheme for screenshot UI tests.
let skipWaitingForBuildProcessing: BoolWhether to skip waiting for build processing.
let slackChannel: String?Default Slack channel for notifications.
let slackWebhookUrl: String?Slack webhook URL for notifications.
let submitForReview: BoolWhether to submit for review after metadata push.
let teamID: String?The Apple Developer Team ID.
let teamIDFromTargetBuildSettings: BoolWhether the team ID was inferred from Xcode target build settings.
let testFlightChangelog: String?Release notes for the TestFlight build.
let testFlightGroups: [String]Beta group names for TestFlight distribution.
let vaultPassword: String?Passphrase for the encrypted certificate repository.
let versioningBuildKey: StringYAML key for the build number in the project spec (default:
CURRENT_PROJECT_VERSION).let versioningMarketingKey: StringYAML key for the marketing version in the project spec (default:
MARKETING_VERSION).let versioningSource: StringSource of version information.
let versioningSpecPath: String?Path to the project spec file for
project_specversioning source.let versioningStrategy: StringBuild number increment strategy.
let workflows: [String : WorkflowConfig]Named release workflows from the Shipfile.
let xcargs: [String : String]Additional xcargs for xcodebuild.
Instance Methods
func overriding(buildVariant: String?, flavor: String?, app: AppConfig?, build: BuildConfig?, archive: ArchiveConfig?, export: ExportConfig?, codeSigning: CodeSigningConfig?) -> ResolvedConfigReturns a copy of this configuration with workflow-level overrides applied.
func overriding(gradleProjectDir: String) -> ResolvedConfigReturns a copy of this config with the specified Android build variant and/or flavor overridden.
Relationships
Conforms To
Swift.SendableSwift.SendableMetatype