qb 0.3.18 → 0.3.19

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. checksums.yaml +4 -4
  2. data/lib/qb/cli.rb +62 -2
  3. data/lib/qb/cli/list.rb +14 -1
  4. data/lib/qb/role.rb +26 -0
  5. data/lib/qb/version.rb +1 -1
  6. data/roles/{qb.git_submodule_update → qb/git/submodule/update}/.qb-options.yml +0 -0
  7. data/roles/{qb.git_submodule_update → qb/git/submodule/update}/README.md +0 -0
  8. data/roles/{qb.git_submodule_update → qb/git/submodule/update}/defaults/main.yml +1 -1
  9. data/roles/{qb.git_submodule_update → qb/git/submodule/update}/library/git_submodule_update +0 -0
  10. data/roles/{qb.git_submodule_update → qb/git/submodule/update}/meta/main.yml +1 -1
  11. data/roles/{qb.git_submodule_update → qb/git/submodule/update}/meta/qb.yml +3 -3
  12. data/roles/{qb.git_submodule_update → qb/git/submodule/update}/tasks/main.yml +1 -1
  13. data/roles/{qb.install → qb/install}/defaults/main.yml +1 -1
  14. data/roles/{qb.install → qb/install}/meta/main.yml +1 -1
  15. data/roles/{qb.install → qb/install}/meta/qb.yml +1 -1
  16. data/roles/{qb.install → qb/install}/tasks/edit.yml +0 -0
  17. data/roles/{qb.install → qb/install}/tasks/git.yml +0 -0
  18. data/roles/{qb.install → qb/install}/tasks/link.yml +0 -0
  19. data/roles/{qb.install → qb/install}/tasks/main.yml +1 -1
  20. data/roles/qb/json/read/defaults/main.yml +9 -0
  21. data/roles/{qb.read_json → qb/json/read}/meta/main.yml +1 -1
  22. data/roles/{qb.read_json → qb/json/read}/meta/qb.yml +15 -8
  23. data/roles/qb/json/read/tasks/main.yml +29 -0
  24. data/roles/{qb.hack_npm → qb/nodejs/npm/hack}/README.md +1 -1
  25. data/roles/{qb.hack_npm → qb/nodejs/npm/hack}/meta/main.yml +3 -3
  26. data/roles/{qb.hack_npm → qb/nodejs/npm/hack}/meta/qb.yml +4 -4
  27. data/roles/{qb.hack_npm → qb/nodejs/npm/hack}/tasks/create.yml +0 -0
  28. data/roles/{qb.hack_npm → qb/nodejs/npm/hack}/tasks/main.yml +2 -2
  29. data/roles/{qb.hack_npm → qb/nodejs/npm/hack}/vars/main.yml +1 -1
  30. data/roles/{qb.npm_package → qb/nodejs/npm/init}/defaults/main.yml +1 -1
  31. data/roles/{qb.npm_package → qb/nodejs/npm/init}/meta/main.yml +1 -1
  32. data/roles/{qb.npm_package → qb/nodejs/npm/init}/meta/qb.yml +3 -3
  33. data/roles/{qb.npm_package → qb/nodejs/npm/init}/tasks/main.yml +1 -1
  34. data/roles/{qb.yarn_release → qb/nodejs/yarn/release}/defaults/main.yml +1 -1
  35. data/roles/{qb.yarn_release → qb/nodejs/yarn/release}/meta/main.yml +1 -1
  36. data/roles/{qb.yarn_release → qb/nodejs/yarn/release}/meta/qb.yml +3 -3
  37. data/roles/{qb.yarn_release → qb/nodejs/yarn/release}/tasks/main.yml +1 -1
  38. data/roles/qb/{yarn → nodejs/yarn}/setup/README.md +0 -0
  39. data/roles/qb/{yarn → nodejs/yarn}/setup/defaults/main.yml +0 -0
  40. data/roles/qb/{yarn → nodejs/yarn}/setup/meta/main.yml +0 -0
  41. data/roles/qb/{yarn → nodejs/yarn}/setup/meta/qb.yml +0 -0
  42. data/roles/qb/{yarn → nodejs/yarn}/setup/tasks/distribution/MacOSX/brew_create.yml +0 -0
  43. data/roles/qb/{yarn → nodejs/yarn}/setup/tasks/distribution/MacOSX/main.yml +0 -0
  44. data/roles/qb/{yarn → nodejs/yarn}/setup/tasks/main.yml +0 -0
  45. data/roles/qb/{yarn → nodejs/yarn}/setup/templates/yarn@M.m.p.rb.j2 +0 -0
  46. data/roles/qb/pkg/bump/tasks/frontend/main.yml +7 -6
  47. data/roles/{qb.unhack_gem → qb/ruby/gem/unhack}/README.md +1 -1
  48. data/roles/qb/ruby/gem/unhack/defaults/main.yml +2 -0
  49. data/roles/{qb.unhack_gem → qb/ruby/gem/unhack}/meta/main.yml +1 -1
  50. data/roles/{qb.unhack_gem → qb/ruby/gem/unhack}/meta/qb.yml +3 -3
  51. data/roles/{qb.unhack_gem → qb/ruby/gem/unhack}/tasks/main.yml +1 -1
  52. data/roles/{qb.qb_setup → qb/setup}/meta/main.yml +1 -1
  53. data/roles/{qb.qb_setup → qb/setup}/meta/qb.yml +1 -1
  54. data/roles/{qb.qb_setup → qb/setup}/tasks/main.yml +1 -1
  55. data/roles/{qb.qb_setup → qb/setup}/tasks/packages.yml +0 -0
  56. data/roles/{qb.qb_setup → qb/setup}/tasks/packages/pip.yml +0 -0
  57. metadata +51 -55
  58. data/roles/qb.package_json_info/defaults/main.yml +0 -5
  59. data/roles/qb.package_json_info/meta/main.yml +0 -9
  60. data/roles/qb.package_json_info/meta/qb.yml +0 -60
  61. data/roles/qb.package_json_info/tasks/main.yml +0 -18
  62. data/roles/qb.read_json/defaults/main.yml +0 -5
  63. data/roles/qb.read_json/tasks/main.yml +0 -23
  64. data/roles/qb.unhack_gem/defaults/main.yml +0 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 36d941451916fb21a0e92a4c73520240b12a7b4a
