machinery-tool 1.14.2 → 1.15.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.git_revision +1 -1
- data/NEWS +14 -0
- data/html/assets/compare/machinery.js +20 -13
- data/html/assets/file_loader.gif +0 -0
- data/html/assets/machinery-base.css +21 -12
- data/html/assets/machinery-base.js +19 -0
- data/html/assets/machinery.css +35 -11
- data/html/assets/show/machinery.js +24 -7
- data/html/comparison.html.haml +13 -36
- data/html/index.html.haml +32 -47
- data/html/partials/changed_managed_files.html.haml +5 -5
- data/html/partials/compare/changed_managed_file_list.html.haml +1 -1
- data/html/partials/compare/changed_managed_files.html.haml +41 -47
- data/html/partials/compare/changes.html.haml +8 -0
- data/html/partials/compare/config_file_list.html.haml +5 -5
- data/html/partials/compare/config_files.html.haml +38 -44
- data/html/partials/compare/group_list.html.haml +3 -3
- data/html/partials/compare/groups.html.haml +34 -42
- data/html/partials/compare/os.html.haml +21 -23
- data/html/partials/compare/package_list.html.haml +2 -2
- data/html/partials/compare/packages.html.haml +40 -56
- data/html/partials/compare/pattern_list.html.haml +2 -2
- data/html/partials/compare/patterns.html.haml +40 -42
- data/html/partials/compare/repositories.html.haml +40 -41
- data/html/partials/compare/service_list.html.haml +1 -1
- data/html/partials/compare/services.html.haml +44 -36
- data/html/partials/compare/summary.html.haml +17 -0
- data/html/partials/compare/unmanaged_file_list.html.haml +4 -3
- data/html/partials/compare/unmanaged_files.html.haml +44 -38
- data/html/partials/compare/user_list.html.haml +2 -2
- data/html/partials/compare/users.html.haml +40 -43
- data/html/partials/config_files.html.haml +8 -8
- data/html/partials/os.html.haml +8 -5
- data/html/partials/packages.html.haml +4 -4
- data/html/partials/patterns.html.haml +2 -2
- data/html/partials/repositories.html.haml +5 -5
- data/html/partials/scope_header.html.haml +4 -6
- data/html/partials/services.html.haml +1 -1
- data/html/partials/unmanaged_files.html.haml +1 -1
- data/html/partials/users.html.haml +4 -4
- data/lib/array.rb +4 -0
- data/lib/cli.rb +12 -4
- data/lib/file_scope.rb +9 -3
- data/lib/html.rb +1 -0
- data/lib/machinery.rb +1 -0
- data/lib/scope.rb +16 -0
- data/lib/server.rb +61 -23
- data/lib/system_description.rb +0 -8
- data/lib/try.rb +28 -0
- data/lib/version.rb +1 -1
- data/machinery-helper/version.go +1 -1
- data/man/generated/machinery.1.gz +0 -0
- data/man/generated/machinery.1.html +54 -22
- data/plugins/changed_managed_files/{changed_managed_files.md → changed_managed_files.yml} +4 -0
- data/plugins/changed_managed_files/changed_managed_files_model.rb +14 -0
- data/plugins/changed_managed_files/changed_managed_files_renderer.rb +17 -0
- data/plugins/config_files/{config_files.md → config_files.yml} +4 -0
- data/plugins/config_files/config_files_model.rb +14 -0
- data/plugins/config_files/config_files_renderer.rb +17 -0
- data/plugins/groups/{groups.md → groups.yml} +4 -0
- data/plugins/groups/groups_model.rb +14 -0
- data/plugins/groups/groups_renderer.rb +17 -0
- data/plugins/os/{os.md → os.yml} +4 -0
- data/plugins/packages/{packages.md → packages.yml} +4 -0
- data/plugins/packages/packages_model.rb +1 -12
- data/plugins/patterns/{patterns.md → patterns.yml} +4 -0
- data/plugins/patterns/patterns_model.rb +14 -0
- data/plugins/patterns/patterns_renderer.rb +21 -0
- data/plugins/repositories/{repositories.md → repositories.yml} +4 -0
- data/plugins/repositories/repositories_model.rb +14 -0
- data/plugins/repositories/repositories_renderer.rb +17 -0
- data/plugins/services/{services.md → services.yml} +4 -0
- data/plugins/services/services_model.rb +21 -11
- data/plugins/services/services_renderer.rb +17 -0
- data/plugins/unmanaged_files/{unmanaged_files.md → unmanaged_files.yml} +4 -0
- data/plugins/unmanaged_files/unmanaged_files_model.rb +2 -1
- data/plugins/unmanaged_files/unmanaged_files_renderer.rb +17 -0
- data/plugins/users/{users.md → users.yml} +4 -0
- data/plugins/users/users_model.rb +38 -0
- data/plugins/users/users_renderer.rb +17 -0
- metadata +17 -32
- data/html/assets/logo-changed-managed-files-small.png +0 -0
- data/html/assets/logo-changed-managed-files.png +0 -0
- data/html/assets/logo-config-files-small.png +0 -0
- data/html/assets/logo-config-files.png +0 -0
- data/html/assets/logo-groups-small.png +0 -0
- data/html/assets/logo-groups.png +0 -0
- data/html/assets/logo-os-small.png +0 -0
- data/html/assets/logo-os.png +0 -0
- data/html/assets/logo-packages-small.png +0 -0
- data/html/assets/logo-packages.png +0 -0
- data/html/assets/logo-patterns-small.png +0 -0
- data/html/assets/logo-patterns.png +0 -0
- data/html/assets/logo-repositories-small.png +0 -0
- data/html/assets/logo-repositories.png +0 -0
- data/html/assets/logo-services-small.png +0 -0
- data/html/assets/logo-services.png +0 -0
- data/html/assets/logo-unmanaged-files-small.png +0 -0
- data/html/assets/logo-unmanaged-files.png +0 -0
- data/html/assets/logo-users-small.png +0 -0
- data/html/assets/logo-users.png +0 -0
@@ -1,53 +1,51 @@
|
|
1
1
|
- if @diff["patterns"]
|
2
|
-
|
2
|
+
- scope = "patterns"
|
3
|
+
%a.scope_anchor{ id: scope }
|
3
4
|
.scope#patterns_container
|
4
5
|
.row
|
5
6
|
.col-xs-1
|
6
|
-
%a{ href
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
"data-content" => "#{scope_help("patterns")}" }
|
7
|
+
%a.btn.btn-default.btn-lg.scope_logo_big{ :href => "##{scope}",
|
8
|
+
:title => scope_title(scope), "data-toggle"=>"popover",
|
9
|
+
"data-content" => scope_help(scope) }
|
10
|
+
%span= scope_initials(scope)
|
11
11
|
%span.toggle{ title: "Collapse/Expand" }
|
12
12
|
.col-xs-11
|
13
13
|
%h2
|
14
14
|
Patterns
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
- if @diff["patterns"].only_in2
|
20
|
-
%span.summary-part
|
21
|
-
#{@description_b.name}: #{@diff["patterns"].only_in2.length} patterns
|
22
|
-
- if @diff["patterns"].common
|
23
|
-
%span.summary-part
|
24
|
-
%a.show-common-elements{ href: "#patterns_both" }<
|
25
|
-
both
|
26
|
-
= ": #{@diff["patterns"].common.length} patterns"
|
15
|
+
= render_partial "compare/summary",
|
16
|
+
scope: "patterns",
|
17
|
+
singular: "pattern",
|
18
|
+
plural: "patterns"
|
27
19
|
.row.scope_content.collapse.in
|
28
|
-
.
|
29
|
-
.col-xs-1
|
30
|
-
.col-xs-5.table_container
|
31
|
-
- if @diff["patterns"].only_in1
|
32
|
-
= only_in_a
|
33
|
-
= render_partial "compare/pattern_list", list: @diff["patterns"].only_in1
|
34
|
-
.col-xs-1
|
35
|
-
.col-xs-5.table_container
|
36
|
-
- if @diff["patterns"].only_in2
|
37
|
-
= only_in_b
|
38
|
-
= render_partial "compare/pattern_list", list: @diff["patterns"].only_in2
|
39
|
-
- if @diff["patterns"].common
|
40
|
-
%a.both_anchor{ id: "patterns_both" }
|
20
|
+
.col-md-12
|
41
21
|
.row
|
42
|
-
.col-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
22
|
+
.col-md-6.table_container
|
23
|
+
- if @diff["patterns"].only_in1
|
24
|
+
= only_in_a
|
25
|
+
= render_partial "compare/pattern_list", list: @diff["patterns"].only_in1
|
26
|
+
.col-md-6.table_container
|
27
|
+
- if @diff["patterns"].only_in2
|
28
|
+
= only_in_b
|
29
|
+
= render_partial "compare/pattern_list", list: @diff["patterns"].only_in2
|
30
|
+
- if @diff["patterns"].changed
|
31
|
+
%a.both_anchor{ id: "patterns_changed" }
|
32
|
+
.row
|
33
|
+
.col-md-12.table_container
|
34
|
+
= changed
|
35
|
+
= render_partial "compare/changes", changes: changed_elements("patterns",
|
36
|
+
key: "name",
|
37
|
+
attributes: ["version"],
|
38
|
+
optional_attributes: ["version", "release"])
|
39
|
+
- if @diff["patterns"].common
|
40
|
+
%a.both_anchor{ id: "patterns_both" }
|
41
|
+
.row
|
42
|
+
.col-md-12
|
43
|
+
%a.show-common-elements{ href: "#patterns_both" }
|
44
|
+
Show common elements in patterns
|
45
|
+
%a.hide-common-elements{ href: "#", style: "display: none" }
|
46
|
+
Hide common elements in patterns
|
47
|
+
.row.scope_common_content.collapse
|
48
|
+
.col-md-12.table_container
|
49
|
+
= in_both
|
50
|
+
= render_partial "compare/pattern_list", list: @diff["patterns"].common
|
53
51
|
|
@@ -1,51 +1,50 @@
|
|
1
1
|
- if @diff["repositories"]
|
2
|
-
|
2
|
+
- scope = "repositories"
|
3
|
+
%a.scope_anchor{ id: scope }
|
3
4
|
.scope#repositories_container
|
4
5
|
.row
|
5
6
|
.col-xs-1
|
6
|
-
%
|
7
|
-
|
8
|
-
|
9
|
-
|
7
|
+
%a.btn.btn-default.btn-lg.scope_logo_big{ :href => "##{scope}",
|
8
|
+
:title => scope_title(scope), "data-toggle"=>"popover",
|
9
|
+
"data-content" => scope_help(scope) }
|
10
|
+
%span= scope_initials(scope)
|
10
11
|
%span.toggle{ title: "Collapse/Expand" }
|
11
12
|
.col-xs-11
|
12
13
|
%h2
|
13
14
|
Repositories
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
- if @diff["repositories"].only_in2
|
19
|
-
%span.summary-part
|
20
|
-
#{@description_b.name}: #{@diff["repositories"].only_in2.length} repositories
|
21
|
-
- if @diff["repositories"].common
|
22
|
-
%span.summary-part
|
23
|
-
%a.show-common-elements{ href: "#repositories_both" }<
|
24
|
-
both
|
25
|
-
= ": #{@diff["repositories"].common.length} repositories"
|
15
|
+
= render_partial "compare/summary",
|
16
|
+
scope: "repositories",
|
17
|
+
singular: "repository",
|
18
|
+
plural: "repositories"
|
26
19
|
.row.scope_content.collapse.in
|
27
|
-
.
|
28
|
-
.col-xs-1
|
29
|
-
.col-xs-5.table_container
|
30
|
-
- if @diff["repositories"].only_in1
|
31
|
-
= only_in_a
|
32
|
-
= render_partial "compare/repository_list", list: @diff["repositories"].only_in1
|
33
|
-
.col-xs-1
|
34
|
-
.col-xs-5.table_container
|
35
|
-
- if @diff["repositories"].only_in2
|
36
|
-
= only_in_b
|
37
|
-
= render_partial "compare/repository_list", list: @diff["repositories"].only_in2
|
38
|
-
- if @diff["repositories"].common
|
39
|
-
%a.both_anchor{ id: "repositories_both" }
|
20
|
+
.col-md-12
|
40
21
|
.row
|
41
|
-
.col-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
22
|
+
.col-md-6.table_container
|
23
|
+
- if @diff["repositories"].only_in1
|
24
|
+
= only_in_a
|
25
|
+
= render_partial "compare/repository_list", list: @diff["repositories"].only_in1
|
26
|
+
.col-md-6.table_container
|
27
|
+
- if @diff["repositories"].only_in2
|
28
|
+
= only_in_b
|
29
|
+
= render_partial "compare/repository_list", list: @diff["repositories"].only_in2
|
30
|
+
- if @diff["repositories"].changed
|
31
|
+
%a.both_anchor{ id: "repositories_changed" }
|
32
|
+
.row
|
33
|
+
.col-md-12.table_container
|
34
|
+
= changed
|
35
|
+
= render_partial "compare/changes", changes: changed_elements("repositories",
|
36
|
+
attributes: ["name", "url", "type", "enabled", "autorefresh", "gpgcheck",
|
37
|
+
"priority"],
|
38
|
+
key: "alias")
|
39
|
+
- if @diff["repositories"].common
|
40
|
+
%a.both_anchor{ id: "repositories_both" }
|
41
|
+
.row
|
42
|
+
.col-md-12
|
43
|
+
%a.show-common-elements{ href: "#repositories_both" }
|
44
|
+
Show common elements in repositories
|
45
|
+
%a.hide-common-elements{ href: "#", style: "display: none" }
|
46
|
+
Hide common elements in repositories
|
47
|
+
.row.scope_common_content.collapse
|
48
|
+
.col-md-12.table_container
|
49
|
+
= in_both
|
50
|
+
= render_partial "compare/repository_list", list: @diff["repositories"].common
|
@@ -1,56 +1,64 @@
|
|
1
1
|
- if @diff["services"]
|
2
|
-
|
2
|
+
- scope = "services"
|
3
|
+
%a.scope_anchor{ id: scope }
|
3
4
|
.scope#services_container
|
4
5
|
.row
|
5
6
|
.col-xs-1
|
6
|
-
%a{ href
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
"data-content" => "#{scope_help("services")}" }
|
7
|
+
%a.btn.btn-default.btn-lg.scope_logo_big{ :href => "##{scope}",
|
8
|
+
:title => scope_title(scope), "data-toggle"=>"popover",
|
9
|
+
"data-content" => scope_help(scope) }
|
10
|
+
%span= scope_initials(scope)
|
11
11
|
%span.toggle{ title: "Collapse/Expand" }
|
12
12
|
.col-xs-11
|
13
13
|
%h2
|
14
14
|
Services
|
15
15
|
.scope-summary
|
16
|
-
- if @diff["services"].only_in1
|
16
|
+
- if @diff["services"].only_in1 && @diff["services"].only_in1.length > 0
|
17
17
|
%span.summary-part
|
18
18
|
#{@description_a.name}:
|
19
|
-
#{
|
19
|
+
#{pluralize_scope(@diff["services"].only_in1, "service", "services")}
|
20
20
|
(#{@diff["services"].only_in1.init_system})
|
21
|
-
- if @diff["services"].only_in2
|
21
|
+
- if @diff["services"].only_in2 && @diff["services"].only_in2.length > 0
|
22
22
|
%span.summary-part
|
23
23
|
#{@description_b.name}:
|
24
|
-
#{
|
24
|
+
#{pluralize_scope(@diff["services"].only_in2, "service", "services")}
|
25
25
|
(#{@diff["services"].only_in2.init_system})
|
26
|
-
- if @diff["services"].
|
26
|
+
- if @diff["services"].changed && @diff["services"].changed.length > 0
|
27
|
+
%span.summary-part
|
28
|
+
%a{ href: "#services_changed" }
|
29
|
+
changed
|
30
|
+
= ": #{pluralize_scope(@diff["services"].changed, "service", "services")}"
|
31
|
+
- if @diff["services"].common && @diff["services"].common.length > 0
|
27
32
|
%span.summary-part
|
28
33
|
%a.show-common-elements{ href: "#services_both" }<
|
29
34
|
both
|
30
|
-
= ": #{
|
35
|
+
= ": #{pluralize_scope(@diff["services"].common, "service", "services")}"
|
31
36
|
.row.scope_content.collapse.in
|
32
|
-
.
|
33
|
-
.col-xs-1
|
34
|
-
.col-xs-5.table_container
|
35
|
-
- if safe_length(@diff["services"].only_in1, :services) > 0
|
36
|
-
= only_in_a
|
37
|
-
= render_partial "compare/service_list", list: @diff["services"].only_in1
|
38
|
-
.col-xs-1
|
39
|
-
.col-xs-5.table_container
|
40
|
-
- if safe_length(@diff["services"].only_in2, :services) > 0
|
41
|
-
= only_in_b
|
42
|
-
= render_partial "compare/service_list", list: @diff["services"].only_in2
|
43
|
-
- if safe_length(@diff["services"].common, :services) > 0
|
44
|
-
%a.both_anchor{ id: "services_both" }
|
37
|
+
.col-md-12
|
45
38
|
.row
|
46
|
-
.col-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
39
|
+
.col-md-6.table_container
|
40
|
+
- if safe_length(@diff["services"].only_in1, :services) > 0
|
41
|
+
= only_in_a
|
42
|
+
= render_partial "compare/service_list", list: @diff["services"].only_in1
|
43
|
+
.col-md-6.table_container
|
44
|
+
- if safe_length(@diff["services"].only_in2, :services) > 0
|
45
|
+
= only_in_b
|
46
|
+
= render_partial "compare/service_list", list: @diff["services"].only_in2
|
47
|
+
- if @diff["services"].changed
|
48
|
+
%a.both_anchor{ id: "services_changed" }
|
49
|
+
.row
|
50
|
+
.col-md-12.table_container
|
51
|
+
= changed
|
52
|
+
= render_partial "compare/changes", changes: changed_elements("services", key: "name")
|
53
|
+
- if safe_length(@diff["services"].common, :services) > 0
|
54
|
+
%a.both_anchor{ id: "services_both" }
|
55
|
+
.row
|
56
|
+
.col-md-12
|
57
|
+
%a.show-common-elements{ href: "#services_both" }
|
58
|
+
Show common elements in services
|
59
|
+
%a.hide-common-elements{ href: "#", style: "display: none" }
|
60
|
+
Hide common elements in services
|
61
|
+
.row.scope_common_content.collapse
|
62
|
+
.col-md-12.table_container
|
63
|
+
= in_both
|
64
|
+
= render_partial "compare/service_list", list: @diff["services"].common
|
@@ -0,0 +1,17 @@
|
|
1
|
+
.scope-summary
|
2
|
+
- if @diff[scope].only_in1 && @diff[scope].only_in1.length > 0
|
3
|
+
%span.summary-part
|
4
|
+
#{@description_a.name}: #{pluralize_scope(@diff[scope].only_in1, singular, plural)}
|
5
|
+
- if @diff[scope].only_in2 && @diff[scope].only_in2.length > 0
|
6
|
+
%span.summary-part
|
7
|
+
#{@description_b.name}: #{pluralize_scope(@diff[scope].only_in2, singular, plural)}
|
8
|
+
- if @diff[scope].changed && @diff[scope].changed.length > 0
|
9
|
+
%span.summary-part
|
10
|
+
%a{ href: "#" + scope + "_changed" }
|
11
|
+
changed
|
12
|
+
= ": #{pluralize_scope(@diff[scope].changed, singular, plural)}"
|
13
|
+
- if @diff[scope].common && @diff[scope].common.length > 0
|
14
|
+
%span.summary-part
|
15
|
+
%a.show-common-elements{ href: "#" + scope + "_both" }<
|
16
|
+
both
|
17
|
+
= ": #{pluralize_scope(@diff[scope].common, singular, plural)}"
|
@@ -1,11 +1,12 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
- if !list.extracted.nil?
|
2
|
+
%p
|
3
|
+
<strong>Files extracted:</strong> #{list.extracted ? "yes" : "no"}
|
3
4
|
- if list.files
|
4
5
|
%table.table.table-striped.table-hover.table-condensed.files-table
|
5
6
|
%thead
|
6
7
|
%tr
|
7
8
|
%th Name
|
8
|
-
%th Type
|
9
|
+
%th.small Type
|
9
10
|
%tbody
|
10
11
|
- list.files.each do |file|
|
11
12
|
%tr
|
@@ -1,13 +1,13 @@
|
|
1
1
|
- if @diff["unmanaged_files"]
|
2
|
-
|
2
|
+
- scope = "unmanaged_files"
|
3
|
+
%a.scope_anchor{ id: scope }
|
3
4
|
.scope#unmanaged_files_container
|
4
5
|
.row
|
5
6
|
.col-xs-1
|
6
|
-
%a{ href
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
"data-content" => "#{scope_help("unmanaged_files")}" }
|
7
|
+
%a.btn.btn-default.btn-lg.scope_logo_big{ :href => "##{scope}",
|
8
|
+
:title => scope_title(scope), "data-toggle"=>"popover",
|
9
|
+
"data-content" => scope_help(scope) }
|
10
|
+
%span= scope_initials(scope)
|
11
11
|
%span.toggle{ title: "Collapse/Expand" }
|
12
12
|
.col-xs-11
|
13
13
|
%h2
|
@@ -16,44 +16,50 @@
|
|
16
16
|
- if @diff["unmanaged_files"].only_in1
|
17
17
|
%span.summary-part
|
18
18
|
#{@description_a.name}:
|
19
|
-
|
19
|
+
= pluralize_scope(@diff["unmanaged_files"].only_in1, "file", "files")
|
20
20
|
- if @diff["unmanaged_files"].only_in2
|
21
21
|
%span.summary-part
|
22
22
|
#{@description_b.name}:
|
23
|
-
|
23
|
+
= pluralize_scope(@diff["unmanaged_files"].only_in2, "file", "files")
|
24
|
+
- if @diff["unmanaged_files"].changed
|
25
|
+
%span.summary-part
|
26
|
+
%a{ href: "#unmanaged_files_changed" }
|
27
|
+
changed
|
28
|
+
= ": #{pluralize_scope(@diff["unmanaged_files"].changed, "file", "files")}"
|
24
29
|
- if @diff["unmanaged_files"].common
|
25
30
|
%span.summary-part
|
26
31
|
%a.show-common-elements{ href: "#unmanaged_files_both" }<
|
27
32
|
both
|
28
|
-
= ": #{
|
29
|
-
- if diffable_unmanaged_files.length > 0
|
30
|
-
%span.summary-part
|
31
|
-
%a#diff-unmanaged-files{ "data-toggle" => "modal",
|
32
|
-
"data-target" => "#diff-unmanaged-files" }
|
33
|
-
Diff files
|
33
|
+
= ": #{pluralize_scope(@diff["unmanaged_files"].common, "file", "files")}"
|
34
34
|
.row.scope_content.collapse.in
|
35
|
-
.
|
36
|
-
.col-xs-1
|
37
|
-
.col-xs-5.table_container
|
38
|
-
- if safe_length(@diff["unmanaged_files"].only_in1, :files) > 0
|
39
|
-
= only_in_a
|
40
|
-
= render_partial "compare/unmanaged_file_list", list: @diff["unmanaged_files"].only_in1
|
41
|
-
.col-xs-1
|
42
|
-
.col-xs-5.table_container
|
43
|
-
- if safe_length(@diff["unmanaged_files"].only_in2, :files) > 0
|
44
|
-
= only_in_b
|
45
|
-
= render_partial "compare/unmanaged_file_list", list: @diff["unmanaged_files"].only_in2
|
46
|
-
- if safe_length(@diff["unmanaged_files"].common, :files) > 0
|
47
|
-
%a.both_anchor{ id: "unmanaged_files_both" }
|
35
|
+
.col-md-12
|
48
36
|
.row
|
49
|
-
.col-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
37
|
+
.col-md-6.table_container
|
38
|
+
- if @diff["unmanaged_files"].only_in1
|
39
|
+
= only_in_a
|
40
|
+
= render_partial "compare/unmanaged_file_list",
|
41
|
+
list: @diff["unmanaged_files"].only_in1
|
42
|
+
.col-md-6.table_container
|
43
|
+
- if @diff["unmanaged_files"].only_in2
|
44
|
+
= only_in_b
|
45
|
+
= render_partial "compare/unmanaged_file_list",
|
46
|
+
list: @diff["unmanaged_files"].only_in2
|
47
|
+
- if @diff["unmanaged_files"].changed
|
48
|
+
%a.both_anchor{ id: "unmanaged_files_changed" }
|
49
|
+
.row
|
50
|
+
.col-md-12.table_container
|
51
|
+
= changed
|
52
|
+
= render_partial "compare/changes", changes: changed_elements("unmanaged_files",
|
53
|
+
key: "name")
|
54
|
+
- if safe_length(@diff["unmanaged_files"].common, :files) > 0
|
55
|
+
%a.both_anchor{ id: "unmanaged_files_both" }
|
56
|
+
.row
|
57
|
+
.col-md-12
|
58
|
+
%a.show-common-elements{ href: "#unmanaged_files_both" }
|
59
|
+
Show common elements in unmanaged-files
|
60
|
+
%a.hide-common-elements{ href: "#", style: "display: none" }
|
61
|
+
Hide common elements in unmanaged-files
|
62
|
+
.row.scope_common_content.collapse
|
63
|
+
.col-md-12.table_container
|
64
|
+
= in_both
|
65
|
+
= render_partial "compare/unmanaged_file_list", list: @diff["unmanaged_files"].common
|