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. |