dbt-platform-helper 12.5.0__py3-none-any.whl → 12.5.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of dbt-platform-helper might be problematic. Click here for more details.
- dbt_platform_helper/COMMANDS.md +1 -3
- dbt_platform_helper/commands/copilot.py +4 -2
- dbt_platform_helper/commands/environment.py +15 -13
- dbt_platform_helper/commands/pipeline.py +8 -170
- dbt_platform_helper/constants.py +1 -0
- dbt_platform_helper/domain/codebase.py +8 -4
- dbt_platform_helper/domain/copilot_environment.py +3 -3
- dbt_platform_helper/domain/database_copy.py +9 -7
- dbt_platform_helper/domain/maintenance_page.py +44 -20
- dbt_platform_helper/domain/pipelines.py +213 -0
- dbt_platform_helper/domain/terraform_environment.py +68 -35
- dbt_platform_helper/domain/test_platform_terraform_manifest_generator.py +100 -0
- dbt_platform_helper/providers/cache.py +1 -2
- dbt_platform_helper/providers/config.py +12 -2
- dbt_platform_helper/providers/copilot.py +2 -0
- dbt_platform_helper/providers/files.py +26 -0
- dbt_platform_helper/providers/vpc.py +57 -0
- dbt_platform_helper/providers/yaml_file.py +3 -14
- dbt_platform_helper/utils/application.py +32 -34
- dbt_platform_helper/utils/aws.py +0 -50
- dbt_platform_helper/utils/files.py +8 -23
- dbt_platform_helper/utils/platform_config.py +0 -7
- dbt_platform_helper/utils/versioning.py +12 -0
- {dbt_platform_helper-12.5.0.dist-info → dbt_platform_helper-12.5.1.dist-info}/METADATA +1 -1
- {dbt_platform_helper-12.5.0.dist-info → dbt_platform_helper-12.5.1.dist-info}/RECORD +28 -24
- {dbt_platform_helper-12.5.0.dist-info → dbt_platform_helper-12.5.1.dist-info}/WHEEL +1 -1
- {dbt_platform_helper-12.5.0.dist-info → dbt_platform_helper-12.5.1.dist-info}/LICENSE +0 -0
- {dbt_platform_helper-12.5.0.dist-info → dbt_platform_helper-12.5.1.dist-info}/entry_points.txt +0 -0
|
@@ -1,31 +1,28 @@
|
|
|
1
1
|
import json
|
|
2
2
|
import os
|
|
3
3
|
import re
|
|
4
|
+
from dataclasses import dataclass
|
|
5
|
+
from dataclasses import field
|
|
4
6
|
from pathlib import Path
|
|
5
7
|
from typing import Dict
|
|
6
8
|
|
|
7
9
|
import boto3
|
|
8
|
-
import yaml
|
|
9
|
-
from boto3 import Session
|
|
10
|
-
from yaml.parser import ParserError
|
|
11
10
|
|
|
11
|
+
from dbt_platform_helper.constants import PLATFORM_CONFIG_FILE
|
|
12
12
|
from dbt_platform_helper.platform_exception import PlatformException
|
|
13
13
|
from dbt_platform_helper.utils.aws import get_aws_session_or_abort
|
|
14
14
|
from dbt_platform_helper.utils.aws import get_profile_name_from_account_id
|
|
15
15
|
from dbt_platform_helper.utils.aws import get_ssm_secrets
|
|
16
16
|
from dbt_platform_helper.utils.messages import abort_with_error
|
|
17
|
+
from dbt_platform_helper.utils.platform_config import load_unvalidated_config_file
|
|
17
18
|
|
|
18
19
|
|
|
20
|
+
@dataclass
|
|
19
21
|
class Environment:
|
|
20
22
|
name: str
|
|
21
23
|
account_id: str
|
|
22
24
|
sessions: Dict[str, boto3.Session]
|
|
23
25
|
|
|
24
|
-
def __init__(self, name: str, account_id: str, sessions: Dict[str, boto3.Session]):
|
|
25
|
-
self.name = name
|
|
26
|
-
self.account_id = account_id
|
|
27
|
-
self.sessions = sessions
|
|
28
|
-
|
|
29
26
|
@property
|
|
30
27
|
def session(self):
|
|
31
28
|
if self.account_id not in self.sessions:
|
|
@@ -36,24 +33,17 @@ class Environment:
|
|
|
36
33
|
return self.sessions[self.account_id]
|
|
37
34
|
|
|
38
35
|
|
|
36
|
+
@dataclass
|
|
39
37
|
class Service:
|
|
40
38
|
name: str
|
|
41
39
|
kind: str
|
|
42
40
|
|
|
43
|
-
def __init__(self, name: str, kind: str):
|
|
44
|
-
self.name = name
|
|
45
|
-
self.kind = kind
|
|
46
|
-
|
|
47
41
|
|
|
42
|
+
@dataclass
|
|
48
43
|
class Application:
|
|
49
44
|
name: str
|
|
50
|
-
environments: Dict[str, Environment]
|
|
51
|
-
services: Dict[str, Service]
|
|
52
|
-
|
|
53
|
-
def __init__(self, name: str):
|
|
54
|
-
self.name = name
|
|
55
|
-
self.environments = {}
|
|
56
|
-
self.services = {}
|
|
45
|
+
environments: Dict[str, Environment] = field(default_factory=dict)
|
|
46
|
+
services: Dict[str, Service] = field(default_factory=dict)
|
|
57
47
|
|
|
58
48
|
def __str__(self):
|
|
59
49
|
output = f"Application {self.name} with"
|
|
@@ -69,7 +59,7 @@ class Application:
|
|
|
69
59
|
return str(self) == str(other)
|
|
70
60
|
|
|
71
61
|
|
|
72
|
-
def load_application(app
|
|
62
|
+
def load_application(app=None, default_session=None) -> Application:
|
|
73
63
|
application = Application(app if app else get_application_name())
|
|
74
64
|
current_session = default_session if default_session else get_aws_session_or_abort()
|
|
75
65
|
|
|
@@ -81,7 +71,7 @@ def load_application(app: str = None, default_session: Session = None) -> Applic
|
|
|
81
71
|
WithDecryption=False,
|
|
82
72
|
)
|
|
83
73
|
except ssm_client.exceptions.ParameterNotFound:
|
|
84
|
-
raise ApplicationNotFoundException(
|
|
74
|
+
raise ApplicationNotFoundException(application.name)
|
|
85
75
|
|
|
86
76
|
path = f"/copilot/applications/{application.name}/environments"
|
|
87
77
|
secrets = get_ssm_secrets(app, None, current_session, path)
|
|
@@ -115,27 +105,35 @@ def load_application(app: str = None, default_session: Session = None) -> Applic
|
|
|
115
105
|
Recursive=False,
|
|
116
106
|
WithDecryption=False,
|
|
117
107
|
)
|
|
108
|
+
results = response["Parameters"]
|
|
109
|
+
while "NextToken" in response:
|
|
110
|
+
response = ssm_client.get_parameters_by_path(
|
|
111
|
+
Path=f"/copilot/applications/{application.name}/components",
|
|
112
|
+
Recursive=False,
|
|
113
|
+
WithDecryption=False,
|
|
114
|
+
NextToken=response["NextToken"],
|
|
115
|
+
)
|
|
116
|
+
results.extend(response["Parameters"])
|
|
118
117
|
|
|
119
118
|
application.services = {
|
|
120
119
|
svc["name"]: Service(svc["name"], svc["type"])
|
|
121
|
-
for svc in [json.loads(parameter["Value"]) for parameter in
|
|
120
|
+
for svc in [json.loads(parameter["Value"]) for parameter in results]
|
|
122
121
|
}
|
|
123
122
|
|
|
124
123
|
return application
|
|
125
124
|
|
|
126
125
|
|
|
127
|
-
def get_application_name():
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
return app_name
|
|
126
|
+
def get_application_name(abort=abort_with_error):
|
|
127
|
+
if Path(PLATFORM_CONFIG_FILE).exists():
|
|
128
|
+
try:
|
|
129
|
+
app_config = load_unvalidated_config_file()
|
|
130
|
+
return app_config["application"]
|
|
131
|
+
except KeyError:
|
|
132
|
+
abort(
|
|
133
|
+
f"Cannot get application name. No 'application' key can be found in {PLATFORM_CONFIG_FILE}"
|
|
134
|
+
)
|
|
135
|
+
else:
|
|
136
|
+
abort(f"Cannot get application name. {PLATFORM_CONFIG_FILE} is missing.")
|
|
139
137
|
|
|
140
138
|
|
|
141
139
|
class ApplicationException(PlatformException):
|
dbt_platform_helper/utils/aws.py
CHANGED
|
@@ -15,7 +15,6 @@ from boto3 import Session
|
|
|
15
15
|
|
|
16
16
|
from dbt_platform_helper.constants import REFRESH_TOKEN_MESSAGE
|
|
17
17
|
from dbt_platform_helper.platform_exception import PlatformException
|
|
18
|
-
from dbt_platform_helper.providers.aws import AWSException
|
|
19
18
|
from dbt_platform_helper.providers.aws import CopilotCodebaseNotFoundException
|
|
20
19
|
from dbt_platform_helper.providers.aws import ImageNotFoundException
|
|
21
20
|
from dbt_platform_helper.providers.aws import LogGroupNotFoundException
|
|
@@ -377,55 +376,6 @@ def get_connection_string(
|
|
|
377
376
|
return f"postgres://{conn['username']}:{conn['password']}@{conn['host']}:{conn['port']}/{conn['dbname']}"
|
|
378
377
|
|
|
379
378
|
|
|
380
|
-
class Vpc:
|
|
381
|
-
def __init__(self, subnets: list[str], security_groups: list[str]):
|
|
382
|
-
self.subnets = subnets
|
|
383
|
-
self.security_groups = security_groups
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
def get_vpc_info_by_name(session: Session, app: str, env: str, vpc_name: str) -> Vpc:
|
|
387
|
-
ec2_client = session.client("ec2")
|
|
388
|
-
vpc_response = ec2_client.describe_vpcs(Filters=[{"Name": "tag:Name", "Values": [vpc_name]}])
|
|
389
|
-
|
|
390
|
-
matching_vpcs = vpc_response.get("Vpcs", [])
|
|
391
|
-
|
|
392
|
-
if not matching_vpcs:
|
|
393
|
-
raise AWSException(f"VPC not found for name '{vpc_name}'")
|
|
394
|
-
|
|
395
|
-
vpc_id = vpc_response["Vpcs"][0].get("VpcId")
|
|
396
|
-
|
|
397
|
-
if not vpc_id:
|
|
398
|
-
raise AWSException(f"VPC id not present in vpc '{vpc_name}'")
|
|
399
|
-
|
|
400
|
-
ec2_resource = session.resource("ec2")
|
|
401
|
-
vpc = ec2_resource.Vpc(vpc_id)
|
|
402
|
-
|
|
403
|
-
route_tables = ec2_client.describe_route_tables(
|
|
404
|
-
Filters=[{"Name": "vpc-id", "Values": [vpc_id]}]
|
|
405
|
-
)["RouteTables"]
|
|
406
|
-
|
|
407
|
-
subnets = []
|
|
408
|
-
for route_table in route_tables:
|
|
409
|
-
private_routes = [route for route in route_table["Routes"] if "NatGatewayId" in route]
|
|
410
|
-
if not private_routes:
|
|
411
|
-
continue
|
|
412
|
-
for association in route_table["Associations"]:
|
|
413
|
-
if "SubnetId" in association:
|
|
414
|
-
subnet_id = association["SubnetId"]
|
|
415
|
-
subnets.append(subnet_id)
|
|
416
|
-
|
|
417
|
-
if not subnets:
|
|
418
|
-
raise AWSException(f"No private subnets found in vpc '{vpc_name}'")
|
|
419
|
-
|
|
420
|
-
tag_value = {"Key": "Name", "Value": f"copilot-{app}-{env}-env"}
|
|
421
|
-
sec_groups = [sg.id for sg in vpc.security_groups.all() if sg.tags and tag_value in sg.tags]
|
|
422
|
-
|
|
423
|
-
if not sec_groups:
|
|
424
|
-
raise AWSException(f"No matching security groups found in vpc '{vpc_name}'")
|
|
425
|
-
|
|
426
|
-
return Vpc(subnets, sec_groups)
|
|
427
|
-
|
|
428
|
-
|
|
429
379
|
def start_build_extraction(codebuild_client, build_options):
|
|
430
380
|
response = codebuild_client.start_build(**build_options)
|
|
431
381
|
return response["build"]["arn"]
|
|
@@ -1,34 +1,17 @@
|
|
|
1
|
-
from os import makedirs
|
|
2
|
-
from pathlib import Path
|
|
3
|
-
|
|
4
1
|
import click
|
|
5
2
|
import yaml
|
|
6
3
|
from jinja2 import Environment
|
|
7
4
|
from jinja2 import FileSystemLoader
|
|
8
5
|
|
|
6
|
+
from dbt_platform_helper.providers.files import FileProvider
|
|
7
|
+
|
|
9
8
|
|
|
10
9
|
def to_yaml(value):
|
|
11
10
|
return yaml.dump(value, sort_keys=False)
|
|
12
11
|
|
|
13
12
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
file = Path(base_path).joinpath(file_path)
|
|
17
|
-
file_exists = file.exists()
|
|
18
|
-
|
|
19
|
-
if not file_path.parent.exists():
|
|
20
|
-
makedirs(file_path.parent)
|
|
21
|
-
|
|
22
|
-
if file_exists and not overwrite:
|
|
23
|
-
return f"File {file_path} exists; doing nothing"
|
|
24
|
-
|
|
25
|
-
action = "overwritten" if file_exists and overwrite else "created"
|
|
26
|
-
|
|
27
|
-
file.write_text(contents)
|
|
28
|
-
|
|
29
|
-
return f"File {file_path} {action}"
|
|
30
|
-
|
|
31
|
-
|
|
13
|
+
# TODO - extract file provider functionality from this - and figure out what it actually does!
|
|
14
|
+
# Move to the new file provider - or potentially copilot?
|
|
32
15
|
def generate_override_files(base_path, file_path, output_dir):
|
|
33
16
|
def generate_files_for_dir(pattern):
|
|
34
17
|
for file in file_path.glob(pattern):
|
|
@@ -36,7 +19,7 @@ def generate_override_files(base_path, file_path, output_dir):
|
|
|
36
19
|
contents = file.read_text()
|
|
37
20
|
file_name = str(file).removeprefix(f"{file_path}/")
|
|
38
21
|
click.echo(
|
|
39
|
-
mkfile(
|
|
22
|
+
FileProvider.mkfile(
|
|
40
23
|
base_path,
|
|
41
24
|
output_dir / file_name,
|
|
42
25
|
contents,
|
|
@@ -61,7 +44,9 @@ def generate_override_files_from_template(base_path, overrides_path, output_dir,
|
|
|
61
44
|
if file.is_file():
|
|
62
45
|
file_name = str(file).removeprefix(f"{overrides_path}/")
|
|
63
46
|
contents = templates.get_template(str(file_name)).render(data)
|
|
64
|
-
message = mkfile(
|
|
47
|
+
message = FileProvider.mkfile(
|
|
48
|
+
base_path, output_dir / file_name, contents, overwrite=True
|
|
49
|
+
)
|
|
65
50
|
click.echo(message)
|
|
66
51
|
|
|
67
52
|
generate_files_for_dir("*")
|
|
@@ -18,10 +18,3 @@ def load_unvalidated_config_file():
|
|
|
18
18
|
return yaml.safe_load(file_contents)
|
|
19
19
|
except yaml.parser.ParserError:
|
|
20
20
|
return {}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
def get_environment_pipeline_names():
|
|
24
|
-
pipelines_config = load_unvalidated_config_file().get("environment_pipelines")
|
|
25
|
-
if pipelines_config:
|
|
26
|
-
return pipelines_config.keys()
|
|
27
|
-
return {}
|
|
@@ -11,6 +11,7 @@ from typing import Union
|
|
|
11
11
|
import click
|
|
12
12
|
import requests
|
|
13
13
|
|
|
14
|
+
from dbt_platform_helper.constants import DEFAULT_TERRAFORM_PLATFORM_MODULES_VERSION
|
|
14
15
|
from dbt_platform_helper.constants import PLATFORM_CONFIG_FILE
|
|
15
16
|
from dbt_platform_helper.constants import PLATFORM_HELPER_VERSION_FILE
|
|
16
17
|
from dbt_platform_helper.providers.validation import IncompatibleMajorVersionException
|
|
@@ -297,3 +298,14 @@ def get_required_platform_helper_version(
|
|
|
297
298
|
raise SystemExit(1)
|
|
298
299
|
|
|
299
300
|
return out
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
def get_required_terraform_platform_modules_version(
|
|
304
|
+
cli_terraform_platform_modules_version, platform_config_terraform_modules_default_version
|
|
305
|
+
):
|
|
306
|
+
version_preference_order = [
|
|
307
|
+
cli_terraform_platform_modules_version,
|
|
308
|
+
platform_config_terraform_modules_default_version,
|
|
309
|
+
DEFAULT_TERRAFORM_PLATFORM_MODULES_VERSION,
|
|
310
|
+
]
|
|
311
|
+
return [version for version in version_preference_order if version][0]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: dbt-platform-helper
|
|
3
|
-
Version: 12.5.
|
|
3
|
+
Version: 12.5.1
|
|
4
4
|
Summary: Set of tools to help transfer applications/services from GOV.UK PaaS to DBT PaaS augmenting AWS Copilot.
|
|
5
5
|
License: MIT
|
|
6
6
|
Author: Department for Business and Trade Platform Team
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
dbt_platform_helper/COMMANDS.md,sha256=
|
|
1
|
+
dbt_platform_helper/COMMANDS.md,sha256=Sm_rxHiEtdoRjmEnWAYpaEgOyCddWbV_PVP8aXrH_3g,21981
|
|
2
2
|
dbt_platform_helper/README.md,sha256=B0qN2_u_ASqqgkGDWY2iwNGZt_9tUgMb9XqtaTuzYjw,1530
|
|
3
3
|
dbt_platform_helper/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
4
|
dbt_platform_helper/addon-plans.yml,sha256=O46a_ODsGG9KXmQY_1XbSGqrpSaHSLDe-SdROzHx8Go,4545
|
|
@@ -7,40 +7,44 @@ dbt_platform_helper/commands/application.py,sha256=eVwCaYuwBlk0zx0xfA6fW7b-S1pl8
|
|
|
7
7
|
dbt_platform_helper/commands/codebase.py,sha256=KB8irKyFtb6pKn5cQ0MmTywGW7Vd8SSbWjT2mRnh3JA,2270
|
|
8
8
|
dbt_platform_helper/commands/conduit.py,sha256=KqRWiirl5Xl7qcJXOAsirbTLlV1XquOjddsopuj0Kp4,2272
|
|
9
9
|
dbt_platform_helper/commands/config.py,sha256=vIJh1piAqxRgxr4t68okPLfo-inkPiSoRNUFGPQBChg,12129
|
|
10
|
-
dbt_platform_helper/commands/copilot.py,sha256=
|
|
10
|
+
dbt_platform_helper/commands/copilot.py,sha256=1CTyAkTQBF_i6zkqYzOIUo5wq9UYWfj-G1W8D2oRjmE,13623
|
|
11
11
|
dbt_platform_helper/commands/database.py,sha256=aG3zcMHL5PE96b7LSAu0FGCbgcycQej3AGRcd-bpXUo,4115
|
|
12
|
-
dbt_platform_helper/commands/environment.py,sha256=
|
|
12
|
+
dbt_platform_helper/commands/environment.py,sha256=NyzvKnhPTklwg5ycC6KYc254avYvPiuVRYnaQ9doxgI,3356
|
|
13
13
|
dbt_platform_helper/commands/generate.py,sha256=YLCPb-xcPapGcsLn-7d1Am7BpGp5l0iecIDTOdNGjHk,722
|
|
14
14
|
dbt_platform_helper/commands/notify.py,sha256=kVJ0s78QMiaEWPVKu_bbMko4DW2uJy2fu8-HNJsglyk,3748
|
|
15
|
-
dbt_platform_helper/commands/pipeline.py,sha256=
|
|
15
|
+
dbt_platform_helper/commands/pipeline.py,sha256=tdLgcOOzPFbECKYN9UUHwK6tiwPvrMx3c4Q8ghRe1no,2685
|
|
16
16
|
dbt_platform_helper/commands/secrets.py,sha256=QjF9xUChioIr_P0fzqwyEcqLvcN-RNZmNFFlaUPVU9o,3994
|
|
17
17
|
dbt_platform_helper/commands/version.py,sha256=XVfSd53TDti4cceBqTmRfq_yZnvxs14RbrOjNJHW75U,1444
|
|
18
|
-
dbt_platform_helper/constants.py,sha256=
|
|
18
|
+
dbt_platform_helper/constants.py,sha256=f1zl5PJoauUxWOirXBJ8bdAGxOAQVLqNeCs6hldaq2I,971
|
|
19
19
|
dbt_platform_helper/default-extensions.yml,sha256=SU1ZitskbuEBpvE7efc3s56eAUF11j70brhj_XrNMMo,493
|
|
20
20
|
dbt_platform_helper/domain/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
21
|
-
dbt_platform_helper/domain/codebase.py,sha256=
|
|
21
|
+
dbt_platform_helper/domain/codebase.py,sha256=oaRyztqIVy3-3t9ChP4DEWN7DOhZJrr0xMY_LLm4GzI,9797
|
|
22
22
|
dbt_platform_helper/domain/conduit.py,sha256=mvjDzxh-SCUCY5qGL73kG8TT7YqeQR8XtNcHx26SW2w,4344
|
|
23
23
|
dbt_platform_helper/domain/config_validator.py,sha256=7te6L6zJrb-soVB5TKm4UwJyhCdONmNvE0TbqXb5U60,10177
|
|
24
|
-
dbt_platform_helper/domain/copilot_environment.py,sha256=
|
|
25
|
-
dbt_platform_helper/domain/database_copy.py,sha256=
|
|
26
|
-
dbt_platform_helper/domain/maintenance_page.py,sha256=
|
|
27
|
-
dbt_platform_helper/domain/
|
|
24
|
+
dbt_platform_helper/domain/copilot_environment.py,sha256=UJw08KWIXspXMJEgbsO0f8RLlUWhmyAfVA6eUZa9X10,8143
|
|
25
|
+
dbt_platform_helper/domain/database_copy.py,sha256=OqxEARb2yIgoqu8LHp90IcW3gkNlNbPHUR5P9om5Sx4,9315
|
|
26
|
+
dbt_platform_helper/domain/maintenance_page.py,sha256=evj50GqmcgOtduQN20JJ6-M6zGubCW48DRa2V4yvy8o,16767
|
|
27
|
+
dbt_platform_helper/domain/pipelines.py,sha256=Woo1I_ceiNV53zOv1XdljfIsEAD65DgmEpr3_VyCRxI,8076
|
|
28
|
+
dbt_platform_helper/domain/terraform_environment.py,sha256=P1LlkMScIzzsoQFiLOTqidnagP9RCz-HRkd8z_JkvwQ,3056
|
|
29
|
+
dbt_platform_helper/domain/test_platform_terraform_manifest_generator.py,sha256=DvDlTeLGJfiAJKshBJKe9SZm4uMSOR7MMUPy37rUwKE,4325
|
|
28
30
|
dbt_platform_helper/jinja2_tags.py,sha256=hKG6RS3zlxJHQ-Op9r2U2-MhWp4s3lZir4Ihe24ApJ0,540
|
|
29
31
|
dbt_platform_helper/platform_exception.py,sha256=bheZV9lqGvrCVTNT92349dVntNDEDWTEwciZgC83WzE,187
|
|
30
32
|
dbt_platform_helper/providers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
31
33
|
dbt_platform_helper/providers/aws.py,sha256=KHgySe6cwEw1wePjw6DL7uSyZRk3DN_Aqqi8KnRoB3M,1208
|
|
32
|
-
dbt_platform_helper/providers/cache.py,sha256=
|
|
34
|
+
dbt_platform_helper/providers/cache.py,sha256=GIFVdpfXVnVgf2POQvBvZDP6pvYeUFjEuAdAQLbhJXs,2563
|
|
33
35
|
dbt_platform_helper/providers/cloudformation.py,sha256=AMUuhHqjjyYwraFKdkVLgcHs7XZShNHkQFZWHBOMeGg,4877
|
|
34
|
-
dbt_platform_helper/providers/config.py,sha256=
|
|
35
|
-
dbt_platform_helper/providers/copilot.py,sha256=
|
|
36
|
+
dbt_platform_helper/providers/config.py,sha256=arJ01kcbBxkarE2bGO-VKraBkYOborZqGBklmt0ckTk,3663
|
|
37
|
+
dbt_platform_helper/providers/copilot.py,sha256=nBbt-PoGXVkmb9njJti6Et8dq1W9GytW3jGBydNNYYU,5317
|
|
36
38
|
dbt_platform_helper/providers/ecs.py,sha256=XlQHYhZiLGrqR-1ZWMagGH2R2Hy7mCP6676eZL3YbNQ,3842
|
|
39
|
+
dbt_platform_helper/providers/files.py,sha256=E4PAHjGlAFEgbU9ntvHJguKKJf5gwrZF6H1LY054QG0,683
|
|
37
40
|
dbt_platform_helper/providers/load_balancers.py,sha256=0tPkuQ_jWfan44HrBA5EMLqrZaYQl-Lw5PavZ1a1iag,1615
|
|
38
41
|
dbt_platform_helper/providers/opensearch.py,sha256=tp64jTzHlutleqMpi2h_ZKH1iakZPJnUODebX6i2mfA,1335
|
|
39
42
|
dbt_platform_helper/providers/platform_config_schema.py,sha256=vKyk32tMJU99RZMnpqV9phS5-8N4tduSPZJOJBObYss,26513
|
|
40
43
|
dbt_platform_helper/providers/redis.py,sha256=aj8pitxG9IKrMkL3fIYayQhcHPPzApdaXq0Uq_0yblg,1217
|
|
41
44
|
dbt_platform_helper/providers/secrets.py,sha256=6cYIR15dLdHmqxtWQpM6R71e0_Xgsg9V291HBG-0LV0,5272
|
|
42
45
|
dbt_platform_helper/providers/validation.py,sha256=d_YzJZVjGNO65pXcPIcFc9I-FRCESeEC7GvUzP8n-As,596
|
|
43
|
-
dbt_platform_helper/providers/
|
|
46
|
+
dbt_platform_helper/providers/vpc.py,sha256=AtXW1qNQhmraeYAf7b04lLplcSvUG18EMrX_hPRIHiw,1905
|
|
47
|
+
dbt_platform_helper/providers/yaml_file.py,sha256=7jMLsDWetBBHWUvcaW652LaYUqICnf0n1H9eS6kNT5o,1990
|
|
44
48
|
dbt_platform_helper/templates/.copilot/config.yml,sha256=J_bA9sCtBdCPBRImpCBRnYvhQd4vpLYIXIU-lq9vbkA,158
|
|
45
49
|
dbt_platform_helper/templates/.copilot/image_build_run.sh,sha256=adYucYXEB-kAgZNjTQo0T6EIAY8sh_xCEvVhWKKQ8mw,164
|
|
46
50
|
dbt_platform_helper/templates/.copilot/phases/build.sh,sha256=umKXePcRvx4XyrRY0fAWIyYFtNjqBI2L8vIJk-V7C60,121
|
|
@@ -80,22 +84,22 @@ dbt_platform_helper/templates/svc/manifest-backend.yml,sha256=aAD9ndkbXnF7JBAKS2
|
|
|
80
84
|
dbt_platform_helper/templates/svc/manifest-public.yml,sha256=6NHVR_onBu5hbwynLrB6roDRce7JcylSc0qeYvzlPdI,3664
|
|
81
85
|
dbt_platform_helper/templates/svc/overrides/cfn.patches.yml,sha256=W7-d017akuUq9kda64DQxazavcRcCPDjaAik6t1EZqM,742
|
|
82
86
|
dbt_platform_helper/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
83
|
-
dbt_platform_helper/utils/application.py,sha256=
|
|
87
|
+
dbt_platform_helper/utils/application.py,sha256=53xGrG8VBKrM4jyBKjuZZdwaYBbJ3PiznCCwlLieTKw,4804
|
|
84
88
|
dbt_platform_helper/utils/arn_parser.py,sha256=BaXzIxSOLdFmP_IfAxRq-0j-0Re1iCN7L4j2Zi5-CRQ,1304
|
|
85
|
-
dbt_platform_helper/utils/aws.py,sha256=
|
|
89
|
+
dbt_platform_helper/utils/aws.py,sha256=4GRzsY9nJUWpZoG3zjkb4bj98ec3PMxZ3sFgmvGlw9w,16349
|
|
86
90
|
dbt_platform_helper/utils/click.py,sha256=Fx4y4bbve1zypvog_sgK7tJtCocmzheoEFLBRv1lfdM,2943
|
|
87
91
|
dbt_platform_helper/utils/cloudfoundry.py,sha256=GnQ4fVLnDfOdNSrsJjI6ElZHqpgwINeoPn77cUH2UFY,484
|
|
88
|
-
dbt_platform_helper/utils/files.py,sha256=
|
|
92
|
+
dbt_platform_helper/utils/files.py,sha256=adQtG2E1IQHDKfeX06l6j1B7UTYukwBuR_uhJHaoi5M,1873
|
|
89
93
|
dbt_platform_helper/utils/git.py,sha256=7JGZMaI8-cU6-GjXIXjOlsYfKu_RppLOGyAicBd4n_8,704
|
|
90
94
|
dbt_platform_helper/utils/manifests.py,sha256=ji3UYHCxq9tTpkm4MlRa2y0-JOYYqq1pWZ2h_zpj0UU,507
|
|
91
95
|
dbt_platform_helper/utils/messages.py,sha256=aLx6s9utt__IqlDdeIYq4n82ERwludu2Zfqy0Q2t-x8,115
|
|
92
|
-
dbt_platform_helper/utils/platform_config.py,sha256=
|
|
96
|
+
dbt_platform_helper/utils/platform_config.py,sha256=hAQ7bX-Jqu4L9zPYpBq3EK73LRhOK5-fEP2r3MbT_iQ,475
|
|
93
97
|
dbt_platform_helper/utils/template.py,sha256=g-Db-0I6a6diOHkgK1nYA0IxJSO4TRrjqOvlyeOR32o,950
|
|
94
98
|
dbt_platform_helper/utils/validation.py,sha256=lmWVqRweswj-h7TPYP8lvluq8Qeu0htyKFbz2WUkPxI,1185
|
|
95
|
-
dbt_platform_helper/utils/versioning.py,sha256=
|
|
99
|
+
dbt_platform_helper/utils/versioning.py,sha256=XBZcyj8fW3xU6fzLTe1fMj2d3hKdQi8jUc-ZyPKJtwk,11428
|
|
96
100
|
platform_helper.py,sha256=bly3JkwbfwnWTZSZziu40dbgzQItsK-DIMMvL6ArFDY,1893
|
|
97
|
-
dbt_platform_helper-12.5.
|
|
98
|
-
dbt_platform_helper-12.5.
|
|
99
|
-
dbt_platform_helper-12.5.
|
|
100
|
-
dbt_platform_helper-12.5.
|
|
101
|
-
dbt_platform_helper-12.5.
|
|
101
|
+
dbt_platform_helper-12.5.1.dist-info/LICENSE,sha256=dP79lN73--7LMApnankTGLqDbImXg8iYFqWgnExGkGk,1090
|
|
102
|
+
dbt_platform_helper-12.5.1.dist-info/METADATA,sha256=2b2IPTvC5b6F4jnyZjX_zuY7Wc2CzEeSACAtJN3QB3c,3212
|
|
103
|
+
dbt_platform_helper-12.5.1.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
|
|
104
|
+
dbt_platform_helper-12.5.1.dist-info/entry_points.txt,sha256=QhbY8F434A-onsg0-FsdMd2U6HKh6Q7yCFFZrGUh5-M,67
|
|
105
|
+
dbt_platform_helper-12.5.1.dist-info/RECORD,,
|
|
File without changes
|
{dbt_platform_helper-12.5.0.dist-info → dbt_platform_helper-12.5.1.dist-info}/entry_points.txt
RENAMED
|
File without changes
|