System
A system is a group of interconnected components or resources that work together to achieve a common goal. Belonging to an organisation, a system can take on various forms, such as a GCP Cloud instance, AWS instance, front-end, back-end, or third-party SAAS. A system usually comprises several layers of resources, such as a database server, storage devices, or computing hardware.
The system is defined in the catalogue/\<organization name\>/\<system name\>/system.yml
. The system.yml
file accepts all arguments defined in the System
model with the expection of:
- The
key
is created using the catalogue folder structure. - The
resources
dictionary is created using the catalogue folder strucutre.
Example
# system.yaml
system:
key: system_key
tags:
- foo
- bar
name: system_foo
description: <system description> [optional]
Models
blackline.models.catalogue.System
Bases: BlacklineModel
The System resource model.
Systems can be assigned to this resource, but it doesn't inherently point to any other resources.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
children |
Optional[dict[str, Resource]]
|
None
|
|
stem | required | ||
children_stem | required | ||
children_cls | required |
Source code in BAR /opt/hostedtoolcache/Python/3.10.12/x64/lib/python3.10/site-packages/blackline/models/catalogue.py
blackline.models.catalogue.BlacklineModel
Bases: BaseModel
The base model for all Resources.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
key |
Key
|
A unique key used to identify this resource. | required |
tags |
Optional[list[str]]
|
A list of tags for this resource. |
None
|
name |
Optional[str]
|
None
|
|
description |
Optional[str]
|
None
|
|
children |
Optional[dict[str, Type[BlacklineModel]]]
|
The children resources. |
None
|
stem |
str
|
The stem of the resource. | required |
children_stem |
Optional[str]
|
required | |
children_cls |
Optional[type[BlacklineModel]]
|
required |
Source code in BAR /opt/hostedtoolcache/Python/3.10.12/x64/lib/python3.10/site-packages/blackline/models/catalogue.py
139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 |
|
Config
parse_children(path, key_prefix=None)
classmethod
Parse a directory of YAML files into a dictionary of Dataset objects.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
path |
Path
|
The path to the directory of YAML files. |
required |
path |
Path
|
Path |
required |
Returns:
Type | Description |
---|---|
dict[str, Type[BlacklineModel]]
|
A dictionary of Dataset objects. |
Source code in /opt/hostedtoolcache/Python/3.10.12/x64/lib/python3.10/site-packages/blackline/models/catalogue.py
parse_dir(path, key_prefix=None)
classmethod
Parse a directory of YAML files into a dictionary of Dataset objects.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
path |
Path
|
The path to the directory of YAML files. |
required |
path |
Path
|
Path |
required |
Returns:
Type | Description |
---|---|
A dictionary of Dataset objects. |
Source code in /opt/hostedtoolcache/Python/3.10.12/x64/lib/python3.10/site-packages/blackline/models/catalogue.py
parse_yaml(path, key, children={})
classmethod
Parse a yaml file into a the children_cls object.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
path |
Path
|
Path location of the yaml file. |
required |
key |
str
|
Key to identify the dataset. |
required |
Returns:
Type | Description |
---|---|
Dataset object. |