machinery-tool 1.19.0 → 1.20.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (32) hide show
  1. checksums.yaml +4 -4
  2. data/.git_revision +1 -1
  3. data/NEWS +8 -0
  4. data/html/{upgrade.html.haml → exception.html.haml} +2 -6
  5. data/lib/html.rb +10 -6
  6. data/lib/renderer.rb +5 -0
  7. data/lib/server.rb +12 -2
  8. data/lib/system_description.rb +4 -2
  9. data/lib/version.rb +1 -1
  10. data/machinery-helper/version.go +1 -1
  11. data/man/generated/machinery.1.gz +0 -0
  12. data/manual/site/sitemap.xml +23 -23
  13. data/plugins/changed_config_files/schema/system-description-changed-config-files.schema-v9.json +160 -0
  14. data/plugins/changed_managed_files/schema/system-description-changed-managed-files.schema-v9.json +160 -0
  15. data/plugins/environment/schema/system-description-environment.schema-v9.json +17 -0
  16. data/plugins/groups/groups_renderer.rb +2 -0
  17. data/plugins/groups/schema/system-description-groups.schema-v9.json +49 -0
  18. data/plugins/os/schema/system-description-os.schema-v9.json +21 -0
  19. data/plugins/packages/packages_renderer.rb +2 -0
  20. data/plugins/packages/schema/system-description-packages.schema-v9.json +115 -0
  21. data/plugins/patterns/schema/system-description-patterns.schema-v9.json +58 -0
  22. data/plugins/repositories/repositories_renderer.rb +2 -0
  23. data/plugins/repositories/schema/system-description-repositories.schema-v9.json +165 -0
  24. data/plugins/services/schema/system-description-services.schema-v9.json +93 -0
  25. data/plugins/unmanaged_files/schema/system-description-unmanaged-files.schema-v9.json +124 -0
  26. data/plugins/users/schema/system-description-users.schema-v9.json +86 -0
  27. data/plugins/users/users_renderer.rb +4 -0
  28. data/schema/migrations/migrate7to8.rb +1 -1
  29. data/schema/migrations/migrate8to9.rb +35 -0
  30. data/schema/system-description-global.schema-v9.json +43 -0
  31. data/tools/go.rb +18 -6
  32. metadata +16 -3
@@ -23,6 +23,8 @@ class RepositoriesRenderer < Renderer
23
23
  puts "There are no repositories."
24
24
  end
25
25
 
26
+ na_note("repository type") if description.repositories.any? { |a| a[:type] == "" }
27
+
26
28
  list do
27
29
  description.repositories.each do |p|
28
30
  item_name = if p.name
