6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
# File 'app/lib/actions/pulp3/orchestration/content_view_version/import.rb', line 6
def plan(content_view_version, path:, metadata:)
action_subject(content_view_version)
sequence do
smart_proxy = SmartProxy.pulp_primary!
importer_output = plan_action(
::Actions::Pulp3::ContentViewVersion::CreateImporter,
content_view_version_id: content_view_version.id,
smart_proxy_id: smart_proxy.id,
path: path,
metadata: metadata
).output
plan_action(
::Actions::Pulp3::ContentViewVersion::CreateImport,
organization_id: content_view_version.content_view.organization_id,
smart_proxy_id: smart_proxy.id,
importer_data: importer_output[:importer_data],
path: path,
metadata: metadata
)
concurrence do
content_view_version.importable_repositories.each do |repo|
plan_action(Actions::Pulp3::Repository::SaveVersion, repo)
end
end
plan_action(
::Actions::Pulp3::ContentViewVersion::CreateImportHistory,
content_view_version_id: content_view_version.id,
path: path,
metadata: metadata,
content_view_name: content_view_version.name
)
plan_action(::Actions::Pulp3::ContentViewVersion::DestroyImporter,
organization_id: content_view_version.content_view.organization_id,
smart_proxy_id: smart_proxy.id,
path: path,
metadata: metadata,
importer_data: importer_output[:importer_data])
plan_self(
content_view_name: content_view_version.name,
metadata: metadata,
path: path,
content_view_version_id: content_view_version.id
)
end
end
|