ios

package
v0.0.0-...-cb74e61 Latest Latest
Warning

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

Go to latest
Published: Oct 30, 2023 License: MIT Imports: 26 Imported by: 1

Documentation

Index

Constants

View Source
const (
	ProjectPathInputKey     = "project_path"
	ProjectPathInputEnvKey  = "BITRISE_PROJECT_PATH"
	ProjectPathInputTitle   = "Project or Workspace path"
	ProjectPathInputSummary = "" /* 171-byte string literal not displayed */
)
View Source
const (
	SchemeInputKey     = "scheme"
	SchemeInputEnvKey  = "BITRISE_SCHEME"
	SchemeInputTitle   = "Scheme name"
	SchemeInputSummary = "" /* 287-byte string literal not displayed */
)
View Source
const (
	DistributionMethodInputKey     = "distribution_method"
	DistributionMethodEnvKey       = "BITRISE_DISTRIBUTION_METHOD"
	DistributionMethodInputTitle   = "Distribution method"
	DistributionMethodInputSummary = "" /* 212-byte string literal not displayed */
)
View Source
const (
	ExportMethodInputKey     = "export_method"
	ExportMethodEnvKey       = "BITRISE_EXPORT_METHOD"
	ExportMethodInputTitle   = "Application export method\nNOTE: `none` means: Export a copy of the application without re-signing."
	ExportMethodInputSummary = "" /* 212-byte string literal not displayed */
)
View Source
const (
	ExportXCArchiveProductInputKey = "product"

	ExportXCArchiveProductInputAppClipValue = "app-clip"
)
View Source
const (
	AutomaticCodeSigningInputKey         = "automatic_code_signing"
	AutomaticCodeSigningInputAPIKeyValue = "api-key"
)
View Source
const (
	TestRepetitionModeKey                 = "test_repetition_mode"
	TestRepetitionModeRetryOnFailureValue = "retry_on_failure"
	BuildForTestDestinationKey            = "destination"
	BuildForTestDestinationValue          = "platform=iOS Simulator,name=iPhone 8 Plus,OS=latest"
	AutomaticCodeSigningKey               = "automatic_code_signing"
	AutomaticCodeSigningValue             = "api-key"
	CacheLevelKey                         = "cache_level"
	CacheLevelNone                        = "none"
)
View Source
const (
	CarthageCommandInputKey = "carthage_command"
)
View Source
const (
	ConfigurationInputKey = "configuration"
)

Variables

View Source
var AllowCartfileBaseFilter = pathutil.BaseFilter(cartfileBase, true)
View Source
var AllowPodfileBaseFilter = pathutil.BaseFilter(podfileBase, true)

AllowPodfileBaseFilter ...

View Source
var IosExportMethods = []string{"app-store", "ad-hoc", "enterprise", "development"}
View Source
var MacExportMethods = []string{"app-store", "developer-id", "development", "none"}

Functions

func FilterRelevantCartFile

func FilterRelevantCartFile(fileList []string) ([]string, error)

FilterRelevantCartFile ...

func FilterRelevantPodfiles

func FilterRelevantPodfiles(fileList []string) ([]string, error)

FilterRelevantPodfiles ...

func FilterRelevantProjectFiles

func FilterRelevantProjectFiles(fileList []string, projectTypes ...XcodeProjectType) ([]string, error)

FilterRelevantProjectFiles ...

func FilterRelevantWorkspaceFiles

func FilterRelevantWorkspaceFiles(fileList []string, projectTypes ...XcodeProjectType) ([]string, error)

FilterRelevantWorkspaceFiles ...

func GemVersionFromGemfileLock

func GemVersionFromGemfileLock(gem, gemfileLockPth string) (string, error)

GemVersionFromGemfileLock ...

func GemVersionFromGemfileLockContent

func GemVersionFromGemfileLockContent(gem, content string) string

GemVersionFromGemfileLockContent ...

func GenerateConfig

func GenerateConfig(projectType XcodeProjectType, configDescriptors []ConfigDescriptor, sshKeyActivation models.SSHKeyActivation) (models.BitriseConfigMap, error)

func GenerateConfigBuilder

func GenerateConfigBuilder(
	projectType XcodeProjectType,
	sshKeyActivation models.SSHKeyActivation,
	hasPodfile,
	hasTest,
	hasAppClip,
	hasSPMDependencies,
	isSPMProject bool,
	carthageCommand,
	exportMethod string,
) models.ConfigBuilderModel

