Documentation
¶
Overview ¶
Package asset defines the asset dependencies and implements the graph engine.
Index ¶
- func GenerateUserProvidedAsset(inputName string, question *survey.Question, envVarName string) (string, error)
- func GenerateUserProvidedAssetForPath(inputName string, question *survey.Question, envVarName, pathEnvVarName string) (string, error)
- func PersistToFile(asset WritableAsset, directory string) error
- type Asset
- type Content
- type File
- type Parents
- type State
- type Store
- type StoreImpl
- type WritableAsset
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GenerateUserProvidedAsset ¶ added in v0.2.0
func GenerateUserProvidedAsset(inputName string, question *survey.Question, envVarName string) (string, error)
GenerateUserProvidedAsset queries for input from the user.
func GenerateUserProvidedAssetForPath ¶ added in v0.2.0
func GenerateUserProvidedAssetForPath(inputName string, question *survey.Question, envVarName, pathEnvVarName string) (string, error)
GenerateUserProvidedAssetForPath queries for input from the user. The input can be read from a file specified in an environment variable.
func PersistToFile ¶ added in v0.2.0
func PersistToFile(asset WritableAsset, directory string) error
PersistToFile writes all of the files of the specified asset into the specified directory.
Types ¶
type Asset ¶
type Asset interface {
// Dependencies returns the assets upon which this asset directly depends.
Dependencies() []Asset
// Generate generates this asset given the states of its parent assets.
Generate(Parents) error
// Name returns the human-friendly name of the asset.
Name() string
}
Asset used to install OpenShift.
type File ¶ added in v0.2.0
type File struct {
// Filename is the name of the file.
Filename string
// Data is the contents of the file.
Data []byte
}
File is a file for an Asset.
type Parents ¶ added in v0.2.0
Parents is the collection of assets upon which another asset is directly dependent.
type State ¶
type State struct {
Contents []Content
}
State is the state of an Asset.
func (*State) PersistToFile ¶
PersistToFile persists the data in the State to files. Each Content entry that has a non-empty Name will be persisted to a file with that name.
type Store ¶
type Store interface {
// Fetch retrieves the state of the given asset, generating it and its
// dependencies if necessary.
Fetch(Asset) error
}
Store is a store for the states of assets.
type StoreImpl ¶
type StoreImpl struct {
// contains filtered or unexported fields
}
StoreImpl is the implementation of Store.
func (*StoreImpl) Fetch ¶
Fetch retrieves the state of the given asset, generating it and its dependencies if necessary.
func (*StoreImpl) GetStateAsset ¶ added in v0.2.0
GetStateAsset renders the asset object arguments from the state file contents also returns a boolean indicating whether the object was found in the state file or not
type WritableAsset ¶ added in v0.2.0
WritableAsset is an Asset that has files that can be written to disk.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package cluster contains asset targets that generates the terraform file, prepare the infra, and bootstrap the cluster.
|
Package cluster contains asset targets that generates the terraform file, prepare the infra, and bootstrap the cluster. |
|
content
Package content contains the contents of files and systemd units to be added to Ignition configs.
|
Package content contains the contents of files and systemd units to be added to Ignition configs. |
|
Package installconfig generates the install config assets based on its dependencies.
|
Package installconfig generates the install config assets based on its dependencies. |
|
Package kubeconfig defines and generates the kubeconfig assets.
|
Package kubeconfig defines and generates the kubeconfig assets. |
|
Package manifests deals with creating manifests for all manifests to be installed for the cluster
|
Package manifests deals with creating manifests for all manifests to be installed for the cluster |
|
Package tls defines and generates the tls assets based on its dependencies.
|
Package tls defines and generates the tls assets based on its dependencies. |