4
- data.tar.gz: 6e11fb934d559165fe98096924e3afe27c80b684
3
+ metadata.gz: 826c3553e9e69c10b5f413f9d72a3dd24467886a
4
+ data.tar.gz: 147cb053b57b0190f6874de992bc8eec0f5b1dec
5
5
  SHA512:
6
- metadata.gz: b43a422d14c11a56580fa543f3fa6679ee0c3187d7379b6bfe942fc6c3d194baa74a8da76dd8f6a4fe74acbbe8633f4129c2173e23ed59c7c383566e1ef59bec
7
- data.tar.gz: 657b3bd019e0cc539a21dc072d5a6d498a68a1e4b73af6e70ce517299d5445512d78de6316942f31ed46c0905c08af51d9658aa1400a7c1f1d68d37244f5cb7f
6
+ metadata.gz: 2f66deb75554195bb7949d44c9bbe08ec9103cb40cdaf383d9a5aefe99e449a80d58fee7b6ca8471ba53f934b1da16db4d30d7576a195b14000873618a381c27
7
+ data.tar.gz: 11d2976e88461d1c61cfe6036078e3e077bba0825118d3726c92197dcec58eeb0dad0ce4e8887c801812fb57b891f1dbf954cf2aa6caa1c1277a701063a78d5d
@@ -33,8 +33,6 @@ module QB; end
33
33
 
34
34
  module QB::CLI
35
35
 
36
- include SemanticLogger::Loggable
37
-
38
36
 
39
37
  # Constants
40
38
  # ============================================================================
@@ -46,6 +44,23 @@ module QB::CLI
46
44
  DEBUG_ARGS = ['-D', '--DEBUG'].freeze
47
45
 
48
46
 
47
+ # Default terminal line width to use if we can't figure it out dynamically.
48
+ #
49
+ # @return [Fixnum]
50
+ #
51
+ DEFAULT_TERMINAL_WIDTH = 80
52
+
53
+
54
+ # Mixins
55
+ # ============================================================================
56
+
57
+ # Add {.logger} and {#logger} methods
58
+ include SemanticLogger::Loggable
59
+
60
+
61
+ # Module (Static) Methods
62
+ # ============================================================================
63
+
49
64
  def self.set_debug! args
50
65
  if DEBUG_ARGS.any? {|arg| args.include? arg}
51
66
  QB::Util::Logging.setup level: :debug
@@ -142,4 +157,49 @@ module QB::CLI
142
157
  }
143
158
  end # .ask_for_options
144
159
 
160
+
161
+ # Lifted from Thor
162
+ # ----------------------------------------------------------------------------
163
+ #
164
+ # Who I guess took it from Rake..?
165
+ #
166
+ # I think I'll move QB to Atli at some point but I wanted these now.
167
+ #
168
+
169
+ # This code was copied from Rake, available under MIT-LICENSE
170
+ # Copyright (c) 2003, 2004 Jim Weirich
171
+ def self.terminal_width
172
+ result = if ENV["QB_COLUMNS"]
173
+ ENV["QB_COLUMNS"].to_i
174
+ else
175
+ unix? ? dynamic_width : DEFAULT_TERMINAL_WIDTH
176
+ end
177
+ result < 10 ? DEFAULT_TERMINAL_WIDTH : result
178
+ rescue
179
+ DEFAULT_TERMINAL_WIDTH
180
+ end
181
+
182
+
183
+ # Calculate the dynamic width of the terminal
184
+ def self.dynamic_width
185
+ @dynamic_width ||= (dynamic_width_stty.nonzero? || dynamic_width_tput)
186
+ end
187
+
188
+
189
+ def self.dynamic_width_stty
190
+ `stty size 2>/dev/null`.split[1].to_i
191
+ end
192
+
193
+
194
+ def self.dynamic_width_tput
195
+ `tput cols 2>/dev/null`.to_i
196
+ end
197
+
198
+
199
+ def self.unix?
200
+ RUBY_PLATFORM =~ \
201
+ /(aix|darwin|linux|(net|free|open)bsd|cygwin|solaris|irix|hpux)/i
202
+ end
203
+
204
+
145
205
  end # module QB::CLI
