@openfabr/cdf / Exports
@openfabr/cdf
Table of contents
Namespaces
For both project creators and package authors
- CloudVendor
- ToolingLanguage
- ToolingRuntime
- InfraConfig
- InfraPlan
- RuntimeConfig
- TraitConfig
- ComponentConfig
- ConfigError
- GeneralConfig
- ImplError
- MessageAware
- NameAware
- NetworkConfig
- PlanError
- RelationConfig
- ServiceConfig
- SubtypeAware
- TypeAware
- InfraPlanOutputs
For project creators
For package authors
For both project creators and package authors
• CloudVendor: Object
A list of cloud vendors. The purpose of defining them is to regulate their names throughout the framework and all packages.
Defined in
• ToolingLanguage: Object
A list of IaC languages. The purpose of defining them is to regulate their names throughout the framework and all packages.
Defined in
• ToolingRuntime: Object
A list of IaC runtime. The purpose of defining them is to regulate their names throughout the framework and all packages.
Defined in
• InfraConfig<GC
, NC
, CC
, SC
, RC
>: Object
Concrete class that models the configuration for an infra project when using a package. It has 5 top-level sections (general, network, components, services and relations), each of which is expected to extended by packages for their own needs.
Usually there is no need to extend this class.
Type parameters
Name | Type |
---|---|
GC | extends GeneralConfig |
NC | extends NetworkConfig |
CC | extends ComponentConfig |
SC | extends ServiceConfig |
RC | extends RelationConfig |
Defined in
• InfraPlan<IPC
>: Object
Concrete class that carries both the generated infra baseline and all the outputs as a result.
Usually there is no need to extend this class.
Type parameters
Name | Type |
---|---|
IPC | extends InfraPlanConstructs |
Defined in
• RuntimeConfig<SC
>: Object
Concrete class for a group of services sharing the same runtime.
Usually there is no need to extend this class.
Type parameters
Name | Type |
---|---|
SC | extends ServiceConfig |
Defined in
• TraitConfig<CC
>: Object
Concrete class for a group of components sharing the same trait.
Usually there is no need to extend this class.
Type parameters
Name | Type |
---|---|
CC | extends ComponentConfig |
Defined in
• ComponentConfig: Object
Interface for a component segment in the configuration. It is expected to be extended by packages to carry detailed information about a particular component type.
Defined in
• ConfigError: Object
Interface that offers a configuration error type which optionally indicates which field is the offending one. It is expected to be implemented.
Defined in
• GeneralConfig: Object
Interface for the top-level general section of the configuration. It can be extended by any packages if intended to.
Defined in
• ImplError: Object
Interface that offers an implementation error type. It is expected to be implemented.
Defined in
• MessageAware: Object
Interface that offers a message field. It is expected to be implemented.
Defined in
• NameAware: Object
Interface that offers a URL-friendly name field. It is expected to be implemented.
Defined in
• NetworkConfig: Object
Interface for the top-level network section of the configuration. It can be extended by any packages if intended to.
Defined in
• PlanError: Object
Interface that offers an planning error type. It is expected to be implemented.
Defined in
• RelationConfig: Object
Interface for a relation segment in the configuration. It is expected to be extended by packages to carry detailed information about a particular relation type.
Defined in
• ServiceConfig: Object
Interface for a service segment in the configuration. It is expected to be extended by packages to carry detailed information about a particular service type.
Defined in
• SubtypeAware: Object
Interface that offers a subtype field It is expected to be implemented, usually with TypeAware together.
Defined in
• TypeAware: Object
Interface that offers a type field. It is expected to be implemented.
Defined in
InfraPlanOutputs
Ƭ InfraPlanOutputs: Map
<string
, any
>
Short-hand type representing outputs from the infra baseline generated by a package. It is commonly used for information (such as displaying) purposes.
It should be used as-is. The map
structure with any
value offers flexibility.