/usr/share/snapcraft/schema/snapcraft.yaml is in snapcraft 2.8.4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 | $schema: http://json-schema.org/draft-04/schema#
title: snapcraft schema
type: object
properties:
build-packages:
type: array
description: top level build packages.
minItems: 1
uniqueItems: true
items:
- type: string
name:
type: string
description: name of the snap package
pattern: "^[a-z0-9][a-z0-9+-]*$"
architectures:
type: array
description: architectures to override with
minItems: 1
uniqueItems: true
items:
- type: string
version:
# python's defaul yaml loading code loads 1.0 as an int
# type: string
description: package version
pattern: "^[a-zA-Z0-9.+~-]*$"
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
- kernel
- os
frameworks:
type: array
minItems: 1
uniqueItems: true
items:
- type: string
license:
type: string
description: path to a license file.
license-agreement:
type: string
description: action to take on licensing.
enum:
- explicit
license-version:
description: license version (used to re-trigger an agreement action).
apps:
type: object
additionalProperties: false
patternProperties:
"^[A-Za-z0-9:-]*$":
type: object
required:
- command
dependencies:
stop-command: ["daemon"]
additionalProperties: false
properties:
command:
type: string
description: command executed to run the binary
stop-command:
type: string
description: command executed to stop a service
stop-timeout:
description: timeout in seconds
daemon:
type: string
description: signals that the app is a service.
enum:
- simple
- forking
restart-condition:
type: string
enum:
- on-success
- on-failure
- on-abnormal
- on-abort
- always
slots:
type: array
minitems: 1
uniqueItems: true
items:
type: string
plugs:
type: array
minitems: 1
uniqueItems: true
items:
type: string
parts:
type: object
minProperties: 1
additionalProperties: false
patternProperties:
^(?!plugins$)[a-z0-9][a-z0-9+-]*$:
type: object
properties:
plugin:
type: string
description: plugin name
stage-packages:
type: array
description: Ubuntu packages used to support the part.
minItems: 1
uniqueItems: true
items:
type: string
after:
type: array
minitems: 1
uniqueItems: true
items:
type: string
default: []
stage-packages:
type: array
minitems: 1
uniqueItems: true
items:
type: string
default: []
build-packages:
type: array
minitems: 1
uniqueItems: true
items:
type: string
default: []
organize:
type: object
filesets:
type: object
stage:
type: array
minitems: 1
uniqueItems: true
items:
type: string
default: ['*']
snap:
type: array
minitems: 1
uniqueItems: true
items:
type: string
default: ['*']
plugs:
type: object
description: used to connect to interfaces
slots:
type: object
description: used to offer interfaces
plugs:
type: object
slots:
type: object
required:
- name
- version
- summary
- description
- parts
dependencies:
license-agreement: ["license"]
license-version: ["license"]
additionalProperties: false
|