@@ -1,3 +1,9 @@
1
+ # Refinements
2
+ # =======================================================================
3
+
4
+ using NRSER
5
+
6
+
1
7
  # Definitions
2
8
  # =======================================================================
3
9
 
@@ -32,7 +38,14 @@ module QB::CLI
32
38
  QB::Role.available
33
39
  end
34
40
 
35
- puts roles
41
+ name_col_width = roles.map { |r| r.display_name.length }.max + 2
42
+
43
+ roles.each { |role|
44
+ summary = role.summary.truncate QB::CLI.terminal_width - name_col_width
45
+
46
+ puts ("%-#{ name_col_width }s" % role.display_name) + summary
47
+ }
48
+
36
49
  puts
37
50
 
38
51
  return 0
@@ -548,6 +548,32 @@ class QB::Role
548
548
  end # #check_requirements
549
549
 
550
550
 
551
+ # @return [String]
552
+ # The `description` value from the role's QB metadata, or '' if it doesn't
553
+ # have one
554
+ def description
555
+ meta['description'].to_s
556
+ end
557
+
558
+
559
+ # Short summary pulled from the role description - first line if it's
560
+ # multi-line, or first sentence if it's a single line.
561
+ #
562
+ # Will be an empty string if the role doesn't have a description.
563
+ #
564
+ # @return [String]
565
+ #
566
+ def summary
567
+ description.lines.first.thru { |line|
568
+ if line
569
+ line.split( '. ', 2 ).first
570
+ else
571
+ ''
572
+ end
573
+ }
574
+ end
575
+
576
+
551
577
  # Language Inter-Op
552
578
  # -----------------------------------------------------------------------
553
579
 
@@ -4,7 +4,7 @@ module QB
4
4
 
5
5
  GEM_NAME = 'qb'
6
6
 
7
- VERSION = "0.3.18"
7
+ VERSION = "0.3.19"
8
8
 
9
9
  MIN_ANSIBLE_VERSION = Gem::Version.new '2.1.2'
10
10
 
@@ -1,3 +1,3 @@
1
1
  ---
2
- # defaults file for qb.git_submodule_update
2
+ # defaults file for qb/git/submodule/update
3
3
  git_submodule_update_dir: "{{ qb_dir }}"
@@ -1,5 +1,5 @@
1
1
  ---
2
- # meta file for qb.git_submodule_update
2
+ # meta file for qb/git/submodule/update
3
3
 
4
4
  allow_duplicates: yes
5
5
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- # meta/qb.yml file for qb.git_submodule_update
2
+ # meta/qb.yml file for qb/git/submodule/update
3
3
  #
4
4
  # qb settings for this role. see README.md for more info.
5
5
  #
@@ -8,7 +8,7 @@
8
8
  description: null
9
9
 
10
10
  # prefix for role variables
11
- var_prefix: null
11
+ var_prefix: git_submodule_update
12
12
 
13
13
  # how to get a default for `dir` if it's not provided as the only
14
14
  # positional argument. if a positional argument is provided it will
@@ -25,7 +25,7 @@ var_prefix: null
25
25
  # - cwd
26
26
  # - use the directory the `qb` command is invoked form.
27
27
  # - {exe: PATH}
28
- # - invoke an execuable, passing a JSON serialization of the options
28
+ # - invoke an execuable, passing a JSON serialization of the options
29
29
  # mapping their CLI names to values. path can be relative to role
30
30
  # directory.
31
31
  default_dir: git_root
@@ -1,5 +1,5 @@
1
1
  ---
2
- # tasks file for qb.git_submodule_update
2
+ # tasks file for qb/git/submodule/update
3
3
 
4
4
  - name: update submodules
5
5
  command: git submodule update --init
@@ -1,5 +1,5 @@
1
1
  ---
2
- # defaults file for qb.install
2
+ # defaults file for qb/install
3
3
 
4
4
  install_path: >-
5
5
  {{ qb_user_roles_dir }}
@@ -1,5 +1,5 @@
1
1
  ---
2
- # meta file for qb.install
2
+ # meta file for qb/install
3
3
 
4
4
  allow_duplicates: yes
5
5
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- # meta/qb.yml file for qb.install
2
+ # meta/qb.yml file for qb/install
3
3
  #
4
4
  # qb settings for this role. see README.md for more info.
5
5
  #
@@ -1,5 +1,5 @@
1
1
  ---
2
- # tasks file for qb.install
2
+ # tasks file for qb/install
3
3
 
4
4
  - include: git.yml
5
5
  when: not install_link
