step

package
v0.0.0-...-d6317e5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 16, 2025 License: MIT Imports: 51 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ExportDSYMs

func ExportDSYMs(dsymDir string, dsyms []string) error

ExportDSYMs ...

func ExportOutputDir

func ExportOutputDir(cmdFactory command.Factory, sourceDirPth, destinationDirPth, envKey string, logger log.Logger) error

ExportOutputDir ...

func ExportOutputDirAsZip

func ExportOutputDirAsZip(cmdFactory command.Factory, sourceDirPth, destinationPth, envKey string, logger log.Logger) error

ExportOutputDirAsZip ...

func ExportOutputFile

func ExportOutputFile(cmdFactory command.Factory, sourcePth, destinationPth, envKey string) error

ExportOutputFile ...

func ExportOutputFileContent

func ExportOutputFileContent(cmdFactory command.Factory, content, destinationPth, envKey string) error

ExportOutputFileContent ...

func OpenArchivableProject

func OpenArchivableProject(pth, schemeName, configurationName string) (*xcodeproj.XcodeProj, *xcscheme.Scheme, string, error)

Types

type Config

type Config struct {
	Inputs
	XcodeMajorVersion           int
	XcodebuildAdditionalOptions []string
	CodesignManager             *codesign.Manager // nil if automatic code signing is "off"
}

Config ...

type EnsureDependenciesOpts

type EnsureDependenciesOpts struct {
	XCPretty bool
}

EnsureDependenciesOpts ...

type ExportOpts

type ExportOpts struct {
	OutputDir      string
	ArtifactName   string
	ExportAllDsyms bool

	Archive *xcarchive.IosArchive

	ExportOptionsPath string
	IPAExportDir      string

	XcodebuildArchiveLog       string
	XcodebuildExportArchiveLog string
	IDEDistrubutionLogsDir     string
}

ExportOpts ...

type Inputs

type Inputs struct {
	ProjectPath  string `env:"project_path,file"`
	Scheme       string `env:"scheme,required"`
	ExportMethod string `env:"distribution_method,opt[app-store,ad-hoc,enterprise,development]"`

	// xcodebuild configuration
	Configuration      string `env:"configuration"`
	XcconfigContent    string `env:"xcconfig_content"`
	PerformCleanAction bool   `env:"perform_clean_action,opt[yes,no]"`
	XcodebuildOptions  string `env:"xcodebuild_options"`

	// xcodebuild log formatting
	LogFormatter string `env:"log_formatter,opt[xcpretty,xcodebuild]"`

	// Automatic code signing
	CodeSigningAuthSource           string          `env:"automatic_code_signing,opt[off,api-key,apple-id]"`
	RegisterTestDevices             bool            `env:"register_test_devices,opt[yes,no]"`
	TestDeviceListPath              string          `env:"test_device_list_path"`
	MinDaysProfileValid             int             `env:"min_profile_validity,required"`
	CertificateURLList              string          `env:"certificate_url_list"`
	CertificatePassphraseList       stepconf.Secret `env:"passphrase_list"`
	KeychainPath                    string          `env:"keychain_path"`
	KeychainPassword                stepconf.Secret `env:"keychain_password"`
	FallbackProvisioningProfileURLs string          `env:"fallback_provisioning_profile_url_list"`

	// IPA export configuration
	ExportDevelopmentTeam         string `env:"export_development_team"`
	CompileBitcode                bool   `env:"compile_bitcode,opt[yes,no]"`
	UploadBitcode                 bool   `env:"upload_bitcode,opt[yes,no]"`
	ICloudContainerEnvironment    string `env:"icloud_container_environment"`
	TestFlightInternalTestingOnly bool   `env:"testflight_internal_testing_only,opt[yes,no]"`
	ExportOptionsPlistContent     string `env:"export_options_plist_content"`

	// Step Output Export configuration
	OutputDir      string `env:"output_dir,required"`
	ExportAllDsyms bool   `env:"export_all_dsyms,opt[yes,no]"`
	ArtifactName   string `env:"artifact_name"`

	// Caching
	CacheLevel string `env:"cache_level,opt[none,swift_packages]"`

	// App Store Connect connection override
	APIKeyPath              stepconf.Secret `env:"api_key_path"`
	APIKeyID                string          `env:"api_key_id"`
	APIKeyIssuerID          string          `env:"api_key_issuer_id"`
	APIKeyEnterpriseAccount bool            `env:"api_key_enterprise_account,opt[yes,no]"`

	// Debugging
	VerboseLog bool `env:"verbose_log,opt[yes,no]"`

	// Hidden inputs
	BuildURL      string          `env:"BITRISE_BUILD_URL"`
	BuildAPIToken stepconf.Secret `env:"BITRISE_BUILD_API_TOKEN"`
}

