1
2
3
4
5
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
|
$schema: http://json-schema.org/draft-04/schema#
definitions:
security:
type: object
required:
- apparmor
- seccomp
properties:
apparmor:
type: string
format: file-path
seccomp:
type: string
format: file-path
title: snapcraft schema
type: object
properties:
name:
type: string
description: name of the snap package
pattern: "^[a-z0-9][a-z0-9+-]*$"
version:
# python's defaul yaml loading code loads 1.0 as an int
# type: string
description: package version
pattern: "^[a-zA-Z0-9.+~-]*$"
vendor:
type: string
format: email
icon:
type: string
description: path to a 512x512 icon representing the package.
format: icon-path
summary:
type: string
description: one line summary for the package
maxLength: 78
description:
type: string
description: long description of the package
type:
type: string
description: the snap type, the implicit type is 'app'
enum:
- app
- framework
frameworks:
type: array
minItems: 1
uniqueItems: true
items:
- type: string
config:
type: string
description: path to a configure hook to expose configuration for the package
framework-policy:
type: string
description: framework policies to add to the package
format: file-path
services:
type: object
additionalProperties: false
patternProperties:
"^[A-Za-z0-9:-]*$":
type: object
required:
- start
properties:
start:
type: string
description: command executed to start the service
stop:
type: string
description: command executed to stop the service
security-policy:
$ref: "#definitions/security"
security-override:
$ref: "#definitions/security"
binaries:
type: object
additionalProperties: false
patternProperties:
"^[A-Za-z0-9:-]*$":
type: object
required:
- exec
properties:
exec:
type: string
description: command executed to run the binary
security-policy:
$ref: "#definitions/security"
security-override:
$ref: "#definitions/security"
parts:
type: object
minProperties: 1
additionalProperties: false
patternProperties:
^[a-z0-9][a-z0-9+-]*$:
type: object
properties:
plugin:
type: string
description: plugin name
source:
type: string
description: path to the sources
stage-packages:
type: array
description: Ubuntu packages used to support the part.
minItems: 1
uniqueItems: true
items:
type: string
# required:
# - plugin
# - source
required:
- name
- version
- vendor
- summary
- description
- icon
- parts
|