@@ -0,0 +1,9 @@
1
+ ---
2
+ # defaults file for qb/json/read
3
+
4
+ # Don't write parsed object to a var by default
5
+ json_var: null
6
+
7
+ # Default to dump the parsed value if `QB_DEBUG` env var exists
8
+ json_dump: >-
9
+ {{ ansible_env.QB_DEBUG is defined }}
@@ -1,5 +1,5 @@
1
1
  ---
2
- # meta file for qb.read_json
2
+ # meta file for qb/json/read
3
3
 
4
4
  allow_duplicates: yes
5
5
 
@@ -1,16 +1,23 @@
1
1
  ---
2
- # meta/qb.yml file for qb.read_json
2
+ # meta/qb.yml file for qb/json/read
3
3
  #
4
4
  # qb settings for this role. see README.md for more info.
5
5
  #
6
6
 
7
7
  # description of the role to show in it's help output.
8
- description: >
9
- read a json file into a variable. yeah. 'cause you need to do it as a role
10
- sometimes.
8
+ description: |
9
+ Read and parse a JSON file into a variable.
10
+
11
+ Yeah. 'Cause you need to do it as a role sometimes. Though it's not being
12
+ used right now as far as I can tell.
13
+
14
+ Does read from the *target* host using Ansible's `slurp` module, so that's
15
+ something I guess.
16
+
17
+ Not sure if to keep this thing around but whatever for the moment.
11
18
 
12
19
  # prefix for role variables
13
- var_prefix: null
20
+ var_prefix: json
14
21
 
15
22
  # how to get a default for `dir` if it's not provided as the only
16
23
  # positional argument. if a positional argument is provided it will
@@ -29,11 +36,11 @@ var_prefix: null
29
36
  # - cwd
30
37
  # - use the directory the `qb` command is invoked form.
31
38
  # - {exe: PATH}
32
- # - invoke an execuable, passing a JSON serialization of the options
39
+ # - invoke an execuable, passing a JSON serialization of the options
33
40
  # mapping their CLI names to values. path can be relative to role
34
41
  # directory.
35
42
  # - {find_up: FILENAME}
36
- # - starting at the current direcotry and climbing up to parent
43
+ # - starting at the current direcotry and climbing up to parent
37
44
  # directories, use the first one that contains FILENAME. error
38
45
  # if none is found.
39
46
  default_dir: false
@@ -67,4 +74,4 @@ options: # []
67
74
  required: false
68
75
  type: boolean
69
76
  short: d
70
-
77
+
@@ -0,0 +1,29 @@
1
+ ---
2
+ # tasks file for qb/json/read
3
+ - name: read file
4
+ slurp:
5
+ src: >-
6
+ {{ json_src }}
7
+ register: json_slurp
8
+
9
+ - name: parse json
10
+ set_fact:
11
+ json_value: >-
12
+ {{ json_slurp.content | b64decode }}
13
+
14
+ - when: json_var != None
15
+ name: >-
16
+ Set var `{{ json_var }}` to JSON value
17
+ set_fact:
18
+ "{{ json_var }}": "{{ json_value }}"
19
+
20
+ - when: json_dump
21
+ name: >-
22
+ Print debug output
23
+ debug:
24
+ msg:
25
+ name: >-
26
+ {{ json_var }}
27
+ value: >-
28
+ {{ json_value }}
29
+
@@ -1,4 +1,4 @@
1
- # qb.hack_npm
1
+ # qb/nodejs/npm/hack
2
2
  # ===========
3
3
 
4
4
  hack on an npm module by adding it as a submodule in `dev/packages` and `npm link` it, adding that step to `dev/setup.yml` as well.
@@ -1,12 +1,12 @@
1
1
  ---
2
- # meta file for qb.hack_npm
2
+ # meta file for qb/nodejs/npm/hack
3
3
 
4
- allow_duplicates: yes
4
+ allow_duplicates: no
5
5
 
6
6
  dependencies:
7
7
  - role: nrser.state_mate
8
8
 
9
9
  - role: nrser.rb
10
10
 
11
- - role: qb.npm_package
11
+ - role: qb/nodejs/npm/init
12
12
  when: hack_npm_create
@@ -1,13 +1,13 @@
1
1
  ---
2
- # meta/qb.yml file for qb.hack_npm
2
+ # meta/qb.yml file for qb/nodejs/npm/hack
3
3
  #
4
4
  # qb settings for this role. see README.md for more info.
5
5
  #
6
6
 
7
7
  # prefix for role variables
8
- var_prefix: null
8
+ var_prefix: hack_npm
9
9
 
10
- # how to get a default for `dir` if it's not provided as the
10
+ # how to get a default for `dir` if it's not provided as the
11
11
  default_dir: null
12
12
 
13
13
  # set to false to not save options in .qb-options.yml files
@@ -34,5 +34,5 @@ options:
34
34
  description: create a new npm package to hack
35
35
  short: c
36
36
 
37
- - include: qb.npm_package
37
+ - include: qb/nodejs/npm/init
38
38
  as: package
@@ -1,5 +1,5 @@
1
1
  ---
2
- # tasks file for qb.hack_npm
2
+ # tasks file for qb/nodejs/npm/hack
3
3
 
4
4
  # - set_fact:
5
5
  # hack_npm_rel_dir: "{{ qb_dir | relpath(qb_cwd) }}"
@@ -79,4 +79,4 @@
79
79
  # args:
80
80
  # chdir: "{{ '{{ dev_setup_project_root }}' }}"
81
81
  # create: true
82
-
82
+
@@ -1,5 +1,5 @@
1
1
  ---
2
- # vars file for qb.hack_npm
2
+ # vars file for qb/nodejs/npm/hack
3
3
  hack_npm_name: "{{ qb_dir | basename }}"
4
4
  hack_npm_owner: "{{ git_user_name }}"
5
5
  hack_npm_create: false
@@ -1,5 +1,5 @@
1
1
  ---
2
- # defaults file for qb.npm_package
2
+ # defaults file for qb/nodejs/npm/init
3
3
  npm_package_force: false
4
4
 
5
5
  # package.json stuff
@@ -1,5 +1,5 @@
1
1
  ---
2
- # meta file for qb.npm_package
2
+ # meta file for qb/nodejs/npm/init
3
3
 
4
4
  allow_duplicates: yes
5
5
 
@@ -1,13 +1,13 @@
1
1
  ---
2
- # meta/qb.yml file for qb.npm_package
2
+ # meta/qb.yml file for qb/nodejs/npm/init
3
3
  #
4
4
  # qb settings for this role. see README.md for more info.
5
5
  #
6
6
 
7
7
  # prefix for role variables
8
- var_prefix: null
8
+ var_prefix: npm_package
9
9
 
10
- # how to get a default for `dir` if it's not provided as the
10
+ # how to get a default for `dir` if it's not provided as the
11
11
  default_dir: null
12
12
 
13
13
  # set to false to not save options in .qb-options.yml files
@@ -1,5 +1,5 @@
1
1
  ---
2
- # tasks file for qb.npm_package_module
2
+ # tasks file for qb/nodejs/npm/init_module
3
3
 
4
4
  - name: set npm_package_json_path
5
5
  set_fact:
@@ -1,4 +1,4 @@
1
1
  ---
2
- # defaults file for qb.yarn_release
2
+ # defaults file for qb/nodejs/yarn/release
3
3
  yarn_release_level: patch
4
4
  yarn_release_package_dir: "{{ qb_dir }}"
@@ -1,5 +1,5 @@
1
1
  ---
2
- # meta file for qb.yarn_release
2
+ # meta file for qb/nodejs/yarn/release
3
3
 
4
4
  allow_duplicates: yes
5
5
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- # meta/qb.yml file for qb.yarn_release
2
+ # meta/qb.yml file for qb/nodejs/yarn/release
3
3
  #
4
4
  # qb settings for this role. see README.md for more info.
5
5
  #
@@ -8,7 +8,7 @@
8
8
  description: null
9
9
 
10
10
  # prefix for role variables
11
- var_prefix: null
11
+ var_prefix: yarn_release
12
12
 
13
13
  # how to get a default for `dir` if it's not provided as the only
14
14
  # positional argument. if a positional argument is provided it will
@@ -27,7 +27,7 @@ var_prefix: null
27
27
  # - cwd
28
28
  # - use the directory the `qb` command is invoked form.
29
29
  # - {exe: PATH}
30
- # - invoke an execuable, passing a JSON serialization of the options
30
+ # - invoke an execuable, passing a JSON serialization of the options
31
31
  # mapping their CLI names to values. path can be relative to role
32
32
  # directory.
33
33
  default_dir: null
@@ -1,5 +1,5 @@
1
1
  ---
2
- # tasks file for qb.yarn_release
2
+ # tasks file for qb/nodejs/yarn/release
3
3
 
4
4
  - name: load package.json
5
5
  include_vars:
@@ -7,12 +7,13 @@
7
7
  set_fact:
8
8
  bump_frontend_dir: "{{ bump_repo_root }}/frontend"
9
9
 
10
- - name: get frontend/package.json info
11
- include_role:
12
- name: qb.package_json_info
13
- vars:
14
- package_json_info_dir: "{{ bump_frontend_dir }}"
15
- package_json_info_var: bump_frontend_package_json
10
+ # Deleted role, use path_facts
11
+ # - name: get frontend/package.json info
12
+ # include_role:
13
+ # name: qb.package_json_info
14
+ # vars:
15
+ # package_json_info_dir: "{{ bump_frontend_dir }}"
16
+ # package_json_info_var: bump_frontend_package_json
16
17
 
17
18
  - name: >
18
19
  set frontend_version to the semver object
@@ -1,4 +1,4 @@
1
- qb.unhack_gem role
1
+ qb/ruby/gem/unhack role
2
2
  ==================
3
3
 
4
4
  remove a gem submodule that was added with `qb hack_gem` (or otherwise) to hack on locally along side the main project, reverting to using the published version.
@@ -0,0 +1,2 @@
1
+ ---
2
+ # defaults file for qb/ruby/gem/unhack
@@ -1,5 +1,5 @@
1
1
  ---