@@ -0,0 +1,165 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "type": "object",
4
+ "required": [
5
+ "_elements"
6
+ ],
7
+ "oneOf": [
8
+ {
9
+ "properties": {
10
+ "_attributes": {
11
+ "type": "object",
12
+ "required": [
13
+ "repository_system"
14
+ ],
15
+ "properties": {
16
+ "repository_system": {
17
+ "enum": ["zypp"]
18
+ }
19
+ }
20
+ },
21
+ "_elements": {
22
+ "type": "array",
23
+ "items": {
24
+ "type": "object",
25
+ "required": ["alias", "name", "url", "type", "enabled", "gpgcheck", "autorefresh", "priority"],
26
+ "properties": {
27
+ "alias": {
28
+ "type": "string",
29
+ "minLength": 1
30
+ },
31
+ "name": {
32
+ "type": "string",
33
+ "minLength": 1
34
+ },
35
+ "type": {
36
+ "enum": ["yast2", "rpm-md", "plaindir", null]
37
+ },
38
+ "url": {
39
+ "type": "string",
40
+ "format": "uri",
41
+ "minLength": 1
42
+ },
43
+ "enabled": {
44
+ "type": "boolean"
45
+ },
46
+ "autorefresh": {
47
+ "type": "boolean"
48
+ },
49
+ "gpgcheck": {
50
+ "type": "boolean"
51
+ },
52
+ "priority": {
53
+ "type": "integer",
54
+ "minimum": 1
55
+ }
56
+ }
57
+ }
58
+ }
59
+ }
60
+ },
61
+ {
62
+ "properties": {
63
+ "_attributes": {
64
+ "type": "object",
65
+ "required": [
66
+ "repository_system"
67
+ ],
68
+ "properties": {
69
+ "repository_system": {
70
+ "enum": ["yum"]
71
+ }
72
+ }
73
+ },
74
+ "_elements": {
75
+ "type": "array",
76
+ "items": {
77
+ "type": "object",
78
+ "required": ["alias", "name", "url", "type", "enabled", "gpgcheck", "gpgkey", "mirrorlist"],
79
+ "properties": {
80
+ "alias": {
81
+ "type": "string",
82
+ "minLength": 1
83
+ },
84
+ "mirrorlist": {
85
+ "type": "string"
86
+ },
87
+ "name": {
88
+ "type": "string",
89
+ "minLength": 1
90
+ },
91
+ "type": {
92
+ "enum": ["rpm-md", null]
93
+ },
94
+ "url": {
95
+ "type": "array",
96
+ "items": {
97
+ "type": "string",
98
+ "format": "url",
99
+ "minLength": 1
100
+ }
101
+ },
102
+ "enabled": {
103
+ "type": "boolean"
104
+ },
105
+ "gpgcheck": {
106
+ "type": "boolean"
107
+ },
108
+ "gpgkey": {
109
+ "type": "array",
110
+ "items": {
111
+ "type": "string",
112
+ "format": "url",
113
+ "minLength": 1
114
+ }
115
+ }
116
+ }
117
+ }
118
+ }
119
+ }
120
+ },
121
+ {
122
+ "properties": {
123
+ "_attributes": {
124
+ "type": "object",
125
+ "required": [
126
+ "repository_system"
127
+ ],
128
+ "properties": {
129
+ "repository_system": {
130
+ "enum": ["apt"]
131
+ }
132
+ }
133
+ },
134
+ "_elements": {
135
+ "type": "array",
136
+ "items": {
137
+ "type": "object",
138
+ "required": ["url", "type", "distribution", "components"],
139
+ "properties": {
140
+ "distribution": {
141
+ "type": "string",
142
+ "minLength": 1
143
+ },
144
+ "type": {
145
+ "enum": ["deb", "deb-src"]
146
+ },
147
+ "url": {
148
+ "type": "string",
149
+ "format": "uri",
150
+ "minLength": 1
151
+ },
152
+ "components": {
153
+ "type": "array",
154
+ "items": {
155
+ "type": "string",
156
+ "minLength": 1
157
+ }
158
+ }
159
+ }
160
+ }
161
+ }
162
+ }
163
+ }
164
+ ]
165
+ }
@@ -0,0 +1,93 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+
4
+ "type": "object",
5
+ "required": [
6
+ "_elements"
7
+ ],
8
+ "oneOf": [
9
+ {
10
+ "properties": {
11
+ "_attributes": {
12
+ "type": "object",
13
+ "required": [
14
+ "init_system"
15
+ ],
16
+ "properties": {
17
+ "init_system": {
18
+ "not": {
19
+ "enum": [
20
+ "upstart"
21
+ ]
22
+ },
23
+ "type": "string",
24
+ "minLength": 1
25
+ }
26
+ }
27
+ },
28
+ "_elements": {
29
+ "type": "array",
30
+ "items": {
31
+ "type": "object",
32
+ "required": [
33
+ "name",
34
+ "state"
35
+ ],
36
+ "properties": {
37
+ "name": {
38
+ "type": "string",
39
+ "minLength": 1
40
+ },
41
+ "state": {
42
+ "type": "string",
43
+ "minLength": 1
44
+ }
45
+ }
46
+ }
47
+ }
48
+ }
49
+ },
50
+ {
51
+ "properties": {
52
+ "_attributes": {
53
+ "type": "object",
54
+ "required": [
55
+ "init_system"
56
+ ],
57
+ "properties": {
58
+ "init_system": {
59
+ "enum": [
60
+ "upstart"
61
+ ]
62
+ }
63
+ }
64
+ },
65
+ "_elements": {
66
+ "type": "array",
67
+ "items": {
68
+ "type": "object",
69
+ "required": [
70
+ "name",
71
+ "state",
72
+ "legacy_sysv"
73
+ ],
74
+ "properties": {
75
+ "name": {
76
+ "type": "string",
77
+ "minLength": 1
78
+ },
79
+ "state": {
80
+ "type": "string",
81
+ "minLength": 1
82
+ },
83
+ "legacy_sysv": {
84
+ "type": "boolean"
85
+ }
86
+ }
87
+ }
88
+ }
89
+ }
90
+ }
91
+ ]
92
+ }
93
+
@@ -0,0 +1,124 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+
4
+ "type": "object",
5
+ "required": [
6
+ "_elements"
7
+ ],
8
+ "properties": {
9
+ "_attributes": {
10
+ "type": "object",
11
+ "required": [
12
+ "extracted",
13
+ "has_metadata"
14
+ ],
15
+ "properties": {
16
+ "extracted": {
17
+ "type": "boolean"
18
+ },
19
+ "has_metadata": {
20
+ "type": "boolean"
21
+ }
22
+ }
23
+ },
24
+ "_elements": {
25
+ "type": "array",
26
+ "items": {
27
+ "anyOf": [
28
+ {
29
+ "$ref": "#/definitions/file"
30
+ },
31
+ {
32
+ "$ref": "#/definitions/file_remote_dir"
33
+ }
34
+ ]
35
+ }
36
+ }
37
+ },
38
+ "definitions": {
39
+ "file_common": {
40
+ "type": "object",
41
+ "required": ["name", "type"],
42
+ "properties": {
43
+ "name": {
44
+ "type": "string"
45
+ }
46
+ }
47
+ },
48
+ "file": {
49
+ "allOf": [
50
+ { "$ref": "#/definitions/file_common" },
51
+ {
52
+ "properties": {
53
+ "user": {
54
+ "type": "string",
55
+ "minLength": 1
56
+ },
57
+ "group": {
58
+ "type": "string",
59
+ "minLength": 1
60
+ }
61
+ },
62
+ "oneOf": [
63
+ { "$ref": "#/definitions/file_file" },
64
+ { "$ref": "#/definitions/file_dir" },
65
+ { "$ref": "#/definitions/file_link" }
66
+ ]
67
+ }
68
+ ]
69
+ },
70
+ "file_file": {
71
+ "properties": {
72
+ "type": {
73
+ "enum": ["file"]
74
+ },
75
+ "size": {
76
+ "type": "integer",
77
+ "minimum": 0
78
+ },
79
+ "mode": {
80
+ "type": "string",
81
+ "pattern": "^[0-7]{3,4}$"
82
+ }
83
+ }
84
+ },
85
+ "file_dir": {
86
+ "properties": {
87
+ "type": {
88
+ "enum": ["dir"]
89
+ },
90
+ "size": {
91
+ "type": "integer",
92
+ "minimum": 0
93
+ },
94
+ "mode": {
95
+ "type": "string",
96
+ "pattern": "^[0-4]?[0-7]{3}$"
97
+ },
98
+ "files": {
99
+ "type": "integer",
100
+ "minimum": 0
101
+ }
102
+ }
103
+ },
104
+ "file_link": {
105
+ "properties": {
106
+ "type": {
107
+ "enum": ["link"]
108
+ }
109
+ }
110
+ },
111
+ "file_remote_dir": {
112
+ "allOf": [
113
+ { "$ref": "#/definitions/file_common" },
114
+ {
115
+ "properties": {
116
+ "type": {
117
+ "enum": ["remote_dir"]
118
+ }
119
+ }
120
+ }
121
+ ]
122
+ }
123
+ }
124
+ }
@@ -0,0 +1,86 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+
4
+ "type": "object",
5
+ "required": [
6
+ "_elements"
7
+ ],
8
+ "properties": {
9
+ "_attributes": {
10
+ "type": "object"
11
+ },
12
+ "_elements": {
13
+ "type": "array",
14
+ "items": {
15
+ "type": "object",
16
+ "required": [
17
+ "name",
18
+ "password",
19
+ "uid",
20
+ "gid",
21
+ "comment",
22
+ "home",
23
+ "shell"
24
+ ],
25
+ "properties": {
26
+ "name": {
27
+ "type": "string",
28
+ "minLength": 1
29
+ },
30
+ "password": {
31
+ "type": "string"
32
+ },
33
+ "uid": {
34
+ "type": [
35
+ "integer",
36
+ "null"
37
+ ],
38
+ "minimum": 0
39
+ },
40
+ "gid": {
41
+ "type": [
42
+ "integer",
43
+ "null"
44
+ ],
45
+ "minimum": 0
46
+ },
47
+ "comment": {
48
+ "type": "string"
49
+ },
50
+ "home": {
51
+ "type": "string"
52
+ },
53
+ "shell": {
54
+ "type": "string"
55
+ },
56
+ "encrypted_password": {
57
+ "type": "string"
58
+ },
59
+ "last_changed_date": {
60
+ "type": "integer"
61
+ },
62
+ "min_days": {
63
+ "type": "integer",
64
+ "minimum": 0
65
+ },
66
+ "max_days": {
67
+ "type": "integer",
68
+ "minimum": 0
69
+ },
70
+ "warn_days": {
71
+ "type": "integer",
72
+ "minimum": 0
73
+ },
74
+ "disable_days": {
75
+ "type": "integer",
76
+ "minimum": 0
77
+ },
78
+ "disabled_date": {
79
+ "type": "integer"
80
+ }
81
+ }
82
+ }
83
+ }
84
+ }
85
+ }
86
+