-
Notifications
You must be signed in to change notification settings - Fork 10
157 lines (149 loc) · 5.59 KB
/
acceptance.yml
File metadata and controls
157 lines (149 loc) · 5.59 KB
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
---
name: Beaker Acceptance Tests
run-name: |-
Beaker acceptance tests for openvoxdb using
${{ inputs.pre-release-build && 'pre-release' || 'release' }}
packages of openvox-agent
${{ (inputs.pre-release-build && inputs.openvox-agent-version) ||
format(' collection: "{0}", version: "{1}" ',
inputs.collection,
((inputs.openvox-agent-version == '') && 'latest') ||
inputs.openvox-agent-version) }}
, openvox-server
${{ (inputs.pre-release-build && inputs.openvox-server-version) ||
format(' collection: "{0}", version: "{1}" ',
inputs.collection,
((inputs.openvox-server-version == '') && 'latest') ||
inputs.openvox-server-version) }}
and openvoxdb
${{ (inputs.pre-release-build && inputs.openvoxdb-version) ||
format(' collection: "{0}", version: "{1}" ',
inputs.collection,
((inputs.openvoxdb-version == '') && 'latest') ||
inputs.openvoxdb-version) }}
on:
workflow_dispatch:
inputs:
ref:
description: |-
(Ref) The git ref of openvoxdb to run the Beaker test
suite from.
If testing something from openvox8, this should be a ref off
of main.
If testing something from openvox7, this should be a ref off
of the 7.x branch.
required: true
type: string
default: main
fork:
description: |-
(Fork) The fork of openvoxdb to run the Beaker test suite
from.
required: true
type: string
default: openvoxproject
pre-release-build:
description: |-
(Pre-release Build) Whether to test unreleased version
packages from the artifacts server, or released packages
from the given collection.
If this is true, versions must be valid version numbers,
not latest, and collection is ignored. The workflow will
download and install the matching openvox package files
from the artifacts-url server.
If this is false, version and collection must match, and the
workflow will install the given openvox collection package
and then let the system package manager install the latest
or version packages from the collection repository.
default: true
type: boolean
openvox-agent-version:
description: |-
(OpenVox Agent Version) The openvox-agent package version to
test. (required if Pre-release Build is true)
type: string
openvox-server-version:
description: |-
(OpenVox Server Version) The openvox-server package version
to test. (required if Pre-release Build is true)
type: string
openvoxdb-version:
description: |-
(OpenVoxDB Version) The openvoxdb package version
to test. (required if Pre-release Build is true)
type: string
collection:
description: |-
(Collection) OpenVox collection to use. (ignored if
Pre-release Build is true)
If testing something from main, this should be openvox8.
If testing something from 7.x, this should be openvox7.
default: 'openvox8'
type: string
artifacts-url:
description: |-
URL to the artifacts server. (used if Pre-release Build is
true)
default: 'https://s3.osuosl.org/openvox-artifacts'
type: string
permissions:
contents: read
jobs:
acceptance:
uses: 'openvoxproject/shared-actions/.github/workflows/beaker_acceptance.yml@main'
with:
project-name: openvoxdb
ref: ${{ inputs.ref }}
fork: ${{ inputs.fork }}
install-openvox: true
openvox-collection: ${{ inputs.collection }}
openvox-agent-version: ${{ inputs.openvox-agent-version }}
openvox-agent-pre-release-build: ${{ inputs.pre-release-build }}
install-openvox-server: true
openvox-server-version: ${{ inputs.openvox-server-version }}
openvox-server-pre-release-build: ${{ inputs.pre-release-build }}
install-openvoxdb: true
openvoxdb-version: ${{ inputs.openvoxdb-version }}
openvoxdb-pre-release-build: ${{ inputs.pre-release-build }}
artifacts-url: ${{ inputs.artifacts-url }}
acceptance-working-dir: './'
acceptance-pre-suite: |-
[
"acceptance/setup/openvox/configure_type_defaults.rb",
"acceptance/setup/pre_suite/00_setup_test_env.rb",
"acceptance/setup/pre_suite/10_setup_proxies.rb",
"acceptance/setup/pre_suite/15_prep_locales.rb",
"acceptance/setup/pre_suite/20_install_puppet.rb",
"acceptance/setup/pre_suite/30_generate_ssl_certs.rb",
"acceptance/setup/pre_suite/40_install_deps.rb",
"acceptance/setup/pre_suite/50_install_modules.rb",
"acceptance/setup/pre_suite/75_clean_out_puppet5_repos.rb",
"acceptance/setup/pre_suite/80_add_dev_repo.rb",
"acceptance/setup/openvox/configure_openvoxdb.rb"
]
acceptance-tests: |-
[
"acceptance/tests"
]
beaker-options: |-
{
"helper": "acceptance/helper.rb",
"options_file": "acceptance/options/openvox.rb"
}
vms: |-
[
{
"role": "primary",
"count": 1,
"cpus": 4,
"mem_mb": 8192,
"cpu_mode": "host-model"
},
{
"role": "agent",
"count": 1,
"cpus": 2,
"mem_mb": 2048,
"cpu_mode": "host-model"
}
]