Inputs ...

type NSError

type NSError struct {
	Description string
	Suggestion  string
}

func NewNSError

func NewNSError(str string) *NSError

func (NSError) Error

func (e NSError) Error() string

type Platform

type Platform string

func BuildableTargetPlatform

func BuildableTargetPlatform(
	xcodeProj *xcodeproj.XcodeProj,
	scheme *xcscheme.Scheme,
	configurationName string,
	additionalOptions []string,
	provider TargetBuildSettingsProvider,
	logger log.Logger,
) (Platform, error)

type Printable

type Printable interface {
	PrintableCmd() string
}

type RunOpts

type RunOpts struct {
	// Shared
	ProjectPath       string
	Scheme            string
	Configuration     string
	LogFormatter      string
	XcodeMajorVersion int
	ArtifactName      string

	// Code signing, nil if automatic code signing is "off"
	CodesignManager *codesign.Manager

	// Archive
	PerformCleanAction          bool
	XcconfigContent             string
	XcodebuildAdditionalOptions []string
	CacheLevel                  string

	// IPA Export
	CustomExportOptionsPlistContent string
	ExportMethod                    string
	TestFlightInternalTestingOnly   bool
	ICloudContainerEnvironment      string
	ExportDevelopmentTeam           string
	UploadBitcode                   bool
	CompileBitcode                  bool
}

RunOpts ...

type RunResult

type RunResult struct {
	Archive      *xcarchive.IosArchive
	ArtifactName string

	ExportOptionsPath string
	IPAExportDir      string

	XcodebuildArchiveLog       string
	XcodebuildExportArchiveLog string
	IDEDistrubutionLogsDir     string
}

RunResult ...

type TargetBuildSettingsProvider

type TargetBuildSettingsProvider interface {
	TargetBuildSettings(xcodeProj *xcodeproj.XcodeProj, target, configuration string, customOptions ...string) (serialized.Object, error)
}

type XCPrettyInstallError

type XCPrettyInstallError struct {
	// contains filtered or unexported fields
}

XCPrettyInstallError is used to signal an error around xcpretty installation

func (XCPrettyInstallError) Error

func (e XCPrettyInstallError) Error() string

type XcodeBuild

type XcodeBuild struct {
}

func (XcodeBuild) TargetBuildSettings

func (x XcodeBuild) TargetBuildSettings(xcodeProj *xcodeproj.XcodeProj, target, configuration string, customOptions ...string) (serialized.Object, error)

type XcodeVersionProvider

type XcodeVersionProvider interface {
	GetXcodeVersion() (models.XcodebuildVersionModel, error)
}

func NewXcodebuildXcodeVersionProvider

func NewXcodebuildXcodeVersionProvider() XcodeVersionProvider

type XcodebuildArchiver

type XcodebuildArchiver struct {
	// contains filtered or unexported fields
}

XcodebuildArchiver ...

func NewXcodebuildArchiver

func NewXcodebuildArchiver(xcodeVersionProvider XcodeVersionProvider, stepInputParser stepconf.InputParser, pathProvider pathutil.PathProvider, pathChecker pathutil.PathChecker, pathModifier pathutil.PathModifier, fileManager fileutil.FileManager, logger log.Logger, cmdFactory command.Factory) XcodebuildArchiver

NewXcodebuildArchiver ...

func (XcodebuildArchiver) EnsureDependencies

func (s XcodebuildArchiver) EnsureDependencies(opts EnsureDependenciesOpts) error

EnsureDependencies ...

func (XcodebuildArchiver) ExportOutput

func (s XcodebuildArchiver) ExportOutput(opts ExportOpts) error

ExportOutput ...

func (XcodebuildArchiver) ProcessInputs

func (s XcodebuildArchiver) ProcessInputs() (Config, error)

ProcessInputs ...

func (XcodebuildArchiver) Run

func (s XcodebuildArchiver) Run(opts RunOpts) (RunResult, error)

Run ...

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL