ansible-powerplay 0.1.3 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.semver +2 -2
- data/README.org +23 -0
- data/RELEASE_NOTES.org +20 -18
- data/ansible-powerplay.gemspec +3 -3
- data/lib/ansible-powerplay/cli.rb +8 -5
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3ff62bce4702a662d6ead17f9f44f3f668d756e3
|
4
|
+
data.tar.gz: 090eecdd280e81f041e8b4d96517b7e55ec98f67
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e952db302f3a40c9a18c28d5d10f53baea8a2c9a7985a167e797789123f4618b295977dd1798c235757ae01a41484f1f3908dea736ede1621213fa1bcb81e3e9
|
7
|
+
data.tar.gz: 70a601cb59968f21cffd02f35465da587d670a76816d15740777f317745097edb07fcb258f8d328d94f93dfd04620d1472d7f9537c559a72d19f9fbebc37ecfc
|
data/.semver
CHANGED
data/README.org
CHANGED
@@ -164,6 +164,29 @@
|
|
164
164
|
|
165
165
|
Both the :rabbit and :es_cluster books would be executed
|
166
166
|
in parallel.
|
167
|
+
|
168
|
+
*** Dividing up your specs in other PowerPlay files
|
169
|
+
Ruby, the underlying language, give you a lot of
|
170
|
+
things for "free", like allowing you to load other powerplay files,
|
171
|
+
for example:
|
172
|
+
|
173
|
+
#+BEGIN_SRC ruby
|
174
|
+
load 'production.play'
|
175
|
+
#+END_SRC
|
176
|
+
|
177
|
+
We mention this here for those who may not be familiar with Ruby,
|
178
|
+
but may wish to section off your specifications thusly.
|
179
|
+
|
180
|
+
You don't really need to know any Ruby, but it could increase
|
181
|
+
the span of what you might want to do. To get a quick taste,
|
182
|
+
please checkout [[https://www.ruby-lang.org/en/documentation/quickstart/][Ruby in 20 Minutes]].
|
183
|
+
|
184
|
+
It is also possible to leverage Ruby's metaprogramming techniques to
|
185
|
+
create templates for your specificaitons, but at some point, as time
|
186
|
+
allows, I may directly support this in the DSL. Please let your
|
187
|
+
wishes be known to me for this and any other feature you might want to
|
188
|
+
see.
|
189
|
+
|
167
190
|
*** Running Powerplay
|
168
191
|
If you type 'powerplay' without parameters, you are greeted with:
|
169
192
|
#+BEGIN_SRC doc
|
data/RELEASE_NOTES.org
CHANGED
@@ -7,31 +7,33 @@
|
|
7
7
|
major number. Of course, you can read all about it here.
|
8
8
|
|
9
9
|
** Release Notes
|
10
|
-
| Release | Feature / Bug
|
11
|
-
|
12
|
-
| v0.
|
13
|
-
| v0.1.
|
14
|
-
| v0.1.
|
15
|
-
| v0.1.
|
16
|
-
| v0.0
|
17
|
-
|
|
18
|
-
| | --tmux
|
19
|
-
| | --
|
20
|
-
| | --
|
10
|
+
| Release | Feature / Bug | Description | Date |
|
11
|
+
|---------+----------------------------------+--------------------------------------------------------------------------------+------------|
|
12
|
+
| v0.2.0 | powerplay play (behavior change) | If script is not given, now defaults to 'stack.play' in the current directory. | 2016-02-29 |
|
13
|
+
| v0.1.3 | --tmux | Better handling at distributing the panes. | 2016-02-26 |
|
14
|
+
| v0.1.2 | --tmux. --no-tmux | Default output now goes to current tty | 2016-02-23 |
|
15
|
+
| v0.1.1 | --book, --group, --play | Minor bug with the array handling | 2016-02-22 |
|
16
|
+
| v0.1.0 | --book, --group, --play | Now each can take multiple specifications | 2016-02-22 |
|
17
|
+
| v0.0.8 | Creation of these Release Notes | About bloody time. The prior releases were all mostly bug fixes, and so... | 2016-02-20 |
|
18
|
+
| | --tmux | Now you can optionally specify the window number | |
|
19
|
+
| | --tmux | Now checks to ensure it does not dump to its own pane | |
|
20
|
+
| | --book | You can select an individual playbook to run | |
|
21
|
+
| | --group | You can select an individual group to run | |
|
21
22
|
|
22
23
|
** Known Outstanding Issues
|
23
24
|
Bugs and missing features that needs to be addressed. As they are,
|
24
25
|
we'll remove them from this list.
|
25
|
-
|
26
26
|
| Date | Issue | Description |
|
27
27
|
|------------+----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------|
|
28
|
-
| 2016-02-20 | Non tmux output | Redirected to stdout, but really needs to go to the current tty. |
|
29
28
|
| 2016-02-20 | Platforms other than Linux | We need to test on Mac OSX and Windows. Should work fine on Macs. I do not plan to support Windows in general, but may accept pull requests to that end. |
|
30
29
|
|
31
30
|
** Wish List
|
32
31
|
Well, we can always wish upon a star...
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
|
37
|
-
| 2016-02-20 |
|
32
|
+
| Date | Wish | Description |
|
33
|
+
|------------+---------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
34
|
+
| 2016-02-29 | Configuration file | Add a (presumably yaml format) configuration file in a few key locations. |
|
35
|
+
| | Name Completion | Shell integration with name completion features of bash. |
|
36
|
+
| 2016-02-20 | Integration with Jenkins | I have no idea what form this will take |
|
37
|
+
| | Curses integration | Basically, the tmux integration is used because it was quick to do. But what I really want to do is full Curses support, similar with what you see with htop and other tools. |
|
38
|
+
| 2016-02-26 | Better and Error handling | When there's a failure in the underlying Ansible playbook, we want to handle that better in Powerplay. This would be a part of the Curses upgrade to come later. |
|
39
|
+
| | | |
|
data/ansible-powerplay.gemspec
CHANGED
@@ -2,16 +2,16 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Juwelier::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
-
# stub: ansible-powerplay 0.
|
5
|
+
# stub: ansible-powerplay 0.2.0 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "ansible-powerplay"
|
9
|
-
s.version = "0.
|
9
|
+
s.version = "0.2.0"
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
12
|
s.require_paths = ["lib"]
|
13
13
|
s.authors = ["Fred Mitchell"]
|
14
|
-
s.date = "2016-02-
|
14
|
+
s.date = "2016-02-29"
|
15
15
|
s.description = "Ansible Powerplay, by way of its DSL, allows you to\n specify your Ansible playbooks and their vars, and common\n vars to all, so that you can run your\n indeoendent playbooks in full parallel."
|
16
16
|
s.email = "fred.mitchell@gmx.de"
|
17
17
|
s.executables = ["powerplay"]
|
@@ -7,11 +7,14 @@ module Powerplay
|
|
7
7
|
class Main < Thor
|
8
8
|
class_option :verbose, type: :numeric, banner: '[1|2|3]', aliases: '-v', default: 0
|
9
9
|
|
10
|
-
desc 'play
|
10
|
+
desc 'play [script]', 'Run the powerplay script.'
|
11
11
|
long_desc <<-LONGDESC
|
12
|
-
Plays a
|
13
|
-
script, as specified, are run
|
14
|
-
by default.
|
12
|
+
Plays a PowerPlay script. The entries in the
|
13
|
+
script, as specified inside of a group, are run
|
14
|
+
in parallel by default.
|
15
|
+
|
16
|
+
if [script] is not given, it defaults to 'stack.play'
|
17
|
+
in the current directory.
|
15
18
|
LONGDESC
|
16
19
|
option :tmux, type: :numeric, lazy_default: 0, aliases: '-m', banner: "[WINDOWNUMBERopt] Send output to all tmux panes in the current window, or the numeric window specified."
|
17
20
|
option :play, type: :array, aliases: '-p', banner: "[NAME[ NAME2...]|all] Which playbook shelves", required: true
|
@@ -19,7 +22,7 @@ module Powerplay
|
|
19
22
|
option :congroups, type: :boolean, aliases: '-c', banner: "Run the groups themselves concurrently"
|
20
23
|
option :book, type: :array, aliases: '-b', banner: "[NAME[ NAME2...]|all] Which books to execute", default: [:all]
|
21
24
|
option :dryrun, type: :boolean, aliases: '-u', banner: "Dry run, do not actually execute."
|
22
|
-
def play(script)
|
25
|
+
def play(script = 'stack.play')
|
23
26
|
DSL::_global[:options] = options
|
24
27
|
puts "script %s " % [script] if DSL::_global[:options][:verbose] >= 1
|
25
28
|
load script, true
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ansible-powerplay
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Fred Mitchell
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-02-
|
11
|
+
date: 2016-02-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|