def envs(self, service_env_vars): env_var_repo.delete_service_env(self.tenant.tenant_id, self.service.service_id) if service_env_vars: envs = [] for item in service_env_vars: item.pop("ID") envs.append(TenantServiceEnvVar(**item)) env_var_repo.bulk_create(envs)
def _save_components(self): """ create new components """ component_sources = [] envs = [] ports = [] http_rules = [] http_rule_configs = [] volumes = [] config_files = [] probes = [] extend_infos = [] monitors = [] graphs = [] service_group_rels = [] labels = [] for cpt in self.new_components: component_sources.append(cpt.component_source) envs.extend(cpt.envs) ports.extend(cpt.ports) http_rules.extend(cpt.http_rules) http_rule_configs.extend(cpt.http_rule_configs) volumes.extend(cpt.volumes) config_files.extend(cpt.config_files) if cpt.probes: probes.extend(cpt.probes) if cpt.extend_info: extend_infos.append(cpt.extend_info) monitors.extend(cpt.monitors) graphs.extend(cpt.graphs) service_group_rels.append(cpt.service_group_rel) labels.extend(cpt.labels) components = [cpt.component for cpt in self.new_components] service_repo.bulk_create(components) service_source_repo.bulk_create(component_sources) env_var_repo.bulk_create(envs) port_repo.bulk_create(ports) domain_repo.bulk_create(http_rules) configuration_repo.bulk_create(http_rule_configs) volume_repo.bulk_create(volumes) config_file_repo.bulk_create(config_files) probe_repo.bulk_create(probes) extend_repo.bulk_create(extend_infos) service_monitor_repo.bulk_create(monitors) component_graph_repo.bulk_create(graphs) service_group_relation_repo.bulk_create(service_group_rels) service_label_repo.bulk_create(labels)