puppetdb_cli 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +27 -0
- data/.rspec +3 -0
- data/.rubocop.yml +21 -0
- data/.travis.yml +25 -0
- data/CHANGELOG.md +54 -0
- data/CONTRIBUTING.md +9 -0
- data/Gemfile +8 -0
- data/LICENSE +13 -0
- data/MAINTAINERS +28 -0
- data/README.md +121 -0
- data/Rakefile +11 -0
- data/acceptance/Gemfile +27 -0
- data/acceptance/Rakefile +99 -0
- data/acceptance/config/vcloud-ubuntu1604-64mda.cfg +18 -0
- data/acceptance/foss/setup/pre_suite/00_setup_env.rb +80 -0
- data/acceptance/foss/tests/basic.rb +14 -0
- data/acceptance/pe/setup/pre_suite/00_setup_env.rb +65 -0
- data/acceptance/pe/tests/basic.rb +20 -0
- data/appveyor.yml +57 -0
- data/bin/console +15 -0
- data/bin/setup +8 -0
- data/exe/puppet-db +11 -0
- data/exe/puppet-query +11 -0
- data/lib/puppetdb_cli.rb +54 -0
- data/lib/puppetdb_cli/db.rb +25 -0
- data/lib/puppetdb_cli/db/export.rb +49 -0
- data/lib/puppetdb_cli/db/import.rb +32 -0
- data/lib/puppetdb_cli/db/status.rb +25 -0
- data/lib/puppetdb_cli/logger.rb +35 -0
- data/lib/puppetdb_cli/query.rb +38 -0
- data/lib/puppetdb_cli/utils.rb +50 -0
- data/lib/puppetdb_cli/version.rb +6 -0
- data/man/puppet-db.pod +127 -0
- data/man/puppet-query.pod +83 -0
- data/man/puppetdb_conf.pod +87 -0
- data/pod2man.sh +28 -0
- data/puppetdb_cli.gemspec +33 -0
- metadata +186 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 42d242aeb659eede85c99de3e9eb3aba62601f6b
|
4
|
+
data.tar.gz: a9c1b2185eacbe0303cb24344ddf708090c8b475
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: ad17edfa9dea21e21ae34998da28f30b4ef5dc6bcda62fca751b3273191015d1280083e9a4508f25bc7a556a319bc60862d58c08c90e291b6f948cf6330a8fe3
|
7
|
+
data.tar.gz: 3608ab3405b2ad0fdf15d0ee5d25f873b5b08b1588d95575d73f51b86519da9831f37639adc4c2d9f94959407e661259e5b4ea158d4ea25a35a519e570ba6811
|
data/.gitignore
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
# Misc files
|
2
|
+
*.swp
|
3
|
+
.DS_Store
|
4
|
+
Gemfile.local
|
5
|
+
Gemfile.lock
|
6
|
+
|
7
|
+
# Beaker
|
8
|
+
acceptance/.bundle/
|
9
|
+
acceptance/vendor/
|
10
|
+
acceptance/junit/
|
11
|
+
acceptance/log/
|
12
|
+
acceptance/hosts.cfg
|
13
|
+
acceptance/tmp/
|
14
|
+
|
15
|
+
# Ruby
|
16
|
+
/.bundle/
|
17
|
+
/.yardoc
|
18
|
+
/_yardoc/
|
19
|
+
/coverage/
|
20
|
+
/doc/
|
21
|
+
/pkg/
|
22
|
+
/spec/reports/
|
23
|
+
/tmp/
|
24
|
+
/vendor/
|
25
|
+
|
26
|
+
# rspec failure tracking
|
27
|
+
.rspec_status
|
data/.rspec
ADDED
data/.rubocop.yml
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
AllCops:
|
2
|
+
Include:
|
3
|
+
- lib/**/*.rb
|
4
|
+
- spec/**/*.rb
|
5
|
+
- acceptance/foss/**/*.rb
|
6
|
+
- exe/**/*.rb
|
7
|
+
Exclude:
|
8
|
+
- vendor/**/*
|
9
|
+
- acceptance/vendor/**/*
|
10
|
+
TargetRubyVersion: 2.3
|
11
|
+
Style/ClassAndModuleChildren:
|
12
|
+
Exclude:
|
13
|
+
- lib/**/*
|
14
|
+
- spec/**/*
|
15
|
+
- acceptance/**/*
|
16
|
+
Metrics/BlockLength:
|
17
|
+
Exclude:
|
18
|
+
- spec/**/*
|
19
|
+
- puppetdb_cli.gemspec
|
20
|
+
Metrics/LineLength:
|
21
|
+
Max: 120
|
data/.travis.yml
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
language: ruby
|
2
|
+
sudo: false
|
3
|
+
|
4
|
+
script:
|
5
|
+
'bundle exec $CHECK'
|
6
|
+
|
7
|
+
notifications:
|
8
|
+
email: false
|
9
|
+
|
10
|
+
before_install:
|
11
|
+
- bundle -v
|
12
|
+
- rm Gemfile.lock || true
|
13
|
+
- gem update --system
|
14
|
+
- gem update bundler
|
15
|
+
- gem --version
|
16
|
+
- bundle -v
|
17
|
+
|
18
|
+
matrix:
|
19
|
+
include:
|
20
|
+
- rvm: 2.3.1
|
21
|
+
env: CHECK=rspec
|
22
|
+
- rvm: 2.3.1
|
23
|
+
env: CHECK=rubocop
|
24
|
+
- rvm: 2.5.5
|
25
|
+
env: CHECK=rspec
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,54 @@
|
|
1
|
+
# Change Log
|
2
|
+
All notable changes to this project will be documented in this file.
|
3
|
+
This project adheres to [Semantic Versioning](http://semver.org/).
|
4
|
+
|
5
|
+
## [1.1.0] - 2016-07-20
|
6
|
+
|
7
|
+
### Features
|
8
|
+
|
9
|
+
- New `puppet-db status` subcommand for retreiving the Trapperkeeper statuses of
|
10
|
+
your PuppetDB instances.
|
11
|
+
|
12
|
+
### Fixed
|
13
|
+
|
14
|
+
- OpenSSL is properly linked with the PuppetDB CLI and now works with HTTPS.
|
15
|
+
|
16
|
+
## [1.0.1] - 2016-06-28
|
17
|
+
|
18
|
+
### Fixed
|
19
|
+
|
20
|
+
- (PDB-2748) Fix incompatibility between puppet-agent 1.5 and puppet-client-tools
|
21
|
+
- (PDB-2653) Do not display `no error found` for bad requests
|
22
|
+
|
23
|
+
## [1.0.0] - 2016-04-07
|
24
|
+
|
25
|
+
### Summary
|
26
|
+
|
27
|
+
Initial release of the PuppetDB CLI subcommands.
|
28
|
+
|
29
|
+
The PuppetDB CLI is intended to facilitate friendlier interactions with the
|
30
|
+
PuppetDB API.
|
31
|
+
|
32
|
+
The PuppetDB CLI accepts a configuration file with SSL credentials and the url
|
33
|
+
for your PuppetDB server so you can issue queries to PuppetDB on your own
|
34
|
+
machine without needing to type long `curl` invocations.
|
35
|
+
|
36
|
+
We intend to use the PuppetDB CLI to provide human readable output formats and
|
37
|
+
helpful hints for interacting with the API more generally.
|
38
|
+
|
39
|
+
### Installation
|
40
|
+
|
41
|
+
Please see the
|
42
|
+
[PuppetDB documentation](https://docs.puppetlabs.com/puppetdb/master/pdb_client_tools.html)
|
43
|
+
for installation and usage instructions.
|
44
|
+
|
45
|
+
### Features
|
46
|
+
|
47
|
+
- New implementations of our `puppetdb import` and `puppetdb export` tools for
|
48
|
+
faster startup. The commands are now Puppet subcommands `puppet-db import` and
|
49
|
+
`puppet-db export` respectively.
|
50
|
+
- A `puppet-query` subcommand for querying PuppetDB with PQL or AST queries.
|
51
|
+
|
52
|
+
### Contributors
|
53
|
+
|
54
|
+
Andrew Roetker, Rob Browing, Ryan Senior, and Wyatt Alt.
|
data/CONTRIBUTING.md
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
# How to contribute
|
2
|
+
|
3
|
+
Third-party patches are essential for keeping Puppet Labs open-source projects
|
4
|
+
great. We want to keep it as easy as possible to contribute changes that
|
5
|
+
allow you to get the most out of our projects. There are a few guidelines
|
6
|
+
that we need contributors to follow so that we can have a chance of keeping on
|
7
|
+
top of things. For more info, see our canonical guide to contributing:
|
8
|
+
|
9
|
+
[https://github.com/puppetlabs/puppet/blob/master/CONTRIBUTING.md](https://github.com/puppetlabs/puppet/blob/master/CONTRIBUTING.md)
|
data/Gemfile
ADDED
data/LICENSE
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
Copyright 2016 Andrew Roetker <andrew.roetker@puppetlabs.com>
|
2
|
+
|
3
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
you may not use this file except in compliance with the License.
|
5
|
+
You may obtain a copy of the License at
|
6
|
+
|
7
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
|
9
|
+
Unless required by applicable law or agreed to in writing, software
|
10
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
See the License for the specific language governing permissions and
|
13
|
+
limitations under the License.
|
data/MAINTAINERS
ADDED
@@ -0,0 +1,28 @@
|
|
1
|
+
{
|
2
|
+
"version": 1,
|
3
|
+
"file_format": "This MAINTAINERS file format is described at https://github.com/puppetlabs/maintainers",
|
4
|
+
"issues": "https://tickets.puppetlabs.com/browse/PA",
|
5
|
+
"internal_list": "https://groups.google.com/a/puppet.com/forum/?hl=en#!forum/discuss-puppetdb-maintainers",
|
6
|
+
"people": [
|
7
|
+
{
|
8
|
+
"github": "ajroetker",
|
9
|
+
"email": "andrew.roetker@puppet.com",
|
10
|
+
"name": "AJ Roetker"
|
11
|
+
},
|
12
|
+
{
|
13
|
+
"github": "senior",
|
14
|
+
"email": "ryan.senior@puppet.com",
|
15
|
+
"name": "Ryan Senior"
|
16
|
+
},
|
17
|
+
{
|
18
|
+
"github": "wkalt",
|
19
|
+
"email": "wyatt@puppet.com",
|
20
|
+
"name": "Wyatt Alt"
|
21
|
+
},
|
22
|
+
{
|
23
|
+
"github": "rbrw",
|
24
|
+
"email": "rlb@puppet.com",
|
25
|
+
"name": "Rob Browning"
|
26
|
+
}
|
27
|
+
]
|
28
|
+
}
|
data/README.md
ADDED
@@ -0,0 +1,121 @@
|
|
1
|
+
# puppetdb-cli
|
2
|
+
|
3
|
+
[](https://ci.appveyor.com/project/puppetlabs/puppetdb-cli)
|
4
|
+
[](https://travis-ci.org/puppetlabs/puppetdb-cli)
|
5
|
+
|
6
|
+
> **Note**: This repository is still under active development. Stay tuned for
|
7
|
+
> release dates and functionality changes.
|
8
|
+
|
9
|
+
The PuppetDB CLI project provide Puppet subcommands for querying PuppetDB data,
|
10
|
+
via `puppet query <query>`, and PuppetDB administrative tasks, `puppet db
|
11
|
+
<import|export|status>`. The `query` subcommand will allow you to query PuppetDB
|
12
|
+
using either the upcoming PQL syntax of the traditional PuppetDB query syntax
|
13
|
+
(also known as AST). The `db` subcommand is a replacement for the older
|
14
|
+
`puppetdb <export|import>` commands with faster startup times and much
|
15
|
+
friendlier error messages.
|
16
|
+
|
17
|
+
## Compatibility
|
18
|
+
|
19
|
+
This CLI is compatible with
|
20
|
+
[PuppetDB 4.0.0](https://docs.puppetlabs.com/puppetdb/4.0/release_notes.html#section)
|
21
|
+
and greater.
|
22
|
+
|
23
|
+
## Installation
|
24
|
+
|
25
|
+
Please see
|
26
|
+
[the PuppetDB documentation](https://docs.puppet.com/puppetdb/latest/pdb_client_tools.html)
|
27
|
+
for instructions on how to install the `puppet-client-tools` package.
|
28
|
+
|
29
|
+
## Installation from source
|
30
|
+
|
31
|
+
Using `rustc` and `cargo` (stable, beta, or nightly):
|
32
|
+
|
33
|
+
```bash
|
34
|
+
|
35
|
+
$ export PATH=./target/debug:$PATH
|
36
|
+
$ cargo build
|
37
|
+
|
38
|
+
```
|
39
|
+
|
40
|
+
When building on OSX or Windows you will also need to install openssl and use
|
41
|
+
that for building the PuppetDB CLI. For OSX users the simplest way to do this is
|
42
|
+
using Homebrew and running the following commands before the `cargo build`:
|
43
|
+
|
44
|
+
```bash
|
45
|
+
|
46
|
+
$ export OPENSSL_LIB_DIR=$(brew --prefix)/lib
|
47
|
+
$ export OPENSSL_INCLUDE_DIR=$(brew --prefix)/include
|
48
|
+
|
49
|
+
```
|
50
|
+
|
51
|
+
## Usage
|
52
|
+
|
53
|
+
Example usage:
|
54
|
+
|
55
|
+
```bash
|
56
|
+
|
57
|
+
$ puppet-query 'nodes[certname]{}'
|
58
|
+
[
|
59
|
+
{
|
60
|
+
"certname" : "baz.example.com"
|
61
|
+
},
|
62
|
+
{
|
63
|
+
"certname" : "bar.example.com"
|
64
|
+
},
|
65
|
+
{
|
66
|
+
"certname" : "foo.example.com"
|
67
|
+
}
|
68
|
+
]
|
69
|
+
$ puppet-db status
|
70
|
+
{
|
71
|
+
"puppetdb-status": {
|
72
|
+
"service_version": "4.0.0-SNAPSHOT",
|
73
|
+
"service_status_version": 1,
|
74
|
+
"detail_level": "info",
|
75
|
+
"state": "running",
|
76
|
+
"status": {
|
77
|
+
"maintenance_mode?": false,
|
78
|
+
"queue_depth": 0,
|
79
|
+
"read_db_up?": true,
|
80
|
+
"write_db_up?": true
|
81
|
+
}
|
82
|
+
},
|
83
|
+
"status-service": {
|
84
|
+
"service_version": "0.3.1",
|
85
|
+
"service_status_version": 1,
|
86
|
+
"detail_level": "info",
|
87
|
+
"state": "running",
|
88
|
+
"status": {}
|
89
|
+
}
|
90
|
+
}
|
91
|
+
|
92
|
+
```
|
93
|
+
|
94
|
+
## Configuration
|
95
|
+
|
96
|
+
The Rust PuppetDB CLI accepts a `--config=<path_to_config>` flag which allows
|
97
|
+
you to configure your ssl credentials and the location of your PuppetDB.
|
98
|
+
|
99
|
+
By default the tool will use `$HOME/.puppetlabs/client-tools/puppetdb.conf` as
|
100
|
+
it's configuration file if it exists. You can also configure a global
|
101
|
+
configuration (for all users) in `/etc/puppetlabs/client-tools/puppetdb.conf`
|
102
|
+
(`C:\ProgramData\puppetlabs\client-tools\puppetdb.conf` on Windows) to fall back
|
103
|
+
to if the per-user configuration is not present.
|
104
|
+
|
105
|
+
The format of the config file can be deduced from the following example.
|
106
|
+
|
107
|
+
```json
|
108
|
+
{
|
109
|
+
"puppetdb" : {
|
110
|
+
"server_urls" : [
|
111
|
+
"https://<PUPPETDB_HOST>:8081",
|
112
|
+
"https://<PUPPETDB_REPLICA_HOST>:8081"
|
113
|
+
],
|
114
|
+
"cacert" : "/path/to/cacert",
|
115
|
+
"cert" : "/path/to/cert",
|
116
|
+
"key" : "/path/to/private_key",
|
117
|
+
"token-file" : "/path/to/token (PE only)"
|
118
|
+
},
|
119
|
+
}
|
120
|
+
}
|
121
|
+
```
|
data/Rakefile
ADDED
data/acceptance/Gemfile
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
source ENV['GEM_SOURCE'] || "https://rubygems.org"
|
2
|
+
|
3
|
+
def location_for(place, fake_version = nil)
|
4
|
+
if place =~ /^(git:[^#]*)#(.*)/
|
5
|
+
[fake_version, { :git => $1, :branch => $2, :require => false }].compact
|
6
|
+
elsif place =~ /^file:\/\/(.*)/
|
7
|
+
['>= 0', { :path => File.expand_path($1), :require => false }]
|
8
|
+
else
|
9
|
+
[place, { :require => false }]
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
gem "beaker", *location_for(ENV['BEAKER_VERSION'] || '~> 4.0')
|
14
|
+
gem "beaker-puppet", *location_for(ENV['BEAKER_PUPPET_VERSION'] || ["~>1.0", ">= 1.0.1"])
|
15
|
+
gem "beaker-hostgenerator", *location_for(ENV['BEAKER_HOSTGENERATOR_VERSION'] || "~> 1.1")
|
16
|
+
gem "beaker-abs", *location_for(ENV['BEAKER_ABS_VERSION'] || "~> 0.4")
|
17
|
+
gem "beaker-vmpooler", *location_for(ENV['BEAKER_VMPOOLER_VERSION'] || "~> 1.3")
|
18
|
+
unless ENV["BEAKER_TYPE"] == 'foss'
|
19
|
+
gem 'beaker-pe'
|
20
|
+
gem 'scooter', *location_for(ENV['SCOOTER_VERSION'] || '~> 4.0')
|
21
|
+
end
|
22
|
+
gem 'rake', '~> 12.3'
|
23
|
+
gem 'rototiller', '= 0.1.0'
|
24
|
+
|
25
|
+
if File.exists? "#{__FILE__}.local"
|
26
|
+
eval(File.read("#{__FILE__}.local"), binding)
|
27
|
+
end
|
data/acceptance/Rakefile
ADDED
@@ -0,0 +1,99 @@
|
|
1
|
+
require 'rake/clean'
|
2
|
+
require 'rototiller'
|
3
|
+
|
4
|
+
desc 'Run acceptance tests'
|
5
|
+
|
6
|
+
desc "Generate Beaker Host config"
|
7
|
+
task :host_config do
|
8
|
+
if ENV["BEAKER_CONFIG"]
|
9
|
+
next
|
10
|
+
end
|
11
|
+
if not ENV['TEST_TARGET']
|
12
|
+
fail "FATAL: must set TEST_TARGET environment variable."
|
13
|
+
end
|
14
|
+
|
15
|
+
generate = "bundle exec beaker-hostgenerator"
|
16
|
+
generate += " --disable-default-role #{ENV['TEST_TARGET']}"
|
17
|
+
generate += " > hosts.cfg"
|
18
|
+
sh generate
|
19
|
+
sh "cat hosts.cfg"
|
20
|
+
end
|
21
|
+
|
22
|
+
desc "Run beaker based acceptance tests"
|
23
|
+
task acceptance: :host_config
|
24
|
+
task :acceptance do
|
25
|
+
|
26
|
+
# fail if SHA not present
|
27
|
+
fail "SHA must be set in order to setup repositories!!!" if ENV["BEAKER_TYPE"] == "pe" && !ENV['SHA']
|
28
|
+
|
29
|
+
# hardcode the pe_dir into the repo instead of the jenkins job
|
30
|
+
ENV['BEAKER_PE_DIR'] = "http://enterprise.delivery.puppetlabs.net/#{ENV['PE_FAMILY']}/ci-ready" unless ENV["BEAKER_TYPE"] == 'foss'
|
31
|
+
|
32
|
+
config = ENV["BEAKER_CONFIG"] || 'hosts.cfg'
|
33
|
+
preserve_hosts = ENV["BEAKER_PRESERVE_HOSTS"] || 'onfail'
|
34
|
+
type = ENV["BEAKER_TYPE"] || 'pe'
|
35
|
+
keyfile = ENV["BEAKER_KEYFILE"] || "#{ENV['HOME']}/.ssh/id_rsa-acceptance"
|
36
|
+
test_suite = ENV["BEAKER_TESTSUITE"] || "#{type}/tests/"
|
37
|
+
pre_suite = ENV["BEAKER_PRESUITE"] || "#{type}/setup/pre_suite"
|
38
|
+
opts = ENV["BEAKER_OPTS"] || ''
|
39
|
+
|
40
|
+
beaker = "bundle exec beaker "
|
41
|
+
beaker += " --xml"
|
42
|
+
beaker += " --debug"
|
43
|
+
beaker += " --no-color"
|
44
|
+
beaker += " --repo-proxy"
|
45
|
+
beaker += " --config #{config}" if config != ''
|
46
|
+
beaker += " --preserve-hosts #{preserve_hosts}" if preserve_hosts != ''
|
47
|
+
beaker += " --type #{type}" if type != ''
|
48
|
+
beaker += " --keyfile #{keyfile}" if keyfile != ''
|
49
|
+
beaker += " --tests #{test_suite}" if test_suite != ''
|
50
|
+
beaker += " --pre-suite #{pre_suite}" if pre_suite != ''
|
51
|
+
beaker += " #{opts}" if opts != ''
|
52
|
+
sh beaker
|
53
|
+
end
|
54
|
+
|
55
|
+
namespace :ci do
|
56
|
+
namespace :test do
|
57
|
+
|
58
|
+
desc 'This task is used by CI to test the package pe-client-tools'
|
59
|
+
rototiller_task :package => [:set_test_target]do |t|
|
60
|
+
|
61
|
+
flags = [
|
62
|
+
{:name => '--xml', :is_boolean => true},
|
63
|
+
{:name => '--no-color', :is_boolean => true},
|
64
|
+
{:name => '--debug', :is_boolean => true},
|
65
|
+
{:name => '--hosts', :override_env => 'BEAKER_HOSTS'},
|
66
|
+
{:name => '--preserve-hosts', :default => 'onfail', :override_env => 'BEAKER_PRESERVE_HOSTS'},
|
67
|
+
{:name => '--keyfile', :default => "#{ENV['HOME']}/.ssh/id_rsa-acceptance", :override_env => 'BEAKER_KEYFILE'},
|
68
|
+
{:name => '--pre-suite', :default => 'pe/setup/pre_suite', :override_env => 'BEAKER_PRESUITE'},
|
69
|
+
{:name => '--tests', :default => 'pe/tests', :override_env => 'BEAKER_TESTSUITE'},
|
70
|
+
]
|
71
|
+
|
72
|
+
t.add_flag(*flags)
|
73
|
+
|
74
|
+
t.add_env(:name => 'SHA', :message => 'The sha for pe-client-tools')
|
75
|
+
t.add_env(:name => 'SUITE_VERSION', :message => 'The suite version used by Jenkins')
|
76
|
+
t.add_env(:name => 'PE_FAMILY', :message => 'The puppet enterprise major branch to install from')
|
77
|
+
|
78
|
+
t.add_env do |env|
|
79
|
+
env.name = 'pe_dist_dir'
|
80
|
+
env.message = 'The location to download PE from example "http://neptune.puppetlabs.lan/20XX.X/ci-ready"'
|
81
|
+
ENV['pe_dist_dir'] ||= "http://neptune.puppetlabs.lan/#{ENV['PE_FAMILY']}/ci-ready"
|
82
|
+
end
|
83
|
+
|
84
|
+
t.add_command({:name => 'beaker', :override_env => 'BEAKER_EXECUTABLE'})
|
85
|
+
end
|
86
|
+
|
87
|
+
task :set_test_target do
|
88
|
+
if ENV['BEAKER_HOSTS'].nil?
|
89
|
+
client = ENV['CLIENT_TEST_TARGET'] || (fail 'The environment variable CLIENT_TEST_TARGET must be set.')
|
90
|
+
# process the CLIENT_TEST_TARGET variable and assign it to TEST_TARGET so that rototiller will pick it up
|
91
|
+
monolithic_config = "#{client}client.mdca"
|
92
|
+
master_agent_config = "centos7-64.mdca-#{client}client.a"
|
93
|
+
ENV['BEAKER_HOSTS'] ||= (client =~ /win|osx/) ? master_agent_config : monolithic_config
|
94
|
+
end
|
95
|
+
end
|
96
|
+
|
97
|
+
end
|
98
|
+
end
|
99
|
+
|