2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# File 'lib/kuber_kit/core/service_factory.rb', line 2
def create(definition)
service_attrs = definition.to_service_attrs
configuration_attributes = KuberKit.current_configuration.service_attributes(service_attrs.name)
base_attributes = service_attrs.attributes || {}
attributes = if KuberKit.deep_merge_service_attributes?
deep_merge(base_attributes, configuration_attributes)
else
base_attributes.merge(configuration_attributes)
end
KuberKit::Core::Service.new(
name: service_attrs.name,
initializers: service_attrs.initializers,
template_name: service_attrs.template_name,
tags: service_attrs.tags,
images: service_attrs.images,
attributes: attributes,
deployer_strategy: service_attrs.deployer_strategy,
generator_strategy: service_attrs.generator_strategy,
)
end
|