scanners

package
v0.0.0-...-c11d38b Latest Latest
Warning

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

Go to latest
Published: Feb 8, 2021 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const CustomConfigName = "other-config"

CustomConfigName ...

View Source
const CustomProjectType = "other"

CustomProjectType ...

Variables

View Source
var AutomationToolScanners = []ScannerInterface{
	fastlane.NewScanner(),
}

AutomationToolScanners contains active automation tool scanners

ProjectScanners ...

Functions

func CustomConfig

func CustomConfig() (models.BitriseConfigMap, error)

CustomConfig ...

Types

type AutomationToolScanner

type AutomationToolScanner interface {
	// Set the project types detected
	SetDetectedProjectTypes(projectTypes []string)
}

AutomationToolScanner contains additional methods (relative to ScannerInterface) implemented by an AutomationToolScanner

type ScannerInterface

type ScannerInterface interface {
	// The name of the scanner is used for logging and
	// to store the scanner outputs, like warnings, options and configs.
	// The outputs are stored in a map[NAME]OUTPUT, like: warningMap[ios]warnings, optionsMap[android]options, configMap[xamarin]configs, ...,
	// this means, that the SCANNER NAME HAS TO BE UNIQUE.
	// Returns:
	// - the name of the scanner
	Name() string

	// Should implement as minimal logic as possible to determine if searchDir contains the - in question - platform or not.
	// Inouts:
	// - searchDir: the directory where the project to scan exists.
	// Returns:
	// - platform detected
	// - error if (if any)
	DetectPlatform(string) (bool, error)

	// ExcludedScannerNames is used to mark, which scanners should be excluded, if the current scanner detects platform.
	ExcludedScannerNames() []string

	// OptionNode is the model, an n-ary tree, used to store the available configuration combintaions.
	// It defines an option decision tree whose every branch maps to a bitrise configuration.
	// Each branch should define a complete and valid options to build the final bitrise config model.
	// Every leaf node has to be the key of the workflow (in the BitriseConfigMap), which will be fulfilled with the selected options.
	// Returns:
	// - OptionNode
	// - Warnings (if any)
	// - error if (if any)
	Options() (models.OptionNode, models.Warnings, models.Icons, error)

	// Returns:
	// - default options for the platform.
	DefaultOptions() models.OptionNode

	// BitriseConfigMap's each element is a bitrise config template which will be fulfilled with the user selected options.
	// Every config's key should be the last option one of the OptionNode branches.
	// Returns:
	// - platform BitriseConfigMap
	Configs() (models.BitriseConfigMap, error)

	// Returns:
	// - platform default BitriseConfigMap
	DefaultConfigs() (models.BitriseConfigMap, error)
}

ScannerInterface ...

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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