2
- # meta file for qb.unhack_gem
2
+ # meta file for qb/ruby/gem/unhack
3
3
 
4
4
  allow_duplicates: yes
5
5
 
@@ -1,13 +1,13 @@
1
1
  ---
2
- # meta/qb.yml file for qb.unhack_gem
2
+ # meta/qb.yml file for qb/ruby/gem/unhack
3
3
  #
4
4
  # qb settings for this role. see README.md for more info.
5
5
  #
6
6
 
7
7
  # prefix for role variables
8
- var_prefix: null
8
+ var_prefix: unhack_gem
9
9
 
10
- # how to get a default for `dir` if it's not provided as the
10
+ # how to get a default for `dir` if it's not provided as the
11
11
  default_dir: null
12
12
 
13
13
  # set to false to not save options in .qb-options.yml files
@@ -1,5 +1,5 @@
1
1
  ---
2
- # tasks file for qb.unhack_gem
2
+ # tasks file for qb/ruby/gem/unhack
3
3
 
4
4
  - set_fact:
5
5
  unhack_gem_rel_path: "./{{ qb_dir | relpath(qb_cwd) }}"
@@ -1,5 +1,5 @@
1
1
  ---
2
- # meta file for qb.qb_setup
2
+ # meta file for qb/setup
3
3
 
4
4
  allow_duplicates: yes
5
5
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- # meta/qb.yml file for qb.qb_setup
2
+ # meta/qb.yml file for qb/setup
3
3
  #
4
4
  # qb settings for this role. see README.md for more info.
5
5
  #
@@ -1,5 +1,5 @@
1
1
  ---
2
- # tasks file for qb.qb_setup
2
+ # tasks file for qb/setup
3
3
 
4
4
  - name: Install packages.
5
5
  include: >-
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.18
4
+ version: 0.3.19
5
5
  platform: ruby
6
6
  authors:
7
7
  - nrser
@@ -372,52 +372,6 @@ files:
372
372
  - roles/nrser.state_mate/test/ansible/ansible.cfg
373
373
  - roles/nrser.state_mate/test/ansible/hosts
374
374
  - roles/nrser.state_mate/test/ansible/template.yml
375
- - roles/qb.git_submodule_update/.qb-options.yml
376
- - roles/qb.git_submodule_update/README.md
377
- - roles/qb.git_submodule_update/defaults/main.yml
378
- - roles/qb.git_submodule_update/library/git_submodule_update
379
- - roles/qb.git_submodule_update/meta/main.yml
380
- - roles/qb.git_submodule_update/meta/qb.yml
381
- - roles/qb.git_submodule_update/tasks/main.yml
382
- - roles/qb.hack_npm/README.md
383
- - roles/qb.hack_npm/meta/main.yml
384
- - roles/qb.hack_npm/meta/qb.yml
385
- - roles/qb.hack_npm/tasks/create.yml
386
- - roles/qb.hack_npm/tasks/main.yml
387
- - roles/qb.hack_npm/vars/main.yml
388
- - roles/qb.install/defaults/main.yml
389
- - roles/qb.install/meta/main.yml
390
- - roles/qb.install/meta/qb.yml
391
- - roles/qb.install/tasks/edit.yml
392
- - roles/qb.install/tasks/git.yml
393
- - roles/qb.install/tasks/link.yml
394
- - roles/qb.install/tasks/main.yml
395
- - roles/qb.npm_package/defaults/main.yml
396
- - roles/qb.npm_package/meta/main.yml
397
- - roles/qb.npm_package/meta/qb.yml
398
- - roles/qb.npm_package/tasks/main.yml
399
- - roles/qb.package_json_info/defaults/main.yml
400
- - roles/qb.package_json_info/meta/main.yml
401
- - roles/qb.package_json_info/meta/qb.yml
402
- - roles/qb.package_json_info/tasks/main.yml
403
- - roles/qb.qb_setup/meta/main.yml
404
- - roles/qb.qb_setup/meta/qb.yml
405
- - roles/qb.qb_setup/tasks/main.yml
406
- - roles/qb.qb_setup/tasks/packages.yml
407
- - roles/qb.qb_setup/tasks/packages/pip.yml
408
- - roles/qb.read_json/defaults/main.yml
409
- - roles/qb.read_json/meta/main.yml
410
- - roles/qb.read_json/meta/qb.yml
411
- - roles/qb.read_json/tasks/main.yml
412
- - roles/qb.unhack_gem/README.md
413
- - roles/qb.unhack_gem/defaults/main.yml
414
- - roles/qb.unhack_gem/meta/main.yml
415
- - roles/qb.unhack_gem/meta/qb.yml
416
- - roles/qb.unhack_gem/tasks/main.yml
417
- - roles/qb.yarn_release/defaults/main.yml
418
- - roles/qb.yarn_release/meta/main.yml
419
- - roles/qb.yarn_release/meta/qb.yml
420
- - roles/qb.yarn_release/tasks/main.yml
421
375
  - roles/qb/call/defaults/main.yml
