|
|
|
@ -38,19 +38,20 @@ class InitService:
|
|
|
|
|
{
|
|
|
|
|
"gopass_path": "server/meissa/grafana-cloud",
|
|
|
|
|
"gopass_field": "grafana-cloud-user",
|
|
|
|
|
"name": "c4k_grafana_cloud_user",
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"gopass_path": "server/meissa/grafana-cloud",
|
|
|
|
|
"name": "grafana_cloud_password",
|
|
|
|
|
"name": "c4k_grafana_cloud_password",
|
|
|
|
|
},
|
|
|
|
|
]
|
|
|
|
|
credentials = Credentials(input, default_mappings)
|
|
|
|
|
passwords = self.resolve_passwords(credentials)
|
|
|
|
|
authorization = self.resolve_passwords(credentials)
|
|
|
|
|
|
|
|
|
|
# merge passwords & input
|
|
|
|
|
merged = self.devops_factory.merge(input, {}, authorization)
|
|
|
|
|
|
|
|
|
|
if MixinType.RELEASE in mixin_types:
|
|
|
|
|
primary_build_file_id = input.get(
|
|
|
|
|
primary_build_file_id = merged.get(
|
|
|
|
|
"release_primary_build_file", "./project.clj"
|
|
|
|
|
)
|
|
|
|
|
primary_build_file = self.build_file_repository.get(
|
|
|
|
@ -58,21 +59,21 @@ class InitService:
|
|
|
|
|
)
|
|
|
|
|
version = primary_build_file.get_version()
|
|
|
|
|
|
|
|
|
|
return self.devops_factory.build_devops(input, version=version)
|
|
|
|
|
return self.devops_factory.build_devops(merged, version=version)
|
|
|
|
|
|
|
|
|
|
def resolve_passwords(self, credentials: Credentials) -> List[str]:
|
|
|
|
|
result = {}
|
|
|
|
|
for name in credentials.mappings.keys():
|
|
|
|
|
mapping = credentials.mappings[name]
|
|
|
|
|
env_value = self.environment_api.get(mapping.name_for_environment)
|
|
|
|
|
env_value = self.environment_api.get(mapping.name_for_environment())
|
|
|
|
|
if env_value:
|
|
|
|
|
result[name] = env_value
|
|
|
|
|
else:
|
|
|
|
|
if mapping.gopass_type == GopassType.FIELD:
|
|
|
|
|
if mapping.gopass_type() == GopassType.FIELD:
|
|
|
|
|
result[name] = self.credentials_api.gopass_field_from_path(
|
|
|
|
|
mapping.gopass_path, mapping.gopass_field
|
|
|
|
|
)
|
|
|
|
|
if mapping.gopass_type == GopassType.PASSWORD:
|
|
|
|
|
if mapping.gopass_type() == GopassType.PASSWORD:
|
|
|
|
|
result[name] = self.credentials_api.gopass_password_from_path(
|
|
|
|
|
mapping.gopass_path
|
|
|
|
|
)
|
|
|
|
|