func GenerateDefaultConfig

func GenerateDefaultConfig(projectType XcodeProjectType) (models.BitriseConfigMap, error)

func GenerateDefaultOptions

func GenerateDefaultOptions(projectType XcodeProjectType) models.OptionNode

func HasCartfileInDirectoryOf

func HasCartfileInDirectoryOf(pth string) bool

func HasCartfileResolvedInDirectoryOf

func HasCartfileResolvedInDirectoryOf(pth string) bool

func HasSPMDependencies

func HasSPMDependencies(fileList []string) (bool, error)

Types

type ConfigDescriptor

type ConfigDescriptor struct {
	HasPodfile         bool
	CarthageCommand    string
	HasTest            bool
	HasAppClip         bool
	HasSPMDependencies bool

	ExportMethod string
	// contains filtered or unexported fields
}

func NewConfigDescriptor

func NewConfigDescriptor(hasPodfile bool, carthageCommand string, hasXCTest, hasAppClip, hasSPMDependencies, isSPMProject bool, exportMethod string) ConfigDescriptor

func RemoveDuplicatedConfigDescriptors

func RemoveDuplicatedConfigDescriptors(configDescriptors []ConfigDescriptor, projectType XcodeProjectType) []ConfigDescriptor

func (ConfigDescriptor) ConfigName

func (descriptor ConfigDescriptor) ConfigName(projectType XcodeProjectType) string

type DetectResult

type DetectResult struct {
	Projects []Project

	// HasSPMDependencies is true if SPM usage is detected, either in one of the Xcode Projects or as a pure Swift package
	HasSPMDependencies bool

	Warnings models.Warnings
}

func ParseProjects

func ParseProjects(projectType XcodeProjectType, searchDir string, excludeAppIcon, suppressPodFileParseError bool) (DetectResult, error)

ParseProjects collects available iOS/macOS projects

func ParseSPMProject

func ParseSPMProject(projectType XcodeProjectType, searchDir string) (DetectResult, error)

type Project

type Project struct {
	RelPath string
	// Is it a standalone project or a workspace?
	IsWorkspace    bool
	IsPodWorkspace bool
	IsSPMProject   bool

	// Carthage command to run: bootstrap/update
	CarthageCommand string
	Warnings        models.Warnings

	Schemes []Scheme
}

Project is an Xcode project on the filesystem

type Scanner

type Scanner struct {
	DetectResult DetectResult

	ConfigDescriptors []ConfigDescriptor

	ExcludeAppIcon            bool
	SuppressPodFileParseError bool
}

Scanner ...

func NewScanner

func NewScanner() *Scanner

NewScanner ...

func (*Scanner) Configs

func (scanner *Scanner) Configs(sshKeyActivation models.SSHKeyActivation) (models.BitriseConfigMap, error)

func (*Scanner) DefaultConfigs

func (scanner *Scanner) DefaultConfigs() (models.BitriseConfigMap, error)

DefaultConfigs ...

func (*Scanner) DefaultOptions

func (scanner *Scanner) DefaultOptions() models.OptionNode

DefaultOptions ...

func (*Scanner) DetectPlatform

func (scanner *Scanner) DetectPlatform(searchDir string) (bool, error)

DetectPlatform ...

func (*Scanner) ExcludedScannerNames

func (scanner *Scanner) ExcludedScannerNames() []string

ExcludedScannerNames ...

func (*Scanner) GetProjectType

func (scanner *Scanner) GetProjectType() string

GetProjectType returns the project_type property used in a bitrise config

func (*Scanner) Name

func (scanner *Scanner) Name() string

Name ...

func (*Scanner) Options

func (scanner *Scanner) Options() (models.OptionNode, models.Warnings, models.Icons, error)

Options ...

type Scheme

type Scheme struct {
	Name       string
	HasXCTests bool
	HasAppClip bool

	Icons models.Icons
}

Scheme is an Xcode project scheme or target

type XcodeProjectType

type XcodeProjectType string

XcodeProjectType ...

const (
	// XcodeProjectTypeIOS ...
	XcodeProjectTypeIOS XcodeProjectType = "ios"
	// XcodeProjectTypeMacOS ...
	XcodeProjectTypeMacOS XcodeProjectType = "macos"
)

Jump to

Keyboard shortcuts

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