qb 0.1.10 → 0.1.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitmodules +12 -0
- data/.qb-options.yml +2 -0
- data/bin/qb +2 -0
- data/{scratch → dev/scratch}/case.rb +0 -0
- data/dev/setup.yml +4 -0
- data/exe/qb +65 -18
- data/lib/qb/version.rb +7 -1
- data/qb.gemspec +26 -1
- data/roles/nrser.blockinfile/CONTRIBUTING.md +19 -0
- data/roles/nrser.blockinfile/README.md +262 -0
- data/roles/nrser.blockinfile/library/blockinfile.py +354 -0
- data/roles/nrser.blockinfile/meta/main.yml +10 -0
- data/roles/nrser.blockinfile/tests/.gitignore +1 -0
- data/roles/nrser.blockinfile/tests/expected/test-basic/create.txt +5 -0
- data/roles/nrser.blockinfile/tests/expected/test-basic/insert.txt +6 -0
- data/roles/nrser.blockinfile/tests/expected/test-basic/marker.txt +5 -0
- data/roles/nrser.blockinfile/tests/expected/test-basic/remove.txt +2 -0
- data/roles/nrser.blockinfile/tests/expected/test-basic/update.txt +6 -0
- data/roles/nrser.blockinfile/tests/expected/test-block/block.txt +4 -0
- data/roles/nrser.blockinfile/tests/expected/test-block/content.txt +4 -0
- data/roles/nrser.blockinfile/tests/expected/test-follow/link0.txt +6 -0
- data/roles/nrser.blockinfile/tests/expected/test-follow/link1.txt +6 -0
- data/roles/nrser.blockinfile/tests/expected/test-follow/link2.txt +1 -0
- data/roles/nrser.blockinfile/tests/expected/test-follow/real0.txt +2 -0
- data/roles/nrser.blockinfile/tests/expected/test-follow/real1.txt +2 -0
- data/roles/nrser.blockinfile/tests/expected/test-follow/real2.txt +6 -0
- data/roles/nrser.blockinfile/tests/expected/test-insertab/insertafter.txt +8 -0
- data/roles/nrser.blockinfile/tests/expected/test-insertab/insertbefore.txt +8 -0
- data/roles/nrser.blockinfile/tests/expected/test-insertab/insertbof.txt +8 -0
- data/roles/nrser.blockinfile/tests/expected/test-insertab/inserteof.txt +8 -0
- data/roles/nrser.blockinfile/tests/expected/test-insertab/insertunmatched.txt +8 -0
- data/roles/nrser.blockinfile/tests/expected/test-insertab/updateafter.txt +8 -0
- data/roles/nrser.blockinfile/tests/expected/test-insertab/updatebefore.txt +8 -0
- data/roles/nrser.blockinfile/tests/expected/test-multiline/insert.txt +11 -0
- data/roles/nrser.blockinfile/tests/expected/test-multiline/remove.txt +2 -0
- data/roles/nrser.blockinfile/tests/expected/test-multiline/update.txt +12 -0
- data/roles/nrser.blockinfile/tests/expected/test-replace/index.html +6 -0
- data/roles/nrser.blockinfile/tests/expected/test-state/insert-present.txt +5 -0
- data/roles/nrser.blockinfile/tests/expected/test-state/insert.txt +5 -0
- data/roles/nrser.blockinfile/tests/expected/test-state/remove-absent.txt +2 -0
- data/roles/nrser.blockinfile/tests/expected/test-state/remove-present.txt +2 -0
- data/roles/nrser.blockinfile/tests/expected/test-state/remove.txt +2 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-basic/insert.txt +2 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-basic/marker.txt +1 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-basic/remove.txt +6 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-basic/update.txt +6 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-block/block.txt +1 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-block/content.txt +1 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-follow/link0.txt +1 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-follow/link1.txt +1 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-follow/link2.txt +1 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-follow/real0.txt +2 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-follow/real1.txt +2 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-follow/real2.txt +2 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-insertab/insertafter.txt +4 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-insertab/insertbefore.txt +4 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-insertab/insertbof.txt +4 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-insertab/inserteof.txt +4 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-insertab/insertunmatched.txt +4 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-insertab/updateafter.txt +8 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-insertab/updatebefore.txt +8 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-multiline/insert.txt +2 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-multiline/remove.txt +11 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-multiline/update.txt +12 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-replace/index.html +1 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-state/insert-present.txt +2 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-state/insert.txt +2 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-state/remove-absent.txt +6 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-state/remove-present.txt +6 -0
- data/roles/nrser.blockinfile/tests/fixtures/test-state/remove.txt +6 -0
- data/roles/nrser.blockinfile/tests/hosts +1 -0
- data/roles/nrser.blockinfile/tests/roles/yaegashi.blockinfile +1 -0
- data/roles/nrser.blockinfile/tests/run.sh +64 -0
- data/roles/nrser.blockinfile/tests/test-basic.yml +31 -0
- data/roles/nrser.blockinfile/tests/test-block.yml +16 -0
- data/roles/nrser.blockinfile/tests/test-follow.yml +21 -0
- data/roles/nrser.blockinfile/tests/test-insertab.yml +34 -0
- data/roles/nrser.blockinfile/tests/test-multiline.yml +51 -0
- data/roles/nrser.blockinfile/tests/test-replace.yml +21 -0
- data/roles/nrser.blockinfile/tests/test-state.yml +32 -0
- data/roles/nrser.rb/.gitignore +31 -0
- data/roles/nrser.rb/library/sync.rb +52 -0
- data/roles/nrser.rb/library/vars.rb +63 -0
- data/roles/{qb.meteor_react_component → nrser.rb}/meta/main.yml +1 -1
- data/roles/nrser.rbenv_gem/README.md +38 -0
- data/roles/nrser.rbenv_gem/VERSION +1 -0
- data/roles/nrser.rbenv_gem/defaults/main.yml +5 -0
- data/roles/nrser.rbenv_gem/handlers/main.yml +2 -0
- data/roles/nrser.rbenv_gem/meta/main.yml +9 -0
- data/roles/nrser.rbenv_gem/tasks/clone-repo.yml +24 -0
- data/roles/nrser.rbenv_gem/tasks/main.yml +46 -0
- data/roles/nrser.rbenv_gem/tasks/manage-source.yml +48 -0
- data/roles/nrser.rbenv_gem/tasks/manage-version.yml +45 -0
- data/roles/nrser.rbenv_gem/vars/main.yml +2 -0
- data/roles/qb.build_gem/tasks/main.yml +2 -1
- data/roles/qb.gitignore/defaults/main.yml +1 -1
- data/roles/qb.gitignore/files/gitignore/.github/PULL_REQUEST_TEMPLATE.md +11 -0
- data/roles/qb.gitignore/files/gitignore/Actionscript.gitignore +11 -0
- data/roles/qb.gitignore/files/gitignore/Ada.gitignore +5 -0
- data/roles/qb.gitignore/files/gitignore/Agda.gitignore +1 -0
- data/roles/qb.gitignore/files/gitignore/Android.gitignore +39 -0
- data/roles/qb.gitignore/files/gitignore/AppEngine.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/AppceleratorTitanium.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/ArchLinuxPackages.gitignore +13 -0
- data/roles/qb.gitignore/files/gitignore/Autotools.gitignore +18 -0
- data/roles/qb.gitignore/files/gitignore/C++.gitignore +28 -0
- data/roles/qb.gitignore/files/gitignore/C.gitignore +32 -0
- data/roles/qb.gitignore/files/gitignore/CFWheels.gitignore +12 -0
- data/roles/qb.gitignore/files/gitignore/CMake.gitignore +6 -0
- data/roles/qb.gitignore/files/gitignore/CONTRIBUTING.md +34 -0
- data/roles/qb.gitignore/files/gitignore/CUDA.gitignore +6 -0
- data/roles/qb.gitignore/files/gitignore/CakePHP.gitignore +25 -0
- data/roles/qb.gitignore/files/gitignore/ChefCookbook.gitignore +9 -0
- data/roles/qb.gitignore/files/gitignore/Clojure.gitignore +1 -0
- data/roles/qb.gitignore/files/gitignore/CodeIgniter.gitignore +6 -0
- data/roles/qb.gitignore/files/gitignore/CommonLisp.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/Composer.gitignore +6 -0
- data/roles/qb.gitignore/files/gitignore/Concrete5.gitignore +4 -0
- data/roles/qb.gitignore/files/gitignore/Coq.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/CraftCMS.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/D.gitignore +20 -0
- data/roles/qb.gitignore/files/gitignore/DM.gitignore +5 -0
- data/roles/qb.gitignore/files/gitignore/Dart.gitignore +27 -0
- data/roles/qb.gitignore/files/gitignore/Delphi.gitignore +66 -0
- data/roles/qb.gitignore/files/gitignore/Drupal.gitignore +36 -0
- data/roles/qb.gitignore/files/gitignore/EPiServer.gitignore +4 -0
- data/roles/qb.gitignore/files/gitignore/Eagle.gitignore +44 -0
- data/roles/qb.gitignore/files/gitignore/Elisp.gitignore +5 -0
- data/roles/qb.gitignore/files/gitignore/Elixir.gitignore +5 -0
- data/roles/qb.gitignore/files/gitignore/Elm.gitignore +4 -0
- data/roles/qb.gitignore/files/gitignore/Erlang.gitignore +10 -0
- data/roles/qb.gitignore/files/gitignore/ExpressionEngine.gitignore +19 -0
- data/roles/qb.gitignore/files/gitignore/ExtJs.gitignore +4 -0
- data/roles/qb.gitignore/files/gitignore/Fancy.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Finale.gitignore +13 -0
- data/roles/qb.gitignore/files/gitignore/ForceDotCom.gitignore +4 -0
- data/roles/qb.gitignore/files/gitignore/Fortran.gitignore +1 -0
- data/roles/qb.gitignore/files/gitignore/FuelPHP.gitignore +21 -0
- data/roles/qb.gitignore/files/gitignore/GWT.gitignore +28 -0
- data/roles/qb.gitignore/files/gitignore/Gcov.gitignore +5 -0
- data/roles/qb.gitignore/files/gitignore/Gem.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/GitBook.gitignore +16 -0
- data/roles/qb.gitignore/files/gitignore/Global/Anjuta.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/Global/Archives.gitignore +27 -0
- data/roles/qb.gitignore/files/gitignore/Global/BricxCC.gitignore +4 -0
- data/roles/qb.gitignore/files/gitignore/Global/CVS.gitignore +4 -0
- data/roles/qb.gitignore/files/gitignore/Global/Calabash.gitignore +10 -0
- data/roles/qb.gitignore/files/gitignore/Global/Cloud9.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/Global/CodeKit.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/Global/DartEditor.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Global/Dreamweaver.gitignore +7 -0
- data/roles/qb.gitignore/files/gitignore/Global/Dropbox.gitignore +4 -0
- data/roles/qb.gitignore/files/gitignore/Global/Eclipse.gitignore +51 -0
- data/roles/qb.gitignore/files/gitignore/Global/EiffelStudio.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Global/Emacs.gitignore +41 -0
- data/roles/qb.gitignore/files/gitignore/Global/Ensime.gitignore +4 -0
- data/roles/qb.gitignore/files/gitignore/Global/Espresso.gitignore +1 -0
- data/roles/qb.gitignore/files/gitignore/Global/FlexBuilder.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/Global/GPG.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Global/IPythonNotebook.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Global/JDeveloper.gitignore +13 -0
- data/roles/qb.gitignore/files/gitignore/Global/JetBrains.gitignore +44 -0
- data/roles/qb.gitignore/files/gitignore/Global/KDevelop4.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Global/Kate.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/Global/Lazarus.gitignore +30 -0
- data/roles/qb.gitignore/files/gitignore/Global/LibreOffice.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Global/Linux.gitignore +10 -0
- data/roles/qb.gitignore/files/gitignore/Global/LyX.gitignore +4 -0
- data/roles/qb.gitignore/files/gitignore/Global/Matlab.gitignore +19 -0
- data/roles/qb.gitignore/files/gitignore/Global/Mercurial.gitignore +6 -0
- data/roles/qb.gitignore/files/gitignore/Global/MicrosoftOffice.gitignore +13 -0
- data/roles/qb.gitignore/files/gitignore/Global/ModelSim.gitignore +23 -0
- data/roles/qb.gitignore/files/gitignore/Global/Momentics.gitignore +8 -0
- data/roles/qb.gitignore/files/gitignore/Global/MonoDevelop.gitignore +8 -0
- data/roles/qb.gitignore/files/gitignore/Global/NetBeans.gitignore +7 -0
- data/roles/qb.gitignore/files/gitignore/Global/Ninja.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Global/NotepadPP.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Global/OSX.gitignore +24 -0
- data/roles/qb.gitignore/files/gitignore/Global/Otto.gitignore +1 -0
- data/roles/qb.gitignore/files/gitignore/Global/README.md +10 -0
- data/roles/qb.gitignore/files/gitignore/Global/Redcar.gitignore +1 -0
- data/roles/qb.gitignore/files/gitignore/Global/Redis.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/Global/SBT.gitignore +9 -0
- data/roles/qb.gitignore/files/gitignore/Global/SVN.gitignore +1 -0
- data/roles/qb.gitignore/files/gitignore/Global/SlickEdit.gitignore +11 -0
- data/roles/qb.gitignore/files/gitignore/Global/SublimeText.gitignore +14 -0
- data/roles/qb.gitignore/files/gitignore/Global/SynopsysVCS.gitignore +36 -0
- data/roles/qb.gitignore/files/gitignore/Global/Tags.gitignore +16 -0
- data/roles/qb.gitignore/files/gitignore/Global/TextMate.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/Global/TortoiseGit.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Global/Vagrant.gitignore +1 -0
- data/roles/qb.gitignore/files/gitignore/Global/Vim.gitignore +10 -0
- data/roles/qb.gitignore/files/gitignore/Global/VirtualEnv.gitignore +12 -0
- data/roles/qb.gitignore/files/gitignore/Global/VisualStudioCode.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Global/WebMethods.gitignore +14 -0
- data/roles/qb.gitignore/files/gitignore/Global/Windows.gitignore +18 -0
- data/roles/qb.gitignore/files/gitignore/Global/Xcode.gitignore +23 -0
- data/roles/qb.gitignore/files/gitignore/Global/XilinxISE.gitignore +67 -0
- data/roles/qb.gitignore/files/gitignore/Go.gitignore +24 -0
- data/roles/qb.gitignore/files/gitignore/Gradle.gitignore +14 -0
- data/roles/qb.gitignore/files/gitignore/Grails.gitignore +33 -0
- data/roles/qb.gitignore/files/gitignore/Haskell.gitignore +17 -0
- data/roles/qb.gitignore/files/gitignore/IGORPro.gitignore +5 -0
- data/roles/qb.gitignore/files/gitignore/Idris.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Java.gitignore +12 -0
- data/roles/qb.gitignore/files/gitignore/Jboss.gitignore +19 -0
- data/roles/qb.gitignore/files/gitignore/Jekyll.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/Joomla.gitignore +546 -0
- data/roles/qb.gitignore/files/gitignore/KiCad.gitignore +20 -0
- data/roles/qb.gitignore/files/gitignore/Kohana.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/LICENSE +19 -0
- data/roles/qb.gitignore/files/gitignore/LabVIEW.gitignore +16 -0
- data/roles/qb.gitignore/files/gitignore/Laravel.gitignore +16 -0
- data/roles/qb.gitignore/files/gitignore/Leiningen.gitignore +12 -0
- data/roles/qb.gitignore/files/gitignore/LemonStand.gitignore +21 -0
- data/roles/qb.gitignore/files/gitignore/Lilypond.gitignore +6 -0
- data/roles/qb.gitignore/files/gitignore/Lithium.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Lua.gitignore +41 -0
- data/roles/qb.gitignore/files/gitignore/Magento.gitignore +104 -0
- data/roles/qb.gitignore/files/gitignore/Maven.gitignore +9 -0
- data/roles/qb.gitignore/files/gitignore/Mercury.gitignore +13 -0
- data/roles/qb.gitignore/files/gitignore/MetaProgrammingSystem.gitignore +16 -0
- data/roles/qb.gitignore/files/gitignore/Nanoc.gitignore +10 -0
- data/roles/qb.gitignore/files/gitignore/Nim.gitignore +1 -0
- data/roles/qb.gitignore/files/gitignore/Node.gitignore +34 -0
- data/roles/qb.gitignore/files/gitignore/OCaml.gitignore +20 -0
- data/roles/qb.gitignore/files/gitignore/Objective-C.gitignore +51 -0
- data/roles/qb.gitignore/files/gitignore/Opa.gitignore +13 -0
- data/roles/qb.gitignore/files/gitignore/OpenCart.gitignore +13 -0
- data/roles/qb.gitignore/files/gitignore/OracleForms.gitignore +8 -0
- data/roles/qb.gitignore/files/gitignore/Packer.gitignore +5 -0
- data/roles/qb.gitignore/files/gitignore/Perl.gitignore +20 -0
- data/roles/qb.gitignore/files/gitignore/Phalcon.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/PlayFramework.gitignore +15 -0
- data/roles/qb.gitignore/files/gitignore/Plone.gitignore +18 -0
- data/roles/qb.gitignore/files/gitignore/Prestashop.gitignore +32 -0
- data/roles/qb.gitignore/files/gitignore/Processing.gitignore +7 -0
- data/roles/qb.gitignore/files/gitignore/Python.gitignore +85 -0
- data/roles/qb.gitignore/files/gitignore/Qooxdoo.gitignore +5 -0
- data/roles/qb.gitignore/files/gitignore/Qt.gitignore +38 -0
- data/roles/qb.gitignore/files/gitignore/R.gitignore +25 -0
- data/roles/qb.gitignore/files/gitignore/README.md +79 -0
- data/roles/qb.gitignore/files/gitignore/ROS.gitignore +47 -0
- data/roles/qb.gitignore/files/gitignore/Rails.gitignore +38 -0
- data/roles/qb.gitignore/files/gitignore/RhodesRhomobile.gitignore +9 -0
- data/roles/qb.gitignore/files/gitignore/Ruby.gitignore +47 -0
- data/roles/qb.gitignore/files/gitignore/Rust.gitignore +15 -0
- data/roles/qb.gitignore/files/gitignore/SCons.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Sass.gitignore +2 -0
- data/roles/qb.gitignore/files/gitignore/Scala.gitignore +17 -0
- data/roles/qb.gitignore/files/gitignore/Scheme.gitignore +7 -0
- data/roles/qb.gitignore/files/gitignore/Scrivener.gitignore +7 -0
- data/roles/qb.gitignore/files/gitignore/Sdcc.gitignore +8 -0
- data/roles/qb.gitignore/files/gitignore/SeamGen.gitignore +26 -0
- data/roles/qb.gitignore/files/gitignore/SketchUp.gitignore +1 -0
- data/roles/qb.gitignore/files/gitignore/Smalltalk.gitignore +18 -0
- data/roles/qb.gitignore/files/gitignore/Stella.gitignore +12 -0
- data/roles/qb.gitignore/files/gitignore/SugarCRM.gitignore +25 -0
- data/roles/qb.gitignore/files/gitignore/Swift.gitignore +63 -0
- data/roles/qb.gitignore/files/gitignore/Symfony.gitignore +43 -0
- data/roles/qb.gitignore/files/gitignore/SymphonyCMS.gitignore +6 -0
- data/roles/qb.gitignore/files/gitignore/TeX.gitignore +177 -0
- data/roles/qb.gitignore/files/gitignore/Terraform.gitignore +3 -0
- data/roles/qb.gitignore/files/gitignore/Textpattern.gitignore +11 -0
- data/roles/qb.gitignore/files/gitignore/TurboGears2.gitignore +20 -0
- data/roles/qb.gitignore/files/gitignore/Typo3.gitignore +20 -0
- data/roles/qb.gitignore/files/gitignore/Umbraco.gitignore +19 -0
- data/roles/qb.gitignore/files/gitignore/Unity.gitignore +30 -0
- data/roles/qb.gitignore/files/gitignore/UnrealEngine.gitignore +59 -0
- data/roles/qb.gitignore/files/gitignore/VVVV.gitignore +6 -0
- data/roles/qb.gitignore/files/gitignore/VisualStudio.gitignore +245 -0
- data/roles/qb.gitignore/files/gitignore/Waf.gitignore +4 -0
- data/roles/qb.gitignore/files/gitignore/WordPress.gitignore +18 -0
- data/roles/qb.gitignore/files/gitignore/Xojo.gitignore +11 -0
- data/roles/qb.gitignore/files/gitignore/Yeoman.gitignore +6 -0
- data/roles/qb.gitignore/files/gitignore/Yii.gitignore +6 -0
- data/roles/qb.gitignore/files/gitignore/ZendFramework.gitignore +25 -0
- data/roles/qb.gitignore/files/gitignore/Zephir.gitignore +26 -0
- data/roles/qb.gitignore/meta/qb +28 -0
- data/roles/qb.gitignore/tasks/main.yml +4 -15
- data/roles/qb.install_gem/meta/qb.yml +4 -0
- data/roles/qb.project/defaults/main.yml +3 -2
- data/roles/qb.project/files/ansible.cfg +3 -1
- data/roles/qb.project/meta/main.yml +1 -0
- data/roles/qb.project/meta/qb.yml +10 -2
- data/roles/qb.project/tasks/dev.yml +36 -0
- data/roles/qb.project/tasks/main.yml +9 -29
- data/roles/qb.project/tasks/setup.yml +24 -23
- data/roles/qb.project/templates/bootstrap.yml.j2 +20 -0
- data/roles/qb.project/templates/setup.yml.j2 +3 -1
- data/roles/qb.release_gem/defaults/main.yml +2 -0
- data/roles/qb.release_gem/meta/main.yml +7 -0
- data/roles/qb.release_gem/meta/qb.yml +21 -0
- data/roles/qb.release_gem/tasks/main.yml +84 -0
- metadata +280 -15
- data/requirements.yml +0 -7
- data/roles/qb.gitignore/.qb-options.yml +0 -3
- data/roles/qb.gitignore/meta/qb.yml +0 -8
- data/roles/qb.gitignore/vars/main.yml +0 -3
- data/roles/qb.meteor_react_component/defaults/main.yml +0 -8
- data/roles/qb.meteor_react_component/meta/qb.yml +0 -68
- data/roles/qb.meteor_react_component/tasks/main.yml +0 -44
- data/roles/qb.meteor_react_component/templates/component.jsx.j2 +0 -75
- data/roles/qb.meteor_react_component/templates/style.import.less.j2 +0 -4
- data/roles/qb.project/files/requirements.yml +0 -12
@@ -0,0 +1,51 @@
|
|
1
|
+
- hosts: localhost
|
2
|
+
gather_facts: false
|
3
|
+
vars:
|
4
|
+
testing_dir: "{{playbook_dir}}/testing"
|
5
|
+
beginmarker: |
|
6
|
+
|
7
|
+
{{ '#' * 78 }}
|
8
|
+
# BEGIN MULTILINE SECTION
|
9
|
+
#
|
10
|
+
|
11
|
+
endmarker: |
|
12
|
+
#
|
13
|
+
# END MULTILINE SECTION
|
14
|
+
{{ '#' * 78 }}
|
15
|
+
|
16
|
+
blah: null
|
17
|
+
roles:
|
18
|
+
- yaegashi.blockinfile
|
19
|
+
tasks:
|
20
|
+
- name: insert block
|
21
|
+
blockinfile: |
|
22
|
+
dest={{testing_dir}}/insert.txt backup=yes
|
23
|
+
content="aaa bbb ccc\nAAA BBB CCC"
|
24
|
+
beginmarker="{{ beginmarker }}"
|
25
|
+
endmarker="{{ endmarker }}"
|
26
|
+
- name: remove block
|
27
|
+
blockinfile: |
|
28
|
+
dest={{testing_dir}}/remove.txt backup=yes
|
29
|
+
content=""
|
30
|
+
beginmarker="{{ beginmarker }}"
|
31
|
+
endmarker="{{ endmarker }}"
|
32
|
+
- name: update block
|
33
|
+
blockinfile: |
|
34
|
+
dest={{testing_dir}}/update.txt backup=yes
|
35
|
+
content="aaa bbb ccc\nAAA BBB CCC"
|
36
|
+
beginmarker="{{ beginmarker }}"
|
37
|
+
endmarker="{{ endmarker }}"
|
38
|
+
|
39
|
+
# - name: alternative marker
|
40
|
+
# blockinfile: |
|
41
|
+
# dest={{testing_dir}}/marker.txt backup=yes
|
42
|
+
# marker="<!-- {mark} ANSIBLE MANAGED BLOCK -->"
|
43
|
+
# content="<h2>aaa bbb ccc</h2>\n<h2>AAA BBB CCC</h2>"
|
44
|
+
# - name: create a file, with options in a hash
|
45
|
+
# blockinfile:
|
46
|
+
# dest: "{{testing_dir}}/create.txt"
|
47
|
+
# create: yes
|
48
|
+
# content: |
|
49
|
+
# iface eth0 inet static
|
50
|
+
# address 192.168.0.1
|
51
|
+
# netmask 255.255.255.0
|
@@ -0,0 +1,21 @@
|
|
1
|
+
- hosts: localhost
|
2
|
+
vars:
|
3
|
+
- testing_dir: "{{playbook_dir}}/testing"
|
4
|
+
roles:
|
5
|
+
- yaegashi.blockinfile
|
6
|
+
tasks:
|
7
|
+
- name: insert a newline after <body>
|
8
|
+
replace:
|
9
|
+
dest: "{{testing_dir}}/index.html"
|
10
|
+
backup: yes
|
11
|
+
regexp: (?i)(<body>)(?=.)
|
12
|
+
replace: \1\n
|
13
|
+
- name: insert a block after <body>
|
14
|
+
blockinfile:
|
15
|
+
dest: "{{testing_dir}}/index.html"
|
16
|
+
backup: yes
|
17
|
+
marker: "<!-- {mark} ANSIBLE MANAGED BLOCK -->"
|
18
|
+
content: |
|
19
|
+
<h2>aaa bbb ccc</h2>
|
20
|
+
<h2>AAA BBB CCC</h2>
|
21
|
+
insertafter: (?i)<body>
|
@@ -0,0 +1,32 @@
|
|
1
|
+
- hosts: localhost
|
2
|
+
vars:
|
3
|
+
- testing_dir: "{{playbook_dir}}/testing"
|
4
|
+
roles:
|
5
|
+
- yaegashi.blockinfile
|
6
|
+
tasks:
|
7
|
+
- name: insert block without state
|
8
|
+
blockinfile:
|
9
|
+
dest: "{{testing_dir}}/insert.txt"
|
10
|
+
backup: yes
|
11
|
+
block: aaa bbb ccc
|
12
|
+
- name: remove block without state
|
13
|
+
blockinfile:
|
14
|
+
dest: "{{testing_dir}}/remove.txt"
|
15
|
+
backup: yes
|
16
|
+
- name: insert block with state=present
|
17
|
+
blockinfile:
|
18
|
+
dest: "{{testing_dir}}/insert-present.txt"
|
19
|
+
backup: yes
|
20
|
+
block: aaa bbb ccc
|
21
|
+
state: present
|
22
|
+
- name: remove block with state=present
|
23
|
+
blockinfile:
|
24
|
+
dest: "{{testing_dir}}/remove-present.txt"
|
25
|
+
backup: yes
|
26
|
+
state: present
|
27
|
+
- name: remove block with state=absent
|
28
|
+
blockinfile:
|
29
|
+
dest: "{{testing_dir}}/remove-absent.txt"
|
30
|
+
backup: yes
|
31
|
+
block: aaa bbb ccc
|
32
|
+
state: absent
|
@@ -0,0 +1,31 @@
|
|
1
|
+
##############################################################################
|
2
|
+
# BEGIN Global/OSX.gitignore
|
3
|
+
#
|
4
|
+
.DS_Store
|
5
|
+
.AppleDouble
|
6
|
+
.LSOverride
|
7
|
+
|
8
|
+
# Icon must end with two \r
|
9
|
+
Icon
|
10
|
+
|
11
|
+
|
12
|
+
# Thumbnails
|
13
|
+
._*
|
14
|
+
|
15
|
+
# Files that might appear in the root of a volume
|
16
|
+
.DocumentRevisions-V100
|
17
|
+
.fseventsd
|
18
|
+
.Spotlight-V100
|
19
|
+
.TemporaryItems
|
20
|
+
.Trashes
|
21
|
+
.VolumeIcon.icns
|
22
|
+
|
23
|
+
# Directories potentially created on remote AFP share
|
24
|
+
.AppleDB
|
25
|
+
.AppleDesktop
|
26
|
+
Network Trash Folder
|
27
|
+
Temporary Items
|
28
|
+
.apdisk
|
29
|
+
#
|
30
|
+
# END Global/OSX.gitignore
|
31
|
+
##############################################################################
|
@@ -0,0 +1,52 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# WANT_JSON
|
3
|
+
# ^ i think this is something telling ansible to provide JSON args?
|
4
|
+
|
5
|
+
require 'json'
|
6
|
+
require 'shellwords'
|
7
|
+
require 'pp'
|
8
|
+
|
9
|
+
def main
|
10
|
+
input = nil
|
11
|
+
args = nil
|
12
|
+
changed = false
|
13
|
+
|
14
|
+
begin
|
15
|
+
input = File.read ARGV[0]
|
16
|
+
args = JSON.load input
|
17
|
+
|
18
|
+
eval <<-END
|
19
|
+
def in_sync?
|
20
|
+
#{ args['pre'] || '' }
|
21
|
+
#{ args['in_sync?'] }
|
22
|
+
end
|
23
|
+
END
|
24
|
+
|
25
|
+
eval <<-END
|
26
|
+
def sync
|
27
|
+
#{ args['pre'] || '' }
|
28
|
+
#{ args['sync'] }
|
29
|
+
end
|
30
|
+
END
|
31
|
+
|
32
|
+
unless in_sync?
|
33
|
+
sync
|
34
|
+
changed = true
|
35
|
+
end
|
36
|
+
|
37
|
+
print JSON.dump({
|
38
|
+
'changed' => changed,
|
39
|
+
})
|
40
|
+
rescue Exception => e
|
41
|
+
print JSON.dump({
|
42
|
+
'failed' => true,
|
43
|
+
'msg' => e,
|
44
|
+
# 'input' => input,
|
45
|
+
'args' => args,
|
46
|
+
# 'ARGV' => ARGV,
|
47
|
+
# 'ruby' => RUBY_VERSION,
|
48
|
+
})
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
main if __FILE__ == $0
|
@@ -0,0 +1,63 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# WANT_JSON
|
3
|
+
# ^ i think this is something telling ansible to provide JSON args?
|
4
|
+
|
5
|
+
require 'json'
|
6
|
+
require 'shellwords'
|
7
|
+
require 'pp'
|
8
|
+
|
9
|
+
def namespace prefix, hash
|
10
|
+
Hash[
|
11
|
+
hash.map {|key, value|
|
12
|
+
["#{ prefix }_#{ key }", value]
|
13
|
+
}
|
14
|
+
]
|
15
|
+
end
|
16
|
+
|
17
|
+
def main
|
18
|
+
input = nil
|
19
|
+
args = nil
|
20
|
+
changed = false
|
21
|
+
|
22
|
+
begin
|
23
|
+
input = File.read ARGV[0]
|
24
|
+
args = JSON.load input
|
25
|
+
|
26
|
+
b = binding
|
27
|
+
|
28
|
+
['bind', 'vars'].each do |key|
|
29
|
+
if args.key? key
|
30
|
+
args[key].each {|k, v|
|
31
|
+
b.local_variable_set k, v
|
32
|
+
}
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
result = b.eval args['src']
|
37
|
+
|
38
|
+
if result.is_a? Hash
|
39
|
+
result = namespace(args['namespace'], result) if args['namespace']
|
40
|
+
else
|
41
|
+
result = {'result' => result}
|
42
|
+
end
|
43
|
+
|
44
|
+
print JSON.dump({
|
45
|
+
'changed' => changed,
|
46
|
+
'ansible_facts' => result,
|
47
|
+
})
|
48
|
+
|
49
|
+
rescue Exception => e
|
50
|
+
raise e
|
51
|
+
|
52
|
+
print JSON.dump({
|
53
|
+
'failed' => true,
|
54
|
+
'msg' => e,
|
55
|
+
# 'input' => input,
|
56
|
+
# 'args' => args,
|
57
|
+
# 'ARGV' => ARGV,
|
58
|
+
# 'ruby' => RUBY_VERSION,
|
59
|
+
})
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
main if __FILE__ == $0
|
@@ -0,0 +1,38 @@
|
|
1
|
+
nrser.rbenv_gem
|
2
|
+
===============
|
3
|
+
|
4
|
+
nrser.rbenv_gem ansible role
|
5
|
+
|
6
|
+
Requirements
|
7
|
+
------------
|
8
|
+
|
9
|
+
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
|
10
|
+
|
11
|
+
Role Variables
|
12
|
+
--------------
|
13
|
+
|
14
|
+
A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
|
15
|
+
|
16
|
+
Dependencies
|
17
|
+
------------
|
18
|
+
|
19
|
+
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
|
20
|
+
|
21
|
+
Example Playbook
|
22
|
+
----------------
|
23
|
+
|
24
|
+
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
|
25
|
+
|
26
|
+
- hosts: servers
|
27
|
+
roles:
|
28
|
+
- { role: username.rolename, x: 42 }
|
29
|
+
|
30
|
+
License
|
31
|
+
-------
|
32
|
+
|
33
|
+
BSD
|
34
|
+
|
35
|
+
Author Information
|
36
|
+
------------------
|
37
|
+
|
38
|
+
<https://github.com/nrser>
|
@@ -0,0 +1 @@
|
|
1
|
+
0.1.4.dev
|
@@ -0,0 +1,24 @@
|
|
1
|
+
---
|
2
|
+
# included when rbenv_gem_repo is defined
|
3
|
+
# clones out the repo to a temp location, builds the .gem file, and installs
|
4
|
+
|
5
|
+
- name: set rbenv_gem_repo_dir fact
|
6
|
+
set_fact:
|
7
|
+
rbenv_gem_repo_dir: /tmp/ansible-nrser.rbenv_gem/{{ rbenv_gem_name }}-{{ rbenv_gem_version }}
|
8
|
+
|
9
|
+
- name: set rbenv_gem_source fact
|
10
|
+
set_fact:
|
11
|
+
rbenv_gem_source: "{{ rbenv_gem_repo_dir }}/{{ rbenv_gem_name }}-{{ rbenv_gem_version }}.gem"
|
12
|
+
|
13
|
+
- name: check out {{ rbenv_gem_repo }}@v{{ rbenv_gem_version }}
|
14
|
+
git:
|
15
|
+
repo: "{{ rbenv_gem_repo }}"
|
16
|
+
dest: "{{ rbenv_gem_repo_dir }}"
|
17
|
+
version: "v{{ rbenv_gem_version }}"
|
18
|
+
depth: 1
|
19
|
+
update: false
|
20
|
+
|
21
|
+
- command: gem build {{ rbenv_gem_name }}.gemspec
|
22
|
+
args:
|
23
|
+
chdir: "{{ rbenv_gem_repo_dir }}"
|
24
|
+
creates: "{{ rbenv_gem_source }}"
|
@@ -0,0 +1,46 @@
|
|
1
|
+
---
|
2
|
+
# tasks file for nrser.rbenv_gem
|
3
|
+
|
4
|
+
- name: parse rbenv_gem_rubies into rbenv_gem_rubies_list
|
5
|
+
vars.rb:
|
6
|
+
namespace: rbenv_gem
|
7
|
+
vars:
|
8
|
+
rubies: "{{ rbenv_gem_rubies }}"
|
9
|
+
src: |
|
10
|
+
exe = "/usr/bin/env rbenv"
|
11
|
+
|
12
|
+
all = `#{ exe } versions --bare`.strip.split + ['system']
|
13
|
+
global = `#{ exe } global`.strip
|
14
|
+
current = `#{ exe } version-name`.strip
|
15
|
+
|
16
|
+
list = rubies.split(',').map {|s| s.strip }.map {|version|
|
17
|
+
case version
|
18
|
+
when 'global'
|
19
|
+
global
|
20
|
+
when 'current'
|
21
|
+
current
|
22
|
+
when 'all'
|
23
|
+
all
|
24
|
+
else
|
25
|
+
version
|
26
|
+
end
|
27
|
+
}.flatten.uniq
|
28
|
+
|
29
|
+
unless (list - all).empty?
|
30
|
+
raise "versions #{ (list - all).join(', ') } are not installed"
|
31
|
+
end
|
32
|
+
|
33
|
+
{'rubies_list' => list}
|
34
|
+
|
35
|
+
- debug:
|
36
|
+
msg: "{{ rbenv_gem_rubies_list }}"
|
37
|
+
|
38
|
+
# this will clone the repo, build the .gem and point rbenv_gem_source to it
|
39
|
+
- include: clone-repo.yml
|
40
|
+
when: rbenv_gem_repo is defined
|
41
|
+
|
42
|
+
- include: manage-source.yml
|
43
|
+
when: rbenv_gem_source is defined
|
44
|
+
|
45
|
+
- include: manage-version.yml
|
46
|
+
when: rbenv_gem_source is not defined
|
@@ -0,0 +1,48 @@
|
|
1
|
+
---
|
2
|
+
# included when rbenv_gem_source is defined
|
3
|
+
|
4
|
+
# seems to need to do this or it won't install in the next step
|
5
|
+
# kinda nice to clean up anyways
|
6
|
+
- name: "remove {{ rbenv_gem_name }} gem before source install (rbenv rubies)"
|
7
|
+
gem:
|
8
|
+
name: "{{ rbenv_gem_name }}"
|
9
|
+
user_install: "{{ rbenv_gem_user_install }}"
|
10
|
+
state: absent
|
11
|
+
executable: "{{ ansible_env.HOME }}/.rbenv/versions/{{ item }}/bin/gem"
|
12
|
+
gem_source: "{{ rbenv_gem_source }}"
|
13
|
+
when: item != 'system'
|
14
|
+
with_items: "{{ rbenv_gem_rubies_list }}"
|
15
|
+
|
16
|
+
- name: "manage {{ rbenv_gem_source }} (rbenv rubies)"
|
17
|
+
gem:
|
18
|
+
name: "{{ rbenv_gem_name }}"
|
19
|
+
user_install: "{{ rbenv_gem_user_install }}"
|
20
|
+
state: "{{ rbenv_gem_state }}"
|
21
|
+
executable: "{{ ansible_env.HOME }}/.rbenv/versions/{{ item }}/bin/gem"
|
22
|
+
gem_source: "{{ rbenv_gem_source }}"
|
23
|
+
when: item != 'system'
|
24
|
+
with_items: "{{ rbenv_gem_rubies_list }}"
|
25
|
+
|
26
|
+
# seems to need to do this or it won't install in the next step
|
27
|
+
# kinda nice to clean up anyways
|
28
|
+
- name: "remove {{ rbenv_gem_name }} gem before source install (system ruby)"
|
29
|
+
gem:
|
30
|
+
name: "{{ rbenv_gem_name }}"
|
31
|
+
user_install: "{{ rbenv_gem_user_install }}"
|
32
|
+
state: absent
|
33
|
+
executable: /usr/bin/gem
|
34
|
+
gem_source: "{{ rbenv_gem_source }}"
|
35
|
+
become: true
|
36
|
+
when: item == 'system'
|
37
|
+
with_items: "{{ rbenv_gem_rubies_list }}"
|
38
|
+
|
39
|
+
- name: "manage {{ rbenv_gem_source }} (system ruby)"
|
40
|
+
gem:
|
41
|
+
name: "{{ rbenv_gem_name }}"
|
42
|
+
user_install: "{{ rbenv_gem_user_install }}"
|
43
|
+
state: "{{ rbenv_gem_state }}"
|
44
|
+
executable: /usr/bin/gem
|
45
|
+
gem_source: "{{ rbenv_gem_source }}"
|
46
|
+
become: true
|
47
|
+
when: item == 'system'
|
48
|
+
with_items: "{{ rbenv_gem_rubies_list }}"
|