Documentation ¶
Index ¶
- Constants
- func NoopDataLoader(config *Config) error
- type Config
- func (c *Config) GetBundleArchiveLogs() (string, error)
- func (c *Config) GetBundlesCache() (string, error)
- func (c *Config) GetCredentialPath(name string) (string, error)
- func (c *Config) GetCredentialsDir() (string, error)
- func (c *Config) GetHomeDir() (string, error)
- func (c *Config) GetMixinDir(mixin string) (string, error)
- func (c *Config) GetMixinPath(mixin string) (string, error)
- func (c *Config) GetMixinRuntimePath(mixin string) (string, error)
- func (c *Config) GetMixinsDir() (string, error)
- func (c *Config) GetPluginPath(plugin string) (string, error)
- func (c *Config) GetPluginsDir() (string, error)
- func (c *Config) GetPorterPath() (string, error)
- func (c *Config) GetPorterRuntimePath() (string, error)
- func (c *Config) LoadData() error
- func (c *Config) SetHomeDir(home string)
- type Data
- type DataStoreLoaderFunc
- type InstanceStore
- type TestConfig
Constants ¶
const ( // Name is the file name of the porter configuration file. Name = "porter.yaml" // EnvHOME is the name of the environment variable containing the porter home directory path. EnvHOME = "PORTER_HOME" // EnvBundleName is the name of the environment variable containing the name of the bundle. EnvBundleName = "CNAB_BUNDLE_NAME" // EnvClaimName is the name of the environment variable containing the name of the claim. EnvClaimName = "CNAB_INSTALLATION_NAME" // EnvACTION is the request EnvACTION = "CNAB_ACTION" // EnvDEBUG is a custom porter parameter that signals that --debug flag has been passed through from the client to the runtime. EnvDEBUG = "PORTER_DEBUG" CustomBundleKey = "sh.porter" // BundleOutputsDir is the directory where outputs are expected to be placed // during the execution of a bundle action. BundleOutputsDir = "/cnab/app/outputs" // ClaimFilepath is the filepath to the claim.json inside of an invocation image ClaimFilepath = "/cnab/claim.json" )
Variables ¶
This section is empty.
Functions ¶
func NoopDataLoader ¶
NoopDataLoader skips loading the datastore.
Types ¶
type Config ¶
type Config struct { *context.Context Data *Data DataLoader DataStoreLoaderFunc // contains filtered or unexported fields }
func (*Config) GetBundleArchiveLogs ¶
GetArchiveLogs locates the output for Bundle Archive Operations.
func (*Config) GetBundlesCache ¶
GetBundlesDir locates the bundle cache from the porter home directory.
func (*Config) GetCredentialsDir ¶
func (*Config) GetHomeDir ¶
GetHomeDir determines the absolute path to the porter home directory.
func (*Config) GetMixinRuntimePath ¶
func (*Config) GetMixinsDir ¶
func (*Config) GetPluginsDir ¶
func (*Config) GetPorterPath ¶
func (*Config) GetPorterRuntimePath ¶
func (*Config) LoadData ¶
LoadData from the datastore in PORTER_HOME. This defaults to doing nothing unless DataLoader has been set.
func (*Config) SetHomeDir ¶
type Data ¶
type Data struct { // Only define fields here that you need to access from code // Values are dynamically applied to flags and don't need to be defined InstanceStoragePlugin string `mapstructure:"instance-storage-plugin"` DefaultInstanceStore string `mapstructure:"default-instance-store"` InstanceStores []InstanceStore `mapstructure:"instance-store"` }
Data is the data stored in PORTER_HOME/porter.toml|yaml|json
func (*Data) GetDefaultInstanceStore ¶
func (*Data) GetInstanceStoragePlugin ¶
func (*Data) GetInstanceStore ¶
func (d *Data) GetInstanceStore(name string) (InstanceStore, error)
type DataStoreLoaderFunc ¶
type InstanceStore ¶
type InstanceStore struct { Name string `mapstructure:"name"` PluginSubKey string `mapstructure:"plugin"` Config map[string]interface{} `mapstructure:"config"` }
func (InstanceStore) GetConfig ¶
func (is InstanceStore) GetConfig() interface{}
func (InstanceStore) GetName ¶
func (is InstanceStore) GetName() string
func (InstanceStore) GetPluginSubKey ¶
func (is InstanceStore) GetPluginSubKey() string
type TestConfig ¶
type TestConfig struct { *Config TestContext *context.TestContext }
func NewTestConfig ¶
func NewTestConfig(t *testing.T) *TestConfig
NewTestConfig initializes a configuration suitable for testing, with the output buffered, and an in-memory file system.
func (*TestConfig) SetupIntegrationTest ¶
func (c *TestConfig) SetupIntegrationTest(home string)
InitializePorterHome initializes the filesystem with the supporting files in the PORTER_HOME directory.
func (*TestConfig) SetupPorterHome ¶
func (c *TestConfig) SetupPorterHome()
InitializePorterHome initializes the test filesystem with the supporting files in the PORTER_HOME directory.