422
376
  - roles/qb/call/meta/main.yml
423
377
  - roles/qb/call/meta/qb.yml
@@ -639,10 +593,50 @@ files:
639
593
  - roles/qb/git/repo/meta/main.yml
640
594
  - roles/qb/git/repo/meta/qb.yml
641
595
  - roles/qb/git/repo/tasks/main.yml
596
+ - roles/qb/git/submodule/update/.qb-options.yml
597
+ - roles/qb/git/submodule/update/README.md
598
+ - roles/qb/git/submodule/update/defaults/main.yml
599
+ - roles/qb/git/submodule/update/library/git_submodule_update
600
+ - roles/qb/git/submodule/update/meta/main.yml
601
+ - roles/qb/git/submodule/update/meta/qb.yml
602
+ - roles/qb/git/submodule/update/tasks/main.yml
642
603
  - roles/qb/github/pages/setup/defaults/main.yml
643
604
  - roles/qb/github/pages/setup/meta/main.yml
644
605
  - roles/qb/github/pages/setup/meta/qb.yml
645
606
  - roles/qb/github/pages/setup/tasks/main.yml
607
+ - roles/qb/install/defaults/main.yml
608
+ - roles/qb/install/meta/main.yml
609
+ - roles/qb/install/meta/qb.yml
610
+ - roles/qb/install/tasks/edit.yml
611
+ - roles/qb/install/tasks/git.yml
612
+ - roles/qb/install/tasks/link.yml
613
+ - roles/qb/install/tasks/main.yml
614
+ - roles/qb/json/read/defaults/main.yml
615
+ - roles/qb/json/read/meta/main.yml
616
+ - roles/qb/json/read/meta/qb.yml
617
+ - roles/qb/json/read/tasks/main.yml
618
+ - roles/qb/nodejs/npm/hack/README.md
619
+ - roles/qb/nodejs/npm/hack/meta/main.yml
620
+ - roles/qb/nodejs/npm/hack/meta/qb.yml
621
+ - roles/qb/nodejs/npm/hack/tasks/create.yml
622
+ - roles/qb/nodejs/npm/hack/tasks/main.yml
623
+ - roles/qb/nodejs/npm/hack/vars/main.yml
624
+ - roles/qb/nodejs/npm/init/defaults/main.yml
625
+ - roles/qb/nodejs/npm/init/meta/main.yml
626
+ - roles/qb/nodejs/npm/init/meta/qb.yml
627
+ - roles/qb/nodejs/npm/init/tasks/main.yml
628
+ - roles/qb/nodejs/yarn/release/defaults/main.yml
629
+ - roles/qb/nodejs/yarn/release/meta/main.yml
630
+ - roles/qb/nodejs/yarn/release/meta/qb.yml
631
+ - roles/qb/nodejs/yarn/release/tasks/main.yml
632
+ - roles/qb/nodejs/yarn/setup/README.md
633
+ - roles/qb/nodejs/yarn/setup/defaults/main.yml
634
+ - roles/qb/nodejs/yarn/setup/meta/main.yml
635
+ - roles/qb/nodejs/yarn/setup/meta/qb.yml
636
+ - roles/qb/nodejs/yarn/setup/tasks/distribution/MacOSX/brew_create.yml
637
+ - roles/qb/nodejs/yarn/setup/tasks/distribution/MacOSX/main.yml
638
+ - roles/qb/nodejs/yarn/setup/tasks/main.yml
639
+ - roles/qb/nodejs/yarn/setup/templates/yarn@M.m.p.rb.j2
646
640
  - roles/qb/osx/git/change_case/README.md
647
641
  - roles/qb/osx/git/change_case/defaults/main.yml
648
642
  - roles/qb/osx/git/change_case/meta/main.yml
@@ -755,6 +749,11 @@ files:
755
749
  - roles/qb/ruby/gem/release/meta/qb.yml
756
750
  - roles/qb/ruby/gem/release/tasks/main.yml
757
751
  - roles/qb/ruby/gem/release/tasks/release.yml
752
+ - roles/qb/ruby/gem/unhack/README.md
753
+ - roles/qb/ruby/gem/unhack/defaults/main.yml
754
+ - roles/qb/ruby/gem/unhack/meta/main.yml
755
+ - roles/qb/ruby/gem/unhack/meta/qb.yml
756
+ - roles/qb/ruby/gem/unhack/tasks/main.yml
758
757
  - roles/qb/ruby/rspec/setup/defaults/main.yml
759
758
  - roles/qb/ruby/rspec/setup/meta/main.yml
760
759
  - roles/qb/ruby/rspec/setup/meta/qb.yml
@@ -777,14 +776,11 @@ files:
777
776
  - roles/qb/ruby/yard/setup/tasks/main.yml
778
777
  - roles/qb/ruby/yard/setup/tasks/versions/v0.9.yml
779
778
  - roles/qb/ruby/yard/setup/tasks/yardopts.yml
