---
# meta/qb.yml file for qb/json/read
# 
# qb settings for this role. see README.md for more info.
#

# description of the role to show in it's help output.
description: |
  Read and parse a JSON file into a variable.
  
  Yeah. 'Cause you need to do it as a role sometimes. Though it's not being
  used right now as far as I can tell.
  
  Does read from the *target* host using Ansible's `slurp` module, so that's
  something I guess.
  
  Not sure if to keep this thing around but whatever for the moment.

# prefix for role variables
var_prefix: json

# how to get a default for `dir` if it's not provided as the only
# positional argument. if a positional argument is provided it will
# override the method defined here.
# 
# options:
# 
# -   null
#     -   require the value on the command line.
# -   false
#     -   don't provide qb_dir (means doesn't load or save options either).
# -   git_root
#     -   use the git root fof the directory that the `qb` command is invoked
#         from. useful for 'project-centric' commands so they can be invoked
#         from anywhere in the repo.
# -   cwd
#     -   use the directory the `qb` command is invoked form.
# -   {exe: PATH}
#     -   invoke an execuable, passing a JSON serialization of the options
#         mapping their CLI names to values. path can be relative to role
#         directory.
# -   {find_up: FILENAME}
#     -   starting at the current direcotry and climbing up to parent
#         directories, use the first one that contains FILENAME. error
#         if none is found.
default_dir: false

# default user to become for play
default_user: null

# set to false to not save options in .qb-options.yml files
save_options: false

options: # []
# - name: example
#   description: an example of a variable.
#   required: false
#   type: boolean # boolean (default) | string
#   short: e
- name: src
  description: path to source file.
  required: true
  type: string
  short: s
  
- name: var
  description: variable name to write value into.
  required: false
  type: string
  short: v

- name: dump
  description: dump the value via debug task.
  required: false
  type: boolean
  short: d