forked from archlinuxcn/repo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
lilac-yaml-schema.yaml
105 lines (105 loc) · 3.35 KB
/
lilac-yaml-schema.yaml
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
$schema: http://json-schema.org/draft-07/schema#
$id: http://example.com/product.schema.json
title: lilac.yaml
description: Descriptive configuration data for lilac packaging
type: object
properties:
build_prefix:
description: The prefix of build command to be used. E.g. extra-x86_64, multilib or archlinuxcn-x86_64.
type: string
default: "extra-$(uname -m)"
enum:
- extra-x86_64
- archlinuxcn-x86_64
- multilib
- multilib-archlinuxcn
- extra-aarch64
pre_build:
description: Name of function to be used as the pre_build function.
type: string
post_build:
description: Name of function to be used as the post_build function.
type: string
post_build_always:
description: Name of function to be used as the post_build_always function.
type: string
pre_build_script:
description: Body of the pre_build function. lilac2.api functions are available.
type: string
post_build_script:
description: Body of the post_build function. lilac2.api functions are available.
type: string
post_build_always_script:
description: Body of the post_build_always function. lilac2.api functions are available.
type: string
time_limit_hours:
description: Time limit in hours. The build will be aborted if it doesn't finish in time. Default is one hour.
type: number
repo_depends:
description: Packages in the repo to be built and installed before building the current package.
type: array
items:
anyOf:
- type: string
description: Package (directory) name
- type: object
description: Package base (directory) as key and package name as value
minProperties: 1
maxProperties: 1
additionalProperties:
type: string
update_on:
description: Configure how nvchecker should check for updates / rebuilds? The first should check for updates and others for rebuilds.
type: array
items:
anyOf:
- type: object
description: nvchecker configuration section
properties:
source:
type: string
description: nvchecker source name
required:
- source
- type: object
description: use an alias for nvchecker configuration section
properties:
alias:
type: string
description: alias name
required:
- alias
minItems: 1
maintainers:
description: List of maintainers for receiving email notifications
type: array
items:
anyOf:
- type: object
description: GitHub username with a public email address
properties:
github:
type: string
required:
- github
- type: object
description: GitHub username and an email address in the form "Name <user@host>". The GitHub public email does not matter.
properties:
github:
type: string
email:
type: string
required:
- github
- email
minItems: 0
staging:
description: Whether to stage the package in a "staging" subdirectory
type: boolean
default: false
managed:
description: Whether the package should be built by lilac or not
type: boolean
default: true
required:
- maintainers