780
- - roles/qb/yarn/setup/README.md
781
- - roles/qb/yarn/setup/defaults/main.yml
782
- - roles/qb/yarn/setup/meta/main.yml
783
- - roles/qb/yarn/setup/meta/qb.yml
784
- - roles/qb/yarn/setup/tasks/distribution/MacOSX/brew_create.yml
785
- - roles/qb/yarn/setup/tasks/distribution/MacOSX/main.yml
786
- - roles/qb/yarn/setup/tasks/main.yml
787
- - roles/qb/yarn/setup/templates/yarn@M.m.p.rb.j2
779
+ - roles/qb/setup/meta/main.yml
780
+ - roles/qb/setup/meta/qb.yml
781
+ - roles/qb/setup/tasks/main.yml
782
+ - roles/qb/setup/tasks/packages.yml
783
+ - roles/qb/setup/tasks/packages/pip.yml
788
784
  homepage: https://github.com/nrser/qb
789
785
  licenses:
790
786
  - MIT
@@ -1,5 +0,0 @@
1
- ---
2
- # defaults file for qb.package_json_info
3
- package_json_info_dir: "{{ qb_dir }}"
4
- package_json_info_var: null
5
- package_json_info_dump: "{{ ansible_env.QB_DEBUG is defined }}"
@@ -1,9 +0,0 @@
1
- ---
2
- # meta file for qb.package_json_info
3
-
4
- allow_duplicates: yes
5
-
6
- dependencies: # []
7
- - role: qb.read_json
8
- read_json_src: "{{ package_json_info_dir }}/package.json"
9
- read_json_dump: "{{ package_json_info_dump }}"
@@ -1,60 +0,0 @@
1
- ---
2
- # meta/qb.yml file for qb.package_json_info
3
- #
4
- # qb settings for this role. see README.md for more info.
5
- #
6
-
7
- # description of the role to show in it's help output.
8
- description: load package.json into a variable.
9
-
10
- # prefix for role variables
11
- var_prefix: null
12
-
13
- # how to get a default for `dir` if it's not provided as the only
14
- # positional argument. if a positional argument is provided it will
15
- # override the method defined here.
16
- #
17
- # options:
18
- #
19
- # - null
20
- # - require the value on the command line.
21
- # - false
22
- # - don't provide qb_dir (means doesn't load or save options either).
23
- # - git_root
24
- # - use the git root fof the directory that the `qb` command is invoked
25
- # from. useful for 'project-centric' commands so they can be invoked
26
- # from anywhere in the repo.
27
- # - cwd
28
- # - use the directory the `qb` command is invoked form.
29
- # - {exe: PATH}
30
- # - invoke an execuable, passing a JSON serialization of the options
31
- # mapping their CLI names to values. path can be relative to role
32
- # directory.
33
- # - {find_up: FILENAME}
34
- # - starting at the current direcotry and climbing up to parent
35
- # directories, use the first one that contains FILENAME. error
36
- # if none is found.
37
- default_dir: null
38
-
39
- # default user to become for play
40
- default_user: null
41
-
42
- # set to false to not save options in .qb-options.yml files
43
- save_options: false
44
-
45
- options: # []
46
- # - name: example
47
- # description: an example of a variable.
48
- # required: false
49
- # type: boolean # boolean (default) | string
50
- # short: e
51
- - name: dir
52
- description: direcotry containing package.json
53
- type: string
54
- short: p
55
-
56
- - name: dump
57
- description: dump value via debug task.
58
- type: boolean
59
- short: d
60
-
@@ -1,18 +0,0 @@
1
- ---
2
- # tasks file for qb.package_json_info
3
-
4
- - name: parse version value
5
- set_fact:
6
- package_json_info_value:
7
- object: "{{ read_json_value }}"
8
- version: "{{ read_json_value.version | semver_parse }}"
9
-
10
- - name: set var
11
- when: package_json_info_var != None
12
- set_fact:
13
- "{{ package_json_info_var }}": "{{ package_json_info_value }}"
14
-
15
- - name: dump debug output
16
- when: package_json_info_dump
17
- debug:
18
- msg: "{{ package_json_info_value }}"
@@ -1,5 +0,0 @@
1
- ---
2
- # defaults file for qb.read_json
3
- read_json_src: "{{ qb_dir }}"
4
- read_json_var: null
5
- read_json_dump: "{{ ansible_env.QB_DEBUG is defined }}"
@@ -1,23 +0,0 @@
1
- ---
2
- # tasks file for qb.read_json
3
- - name: read file
4
- slurp:
5
- src: "{{ read_json_src }}"
6
- register: read_json_slurp
7
-
8
- - name: parse json
9
- set_fact:
10
- read_json_value: "{{ read_json_slurp.content | b64decode }}"
11
-
12
- - name: set var
13
- when: read_json_var != None
14
- set_fact:
15
- "{{ read_json_var }}": "{{ read_json_value }}"
16
-
17
- - name: print debug output
18
- when: read_json_dump
19
- debug:
20
- msg:
21
- name: "{{ read_json_var }}"
22
- value: "{{ read_json_value }}"
23
-
@@ -1,2 +0,0 @@
1
- ---
2
- # defaults file for qb.unhack_gem