aboutsummaryrefslogtreecommitdiff
path: root/schemas_json/project.yaml
blob: 7a66914098d0c160064727a30772ce78fc6d5d2f (plain) (blame)
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
---
"$schema": "http://json-schema.org/schema#"
id: "hatter://project.yaml#"
title: Project
description: Project configuration
type: array
items:
    type: object
    description: Single execution environment
    required:
        - vm
        - ssh
        - script
    properties:
        vm:
            title: VM
            description: VM configuration
            type: object
            required:
                - domain
            properties:
                uri:
                    title: URI
                    description: Libvirt URI
                    type: string
                    default: "qemu:///system"
                domain:
                    title: Domain
                    description: |
                        Domain registered with libvirt used as execution
                        environment
                    type: string
                snapshot:
                    title: Snapshot
                    description: |
                        Snapshot used as initial execution environment state
                    type: string
                temp_snapshot:
                    title: Temporary snapshot
                    description: |
                        Snapshot used for storing initial domain state
                    type: string
                    default: temp_hatter
                get_address_retry_count:
                    title: Get address retry count
                    description: |
                        Maximum number of retries for obtaining running VM guest
                        IP address
                    type: integer
                    default: 10
                get_address_delay:
                    title: Get address delay
                    description: |
                        Delay in seconds between successive get address requests
                    type: number
                    default: 5
        ssh:
            title: SSH
            description: VM guest SSH daemon configuration
            type: object
            required:
                - username
                - password
            properties:
                username:
                    title: Username
                    description: Username for connecting to VM guest SSH daemon
                    type: string
                password:
                    title: Password
                    description: Password for connecting to VM guest SSH daemon
                    type: string
                connect_retry_count:
                    title: Connect retry count
                    description: |
                        Maximum number of connect retries
                    type: integer
                    default: 10
                connect_delay:
                    title: Connect delay
                    description: |
                        Delay in seconds between successive connect calls
                    type: number
                    default: 5
                connect_timeout:
                    title: Connect timeout
                    description: |
                        Single connect's TCP connect timeout and authenticate
                        timeout in seconds
                    type: number
                    default: 1
        script:
            title: Script
            description: |
                List of shell commands executed inside VM guest
            type: array
            items:
                title: Command
                description: |
                    Single shell command
                type: string
...