rbcli 0.3.3 → 0.4.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 +4 -4
- data/LICENSE.md +9 -0
- data/LICENSE.txt +5 -670
- data/README.md +64 -160
- data/VERSION +1 -0
- data/exe/rbcli +181 -242
- data/lib/rbcli/components/commands/command.rb +120 -0
- data/lib/rbcli/components/commands/command.rb.erb +55 -0
- data/lib/rbcli/components/commands/command_old.rb +105 -0
- data/lib/rbcli/components/commands/script.rb.erb +43 -0
- data/{lib-sh → lib/rbcli/components/commands/scriptwrapper}/lib-rbcli.sh +29 -34
- data/lib/rbcli/components/commands/scriptwrapper/scriptwrapper.rb +64 -0
- data/lib/rbcli/components/config/backend.rb +102 -0
- data/lib/rbcli/components/config/backends/env.rb +67 -0
- data/lib/rbcli/components/config/backends/helpers/deep_assign.rb +47 -0
- data/lib/rbcli/components/config/backends/ini.rb +53 -0
- data/lib/rbcli/components/config/backends/json.rb +32 -0
- data/lib/rbcli/components/config/backends/null.rb +32 -0
- data/lib/rbcli/components/config/backends/toml.rb +38 -0
- data/lib/rbcli/components/config/backends/yaml.rb +31 -0
- data/lib/rbcli/components/config/component.rb +33 -0
- data/lib/rbcli/components/config/config.rb +165 -0
- data/lib/rbcli/components/config/config_of_death.rb +12 -0
- data/lib/rbcli/components/config/template.rb.erb +36 -0
- data/lib/rbcli/components/core/configurate.rb +63 -0
- data/lib/rbcli/components/core/engine.rb +30 -0
- data/lib/rbcli/components/core/warehouse.rb +18 -0
- data/lib/rbcli/components/envvars/component.rb +20 -0
- data/lib/rbcli/components/envvars/template.rb.erb +24 -0
- data/lib/rbcli/components/hooks/component.rb +36 -0
- data/lib/rbcli/components/hooks/template.rb.erb +20 -0
- data/lib/rbcli/components/logger/component.rb +32 -0
- data/lib/rbcli/components/logger/logger.rb +155 -0
- data/lib/rbcli/components/logger/lolcat/lol.rb +71 -0
- data/lib/rbcli/components/logger/template.rb.erb +40 -0
- data/lib/rbcli/components/parser/component.rb +33 -0
- data/lib/rbcli/{util → components/parser/optimist}/optimist.rb +134 -48
- data/lib/rbcli/components/parser/parser.rb +178 -0
- data/lib/rbcli/components/parser/template.rb.erb +35 -0
- data/lib/rbcli/components/updatechecker/common/common.rb +52 -0
- data/lib/rbcli/components/updatechecker/component.rb +42 -0
- data/lib/rbcli/components/updatechecker/gem_checker.rb +40 -0
- data/lib/rbcli/components/updatechecker/github_checker.rb +46 -0
- data/lib/rbcli/components/updatechecker/template.rb.erb +14 -0
- data/lib/rbcli/util/deprecation_warning.rb +41 -55
- data/lib/rbcli/util/errors.rb +12 -0
- data/lib/rbcli/util/exit.rb +12 -0
- data/lib/rbcli/util/hash_deep_symbolize.rb +26 -41
- data/lib/rbcli/util/string_compression.rb +10 -0
- data/lib/rbcli/version.rb +5 -20
- data/lib/rbcli-tool/helpers.rb +58 -0
- data/lib/rbcli-tool/skeletons/gem.rb.erb +17 -0
- data/lib/rbcli-tool/skeletons/portable.rb.erb +48 -0
- data/lib/rbcli.rb +19 -50
- data/sig/rbcli.rbs +9 -0
- metadata +125 -496
- data/.gitignore +0 -60
- data/.rakeTasks +0 -7
- data/.rbenv-gemsets +0 -1
- data/.travis.yml +0 -5
- data/CHANGELOG.md +0 -193
- data/CODE_OF_CONDUCT.md +0 -74
- data/Gemfile +0 -6
- data/Gemfile.lock +0 -92
- data/Rakefile +0 -10
- data/bin/console +0 -33
- data/bin/setup +0 -28
- data/docs/404.html +0 -59
- data/docs/advanced/automatic_updates/index.html +0 -1174
- data/docs/advanced/command_types/index.html +0 -1262
- data/docs/advanced/distributed_state_locking/index.html +0 -1176
- data/docs/advanced/hooks/index.html +0 -1192
- data/docs/advanced/index.html +0 -1140
- data/docs/advanced/index.xml +0 -75
- data/docs/advanced/interactive_commands/index.html +0 -1177
- data/docs/advanced/logging/index.html +0 -1184
- data/docs/advanced/remote_execution/index.html +0 -1190
- data/docs/advanced/state_storage/index.html +0 -1281
- data/docs/advanced/user_config_files/index.html +0 -1209
- data/docs/categories/index.html +0 -1146
- data/docs/categories/index.xml +0 -11
- data/docs/css/atom-one-dark-reasonable.css +0 -77
- data/docs/css/auto-complete.css +0 -47
- data/docs/css/featherlight.min.css +0 -8
- data/docs/css/fontawesome-all.min.css +0 -1
- data/docs/css/hugo-theme.css +0 -254
- data/docs/css/hybrid.css +0 -102
- data/docs/css/nucleus.css +0 -615
- data/docs/css/perfect-scrollbar.min.css +0 -2
- data/docs/css/tags.css +0 -49
- data/docs/css/theme-blue.css +0 -111
- data/docs/css/theme-green.css +0 -111
- data/docs/css/theme-red.css +0 -111
- data/docs/css/theme.css +0 -1136
- data/docs/development/changelog/index.html +0 -1420
- data/docs/development/code_of_conduct/index.html +0 -1222
- data/docs/development/contributing/index.html +0 -1201
- data/docs/development/index.html +0 -1140
- data/docs/development/index.xml +0 -40
- data/docs/development/license/index.html +0 -1165
- data/docs/fonts/Inconsolata.eot +0 -0
- data/docs/fonts/Inconsolata.svg +0 -1
- data/docs/fonts/Inconsolata.ttf +0 -0
- data/docs/fonts/Inconsolata.woff +0 -0
- data/docs/fonts/Novecentosanswide-Normal-webfont.eot +0 -0
- data/docs/fonts/Novecentosanswide-Normal-webfont.svg +0 -1
- data/docs/fonts/Novecentosanswide-Normal-webfont.ttf +0 -0
- data/docs/fonts/Novecentosanswide-Normal-webfont.woff +0 -0
- data/docs/fonts/Novecentosanswide-Normal-webfont.woff2 +0 -0
- data/docs/fonts/Novecentosanswide-UltraLight-webfont.eot +0 -0
- data/docs/fonts/Novecentosanswide-UltraLight-webfont.svg +0 -1
- data/docs/fonts/Novecentosanswide-UltraLight-webfont.ttf +0 -0
- data/docs/fonts/Novecentosanswide-UltraLight-webfont.woff +0 -0
- data/docs/fonts/Novecentosanswide-UltraLight-webfont.woff2 +0 -0
- data/docs/fonts/Work_Sans_200.eot +0 -0
- data/docs/fonts/Work_Sans_200.svg +0 -1
- data/docs/fonts/Work_Sans_200.ttf +0 -0
- data/docs/fonts/Work_Sans_200.woff +0 -0
- data/docs/fonts/Work_Sans_200.woff2 +0 -0
- data/docs/fonts/Work_Sans_300.eot +0 -0
- data/docs/fonts/Work_Sans_300.svg +0 -1
- data/docs/fonts/Work_Sans_300.ttf +0 -0
- data/docs/fonts/Work_Sans_300.woff +0 -0
- data/docs/fonts/Work_Sans_300.woff2 +0 -0
- data/docs/fonts/Work_Sans_500.eot +0 -0
- data/docs/fonts/Work_Sans_500.svg +0 -1
- data/docs/fonts/Work_Sans_500.ttf +0 -0
- data/docs/fonts/Work_Sans_500.woff +0 -0
- data/docs/fonts/Work_Sans_500.woff2 +0 -0
- data/docs/images/clippy.svg +0 -1
- data/docs/images/favicon.png +0 -0
- data/docs/images/gopher-404.jpg +0 -0
- data/docs/imported/changelog/index.html +0 -1449
- data/docs/imported/index.html +0 -1191
- data/docs/imported/index.xml +0 -23
- data/docs/index.html +0 -1138
- data/docs/index.json +0 -183
- data/docs/index.xml +0 -138
- data/docs/js/auto-complete.js +0 -3
- data/docs/js/clipboard.min.js +0 -7
- data/docs/js/featherlight.min.js +0 -9
- data/docs/js/highlight.pack.js +0 -6
- data/docs/js/html5shiv-printshiv.min.js +0 -4
- data/docs/js/hugo-learn.js +0 -94
- data/docs/js/jquery-3.3.1.min.js +0 -2
- data/docs/js/jquery.sticky.js +0 -288
- data/docs/js/learn.js +0 -459
- data/docs/js/lunr.min.js +0 -6
- data/docs/js/modernizr.custom-3.6.0.js +0 -3
- data/docs/js/perfect-scrollbar.jquery.min.js +0 -2
- data/docs/js/perfect-scrollbar.min.js +0 -2
- data/docs/js/search.js +0 -93
- data/docs/mermaid/mermaid.css +0 -277
- data/docs/mermaid/mermaid.dark.css +0 -278
- data/docs/mermaid/mermaid.forest.css +0 -356
- data/docs/mermaid/mermaid.js +0 -8
- data/docs/quick_reference/index.html +0 -1246
- data/docs/quick_reference/index.xml +0 -12
- data/docs/sitemap.xml +0 -81
- data/docs/tags/index.html +0 -1146
- data/docs/tags/index.xml +0 -11
- data/docs/tutorial/10-getting_started/index.html +0 -1174
- data/docs/tutorial/20-project_layout/index.html +0 -1299
- data/docs/tutorial/30-your_first_command/index.html +0 -1263
- data/docs/tutorial/40-options_parameters_and_arguments/index.html +0 -1384
- data/docs/tutorial/50-publishing/index.html +0 -1187
- data/docs/tutorial/index.html +0 -1140
- data/docs/tutorial/index.xml +0 -47
- data/docs/webfonts/fa-brands-400.eot +0 -0
- data/docs/webfonts/fa-brands-400.svg +0 -1
- data/docs/webfonts/fa-brands-400.ttf +0 -0
- data/docs/webfonts/fa-brands-400.woff +0 -0
- data/docs/webfonts/fa-brands-400.woff2 +0 -0
- data/docs/webfonts/fa-regular-400.eot +0 -0
- data/docs/webfonts/fa-regular-400.svg +0 -1
- data/docs/webfonts/fa-regular-400.ttf +0 -0
- data/docs/webfonts/fa-regular-400.woff +0 -0
- data/docs/webfonts/fa-regular-400.woff2 +0 -0
- data/docs/webfonts/fa-solid-900.eot +0 -0
- data/docs/webfonts/fa-solid-900.svg +0 -1
- data/docs/webfonts/fa-solid-900.ttf +0 -0
- data/docs/webfonts/fa-solid-900.woff +0 -0
- data/docs/webfonts/fa-solid-900.woff2 +0 -0
- data/docs/whoami/index.html +0 -1155
- data/docs/whoami/index.xml +0 -12
- data/docs-src/archetypes/default.md +0 -6
- data/docs-src/config.toml +0 -37
- data/docs-src/content/_index.md +0 -40
- data/docs-src/content/advanced/_index.md +0 -11
- data/docs-src/content/advanced/automatic_updates.md +0 -46
- data/docs-src/content/advanced/command_types.md +0 -148
- data/docs-src/content/advanced/distributed_state_locking.md +0 -37
- data/docs-src/content/advanced/hooks.md +0 -69
- data/docs-src/content/advanced/interactive_commands.md +0 -41
- data/docs-src/content/advanced/logging.md +0 -39
- data/docs-src/content/advanced/remote_execution.md +0 -60
- data/docs-src/content/advanced/state_storage.md +0 -120
- data/docs-src/content/advanced/user_config_files.md +0 -51
- data/docs-src/content/development/_index.md +0 -11
- data/docs-src/content/development/changelog.md +0 -199
- data/docs-src/content/development/code_of_conduct.md +0 -81
- data/docs-src/content/development/contributing.md +0 -88
- data/docs-src/content/development/license.md +0 -17
- data/docs-src/content/quick_reference/_index.md +0 -180
- data/docs-src/content/tutorial/10-getting_started.md +0 -47
- data/docs-src/content/tutorial/20-project_layout.md +0 -123
- data/docs-src/content/tutorial/30-your_first_command.md +0 -132
- data/docs-src/content/tutorial/40-options_parameters_and_arguments.md +0 -282
- data/docs-src/content/tutorial/50-publishing.md +0 -53
- data/docs-src/content/tutorial/_index.md +0 -11
- data/docs-src/content/whoami/_index.md +0 -34
- data/docs-src/layouts/partials/logo.html +0 -3
- data/docs-src/makesite.sh +0 -40
- data/docs-src/mkdocs-archived.tar.gz +0 -0
- data/docs-src/runsite.sh +0 -8
- data/docs-src/themes/hugo-theme-learn/.editorconfig +0 -16
- data/docs-src/themes/hugo-theme-learn/.gitignore +0 -3
- data/docs-src/themes/hugo-theme-learn/.grenrc.yml +0 -25
- data/docs-src/themes/hugo-theme-learn/CHANGELOG.md +0 -226
- data/docs-src/themes/hugo-theme-learn/LICENSE.md +0 -22
- data/docs-src/themes/hugo-theme-learn/README.md +0 -97
- data/docs-src/themes/hugo-theme-learn/archetypes/chapter.md +0 -13
- data/docs-src/themes/hugo-theme-learn/archetypes/default.md +0 -7
- data/docs-src/themes/hugo-theme-learn/exampleSite/LICENSE.md +0 -20
- data/docs-src/themes/hugo-theme-learn/exampleSite/config.toml +0 -102
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/_index.en.md +0 -41
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/_index.fr.md +0 -43
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/_index.en.md +0 -12
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/_index.fr.md +0 -12
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/_index.zh.md +0 -12
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/configuration/_index.en.md +0 -60
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/configuration/_index.fr.md +0 -56
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/installation/_index.en.md +0 -102
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/installation/_index.fr.md +0 -100
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/installation/images/chapter.png +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/requirements/_index.en.md +0 -11
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/requirements/_index.fr.md +0 -11
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/requirements/images/magic.gif +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/style-customization/_index.en.md +0 -194
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/style-customization/_index.fr.md +0 -194
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/style-customization/images/blue-variant.png +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/style-customization/images/green-variant.png +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/basics/style-customization/images/red-variant.png +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/_index.en.md +0 -12
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/_index.fr.md +0 -12
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/archetypes.en.md +0 -57
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/archetypes.fr.md +0 -57
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/i18n/_index.en.md +0 -78
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/i18n/_index.fr.md +0 -78
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/i18n/images/i18n-menu.gif +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/icons.en.md +0 -41
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/markdown.en.md +0 -692
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/markdown.fr.md +0 -666
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/menushortcuts.en.md +0 -109
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/menushortcuts.fr.md +0 -109
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/pages/_index.en.md +0 -166
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/pages/_index.fr.md +0 -146
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/pages/images/frontmatter-icon.png +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/pages/images/pages-chapter.png +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/pages/images/pages-default.png +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/syntaxhighlight.en.md +0 -89
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/tags.en.md +0 -39
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/cont/tags.fr.md +0 -40
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/credits.en.md +0 -28
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/credits.fr.md +0 -28
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/_index.en.md +0 -16
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/_index.fr.md +0 -16
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.en.files/BachGavotteShort.mp3 +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.en.files/Carroll_AliceAuPaysDesMerveilles.pdf +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.en.files/adivorciarsetoca00cape.pdf +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.en.files/hugo.png +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.en.files/movieselectricsheep-flock-244-32500-2.mp4 +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.en.md +0 -85
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.fr.files/BachGavotteShort.mp3 +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.fr.files/Carroll_AliceAuPaysDesMerveilles.pdf +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.fr.files/adivorciarsetoca00cape.pdf +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.fr.files/hugo.png +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.fr.files/movieselectricsheep-flock-244-32500-2.mp4 +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/attachments.fr.md +0 -85
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/button.en.md +0 -16
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/button.fr.md +0 -16
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/_index.en.md +0 -45
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/_index.fr.md +0 -45
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/_index.en.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/_index.fr.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/_index.en.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/_index.fr.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/children-1-1-1/_index.en.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/children-1-1-1/_index.fr.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/children-1-1-1/children-1-1-1-1/_index.en.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/children-1-1-1/children-1-1-1-1/_index.fr.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/children-1-1-1/children-1-1-1-1/children-1-1-1-1-1/_index.en.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-1/children-1-1/children-1-1-1/children-1-1-1-1/children-1-1-1-1-1/_index.fr.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-2/_index.en.md +0 -11
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-2/_index.fr.md +0 -11
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-2/test3.en.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-2/test3.fr.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-3/_index.en.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-3/_index.fr.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-4/_index.en.md +0 -7
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/children-4/_index.fr.md +0 -7
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/test.en.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/children/test.fr.md +0 -6
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/expand.en.md +0 -45
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/expand.fr.md +0 -45
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/mermaid.en.md +0 -283
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/mermaid.fr.md +0 -283
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/notice.en.md +0 -62
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/notice.fr.md +0 -62
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/siteparam.en.md +0 -23
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/shortcodes/siteparam.fr.md +0 -23
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/showcase.en.md +0 -13
- data/docs-src/themes/hugo-theme-learn/exampleSite/content/showcase.fr.md +0 -14
- data/docs-src/themes/hugo-theme-learn/exampleSite/layouts/partials/custom-footer.html +0 -10
- data/docs-src/themes/hugo-theme-learn/exampleSite/layouts/partials/logo.html +0 -39
- data/docs-src/themes/hugo-theme-learn/exampleSite/layouts/partials/menu-footer.html +0 -14
- data/docs-src/themes/hugo-theme-learn/exampleSite/layouts/shortcodes/ghcontributors.html +0 -31
- data/docs-src/themes/hugo-theme-learn/exampleSite/static/css/theme-mine.css +0 -104
- data/docs-src/themes/hugo-theme-learn/exampleSite/static/fonts/monogramos-webfont.eot +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/static/fonts/monogramos-webfont.svg +0 -1
- data/docs-src/themes/hugo-theme-learn/exampleSite/static/fonts/monogramos-webfont.ttf +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/static/fonts/monogramos-webfont.woff +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/static/fonts/monogramos-webfont.woff2 +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/static/images/showcase/inteliver_docs.png +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/static/images/showcase/tat.png +0 -0
- data/docs-src/themes/hugo-theme-learn/exampleSite/static/images/showcase/tshark_dev.png +0 -0
- data/docs-src/themes/hugo-theme-learn/i18n/ar.toml +0 -26
- data/docs-src/themes/hugo-theme-learn/i18n/de.toml +0 -26
- data/docs-src/themes/hugo-theme-learn/i18n/en.toml +0 -26
- data/docs-src/themes/hugo-theme-learn/i18n/es.toml +0 -26
- data/docs-src/themes/hugo-theme-learn/i18n/fr.toml +0 -26
- data/docs-src/themes/hugo-theme-learn/i18n/hi.toml +0 -26
- data/docs-src/themes/hugo-theme-learn/i18n/id.toml +0 -26
- data/docs-src/themes/hugo-theme-learn/i18n/ja.toml +0 -26
- data/docs-src/themes/hugo-theme-learn/i18n/nl.toml +0 -26
- data/docs-src/themes/hugo-theme-learn/i18n/pt.toml +0 -26
- data/docs-src/themes/hugo-theme-learn/i18n/ru.toml +0 -26
- data/docs-src/themes/hugo-theme-learn/i18n/tr.toml +0 -26
- data/docs-src/themes/hugo-theme-learn/i18n/zh-cn.toml +0 -26
- data/docs-src/themes/hugo-theme-learn/images/screenshot.png +0 -0
- data/docs-src/themes/hugo-theme-learn/images/tn.png +0 -0
- data/docs-src/themes/hugo-theme-learn/layouts/404.html +0 -56
- data/docs-src/themes/hugo-theme-learn/layouts/_default/list.html +0 -22
- data/docs-src/themes/hugo-theme-learn/layouts/_default/single.html +0 -12
- data/docs-src/themes/hugo-theme-learn/layouts/index.html +0 -31
- data/docs-src/themes/hugo-theme-learn/layouts/index.json +0 -12
- data/docs-src/themes/hugo-theme-learn/layouts/partials/custom-comments.html +0 -3
- data/docs-src/themes/hugo-theme-learn/layouts/partials/custom-footer.html +0 -5
- data/docs-src/themes/hugo-theme-learn/layouts/partials/custom-header.html +0 -5
- data/docs-src/themes/hugo-theme-learn/layouts/partials/favicon.html +0 -1
- data/docs-src/themes/hugo-theme-learn/layouts/partials/footer.html +0 -77
- data/docs-src/themes/hugo-theme-learn/layouts/partials/header.html +0 -111
- data/docs-src/themes/hugo-theme-learn/layouts/partials/logo.html +0 -19
- data/docs-src/themes/hugo-theme-learn/layouts/partials/menu-footer.html +0 -1
- data/docs-src/themes/hugo-theme-learn/layouts/partials/menu.html +0 -151
- data/docs-src/themes/hugo-theme-learn/layouts/partials/meta.html +0 -2
- data/docs-src/themes/hugo-theme-learn/layouts/partials/search.html +0 -16
- data/docs-src/themes/hugo-theme-learn/layouts/partials/tags.html +0 -7
- data/docs-src/themes/hugo-theme-learn/layouts/partials/toc.html +0 -5
- data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/attachments.html +0 -36
- data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/button.html +0 -14
- data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/children.html +0 -101
- data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/expand.html +0 -17
- data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/mermaid.html +0 -2
- data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/notice.html +0 -2
- data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/ref.html +0 -14
- data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/relref.html +0 -14
- data/docs-src/themes/hugo-theme-learn/layouts/shortcodes/siteparam.html +0 -7
- data/docs-src/themes/hugo-theme-learn/netlify.toml +0 -23
- data/docs-src/themes/hugo-theme-learn/static/css/atom-one-dark-reasonable.css +0 -77
- data/docs-src/themes/hugo-theme-learn/static/css/auto-complete.css +0 -47
- data/docs-src/themes/hugo-theme-learn/static/css/featherlight.min.css +0 -8
- data/docs-src/themes/hugo-theme-learn/static/css/fontawesome-all.min.css +0 -1
- data/docs-src/themes/hugo-theme-learn/static/css/hugo-theme.css +0 -254
- data/docs-src/themes/hugo-theme-learn/static/css/hybrid.css +0 -102
- data/docs-src/themes/hugo-theme-learn/static/css/nucleus.css +0 -615
- data/docs-src/themes/hugo-theme-learn/static/css/perfect-scrollbar.min.css +0 -2
- data/docs-src/themes/hugo-theme-learn/static/css/tags.css +0 -49
- data/docs-src/themes/hugo-theme-learn/static/css/theme-blue.css +0 -111
- data/docs-src/themes/hugo-theme-learn/static/css/theme-green.css +0 -111
- data/docs-src/themes/hugo-theme-learn/static/css/theme-red.css +0 -111
- data/docs-src/themes/hugo-theme-learn/static/css/theme.css +0 -1136
- data/docs-src/themes/hugo-theme-learn/static/fonts/Inconsolata.eot +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Inconsolata.svg +0 -1
- data/docs-src/themes/hugo-theme-learn/static/fonts/Inconsolata.ttf +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Inconsolata.woff +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-Normal-webfont.eot +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-Normal-webfont.svg +0 -1
- data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-Normal-webfont.ttf +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-Normal-webfont.woff +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-Normal-webfont.woff2 +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-UltraLight-webfont.eot +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-UltraLight-webfont.svg +0 -1
- data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-UltraLight-webfont.ttf +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-UltraLight-webfont.woff +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Novecentosanswide-UltraLight-webfont.woff2 +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_200.eot +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_200.svg +0 -1
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_200.ttf +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_200.woff +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_200.woff2 +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_300.eot +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_300.svg +0 -1
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_300.ttf +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_300.woff +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_300.woff2 +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_500.eot +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_500.svg +0 -1
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_500.ttf +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_500.woff +0 -0
- data/docs-src/themes/hugo-theme-learn/static/fonts/Work_Sans_500.woff2 +0 -0
- data/docs-src/themes/hugo-theme-learn/static/images/clippy.svg +0 -1
- data/docs-src/themes/hugo-theme-learn/static/images/favicon.png +0 -0
- data/docs-src/themes/hugo-theme-learn/static/images/gopher-404.jpg +0 -0
- data/docs-src/themes/hugo-theme-learn/static/js/auto-complete.js +0 -3
- data/docs-src/themes/hugo-theme-learn/static/js/clipboard.min.js +0 -7
- data/docs-src/themes/hugo-theme-learn/static/js/featherlight.min.js +0 -9
- data/docs-src/themes/hugo-theme-learn/static/js/highlight.pack.js +0 -6
- data/docs-src/themes/hugo-theme-learn/static/js/hugo-learn.js +0 -94
- data/docs-src/themes/hugo-theme-learn/static/js/jquery-3.3.1.min.js +0 -2
- data/docs-src/themes/hugo-theme-learn/static/js/jquery.sticky.js +0 -288
- data/docs-src/themes/hugo-theme-learn/static/js/learn.js +0 -459
- data/docs-src/themes/hugo-theme-learn/static/js/lunr.min.js +0 -6
- data/docs-src/themes/hugo-theme-learn/static/js/modernizr.custom-3.6.0.js +0 -3
- data/docs-src/themes/hugo-theme-learn/static/js/perfect-scrollbar.jquery.min.js +0 -2
- data/docs-src/themes/hugo-theme-learn/static/js/perfect-scrollbar.min.js +0 -2
- data/docs-src/themes/hugo-theme-learn/static/js/search.js +0 -93
- data/docs-src/themes/hugo-theme-learn/static/mermaid/mermaid.css +0 -277
- data/docs-src/themes/hugo-theme-learn/static/mermaid/mermaid.dark.css +0 -278
- data/docs-src/themes/hugo-theme-learn/static/mermaid/mermaid.forest.css +0 -356
- data/docs-src/themes/hugo-theme-learn/static/mermaid/mermaid.js +0 -8
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-brands-400.eot +0 -0
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-brands-400.svg +0 -1
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-brands-400.ttf +0 -0
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-brands-400.woff +0 -0
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-brands-400.woff2 +0 -0
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-regular-400.eot +0 -0
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-regular-400.svg +0 -1
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-regular-400.ttf +0 -0
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-regular-400.woff +0 -0
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-regular-400.woff2 +0 -0
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-solid-900.eot +0 -0
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-solid-900.svg +0 -1
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-solid-900.ttf +0 -0
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-solid-900.woff +0 -0
- data/docs-src/themes/hugo-theme-learn/static/webfonts/fa-solid-900.woff2 +0 -0
- data/docs-src/themes/hugo-theme-learn/theme.toml +0 -21
- data/docs-src/themes/hugo-theme-learn/wercker.yml +0 -16
- data/lib/rbcli/configuration/configurate.rb +0 -85
- data/lib/rbcli/configuration/configurate_blocks/hooks.rb +0 -52
- data/lib/rbcli/configuration/configurate_blocks/me.rb +0 -122
- data/lib/rbcli/configuration/configurate_blocks/storage.rb +0 -50
- data/lib/rbcli/engine/command.rb +0 -251
- data/lib/rbcli/engine/load_project.rb +0 -45
- data/lib/rbcli/engine/parser.rb +0 -116
- data/lib/rbcli/features/autoupdate/common/autoupdate.rb +0 -50
- data/lib/rbcli/features/autoupdate/gem_updater.rb +0 -62
- data/lib/rbcli/features/autoupdate/github_updater.rb +0 -76
- data/lib/rbcli/features/logging.rb +0 -98
- data/lib/rbcli/features/remote_exec.rb +0 -187
- data/lib/rbcli/features/scriptwrapper.rb +0 -75
- data/lib/rbcli/features/userconfig.rb +0 -163
- data/lib/rbcli/state_storage/common/state_storage.rb +0 -138
- data/lib/rbcli/state_storage/localstate.rb +0 -77
- data/lib/rbcli/state_storage/placeholders.rb +0 -29
- data/lib/rbcli/state_storage/remote_state_connectors/dynamodb.rb +0 -272
- data/lib/rbcli/state_storage/remotestate_dynamodb.rb +0 -115
- data/lib/rbcli/util/msg.rb +0 -55
- data/lib/rbcli/util/string_colorize.rb +0 -45
- data/lib/rbcli-tool/generators.rb +0 -105
- data/lib/rbcli-tool/mdless_fix.rb +0 -406
- data/lib/rbcli-tool/project.rb +0 -120
- data/lib/rbcli-tool/util.rb +0 -70
- data/lib/rbcli-tool.rb +0 -37
- data/rbcli.gemspec +0 -73
- data/skeletons/micro/executable +0 -132
- data/skeletons/mini/executable +0 -247
- data/skeletons/project/.gitignore +0 -11
- data/skeletons/project/.rakeTasks +0 -7
- data/skeletons/project/.rbcli +0 -0
- data/skeletons/project/.rspec +0 -3
- data/skeletons/project/CODE_OF_CONDUCT.md +0 -74
- data/skeletons/project/Gemfile +0 -6
- data/skeletons/project/README.md +0 -46
- data/skeletons/project/Rakefile +0 -6
- data/skeletons/project/application/commands/command.erb +0 -28
- data/skeletons/project/application/commands/script.erb +0 -30
- data/skeletons/project/application/commands/scripts/script.sh +0 -60
- data/skeletons/project/application/options.rb +0 -34
- data/skeletons/project/config/autoupdate.rb +0 -35
- data/skeletons/project/config/general.rb +0 -17
- data/skeletons/project/config/logging.rb +0 -19
- data/skeletons/project/config/storage.rb +0 -35
- data/skeletons/project/config/userspace.rb +0 -33
- data/skeletons/project/config/version.rb +0 -3
- data/skeletons/project/exe/executable +0 -53
- data/skeletons/project/hooks/default_action.rb +0 -16
- data/skeletons/project/hooks/first_run.rb +0 -16
- data/skeletons/project/hooks/post_execution.rb +0 -14
- data/skeletons/project/hooks/pre_execution.rb +0 -14
- data/skeletons/project/lib/lib.erb +0 -9
- data/skeletons/project/spec/spec_helper.rb +0 -14
- data/skeletons/project/spec/untitled_spec.rb +0 -9
- data/skeletons/project/untitled.gemspec +0 -40
- data/skeletons/project/userconf/user_defaults.yml +0 -6
- /data/{docs-src/.hugo_build.lock → lib/rbcli/plugins/.keep} +0 -0
data/rbcli.gemspec
DELETED
@@ -1,73 +0,0 @@
|
|
1
|
-
##################################################################################
|
2
|
-
# RBCli -- A framework for developing command line applications in Ruby #
|
3
|
-
# Copyright (C) 2018 Andrew Khoury #
|
4
|
-
# #
|
5
|
-
# This program is free software: you can redistribute it and/or modify #
|
6
|
-
# it under the terms of the GNU General Public License as published by #
|
7
|
-
# the Free Software Foundation, either version 3 of the License, or #
|
8
|
-
# (at your option) any later version. #
|
9
|
-
# #
|
10
|
-
# This program is distributed in the hope that it will be useful, #
|
11
|
-
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
12
|
-
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
13
|
-
# GNU General Public License for more details. #
|
14
|
-
# #
|
15
|
-
# You should have received a copy of the GNU General Public License #
|
16
|
-
# along with this program. If not, see <https://www.gnu.org/licenses/>. #
|
17
|
-
# #
|
18
|
-
# For questions regarding licensing, please contact andrew@blacknex.us #
|
19
|
-
##################################################################################
|
20
|
-
|
21
|
-
lib = File.expand_path("../lib", __FILE__)
|
22
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
23
|
-
require 'rbcli/version'
|
24
|
-
|
25
|
-
Gem::Specification.new do |spec|
|
26
|
-
spec.name = 'rbcli'
|
27
|
-
spec.version = Rbcli::VERSION
|
28
|
-
spec.authors = ['Andrew Khoury']
|
29
|
-
spec.email = ['akhoury@live.com']
|
30
|
-
|
31
|
-
spec.summary = %q{A CLI Application/Tooling Framework for Ruby}
|
32
|
-
spec.description = %q{RBCli is a framework to quickly develop command-line tools and applications.}
|
33
|
-
spec.homepage = 'https://akhoury6.github.io/rbcli'
|
34
|
-
spec.license = 'GPLv3'
|
35
|
-
|
36
|
-
spec.required_ruby_version = '>= 2.3'
|
37
|
-
|
38
|
-
# Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
|
39
|
-
# to allow pushing to a single host or delete this section to allow pushing to any host.
|
40
|
-
# if spec.respond_to?(:metadata)
|
41
|
-
# spec.metadata["allowed_push_host"] = "http://mygemserver.com"
|
42
|
-
# else
|
43
|
-
# raise "RubyGems 2.0 or newer is required to protect against " \
|
44
|
-
# "public gem pushes."
|
45
|
-
# end
|
46
|
-
|
47
|
-
# Specify which files should be added to the gem when it is released.
|
48
|
-
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
49
|
-
spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
|
50
|
-
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
51
|
-
end
|
52
|
-
spec.bindir = 'exe'
|
53
|
-
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
54
|
-
spec.require_paths = ['lib']
|
55
|
-
|
56
|
-
spec.add_development_dependency 'bundler', '>= 2'
|
57
|
-
spec.add_development_dependency 'rake', '>= 13'
|
58
|
-
|
59
|
-
spec.add_dependency 'colorize', '~> 1'
|
60
|
-
spec.add_dependency 'deep_merge', '~> 1'
|
61
|
-
spec.add_dependency 'aws-sdk-dynamodb', '~> 1'
|
62
|
-
spec.add_dependency 'macaddr', '~> 1'
|
63
|
-
spec.add_dependency 'rufus-scheduler', '~> 3'
|
64
|
-
spec.add_dependency 'octokit', RUBY_VERSION >= '3.3.0' ? '~> 8' : '~> 7'
|
65
|
-
spec.add_dependency 'mdless', RUBY_VERSION >= '3.3.0' ? '~> 2' : '~> 1'
|
66
|
-
spec.add_dependency 'net-ssh', '~> 7'
|
67
|
-
spec.add_dependency 'net-scp', '~> 4'
|
68
|
-
#TODO: Pull in the Optimist gem once the required PR's have been merged:
|
69
|
-
# https://github.com/ManageIQ/optimist/pull/145
|
70
|
-
# https://github.com/ManageIQ/optimist/pull/146
|
71
|
-
# https://github.com/ManageIQ/optimist/pull/147
|
72
|
-
# spec.add_dependency 'optimist', '???'
|
73
|
-
end
|
data/skeletons/micro/executable
DELETED
@@ -1,132 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
|
3
|
-
#########################################################
|
4
|
-
### <%= @vars[:cmdname] %>
|
5
|
-
#######
|
6
|
-
## This is the main executable for <%= @vars[:cmdname] %>.
|
7
|
-
## It's job is to load and execute the application.
|
8
|
-
#########################################################
|
9
|
-
|
10
|
-
require 'bundler/inline'
|
11
|
-
gemfile do
|
12
|
-
source 'https://rubygems.org'
|
13
|
-
ruby ">= <%= RUBY_VERSION %>"
|
14
|
-
gem 'rbcli', '>= <%= @vars[:rbcli_version] %>', require: true
|
15
|
-
end
|
16
|
-
|
17
|
-
#########################
|
18
|
-
## Configuration Block ##
|
19
|
-
#########################
|
20
|
-
Rbcli::Configurate.me do
|
21
|
-
## Script Name -- (Required) -- This line identifies the tool's executable on the command line.
|
22
|
-
scriptname File.basename(__FILE__)
|
23
|
-
|
24
|
-
## Version Number -- (Required)
|
25
|
-
version '0.1.0'
|
26
|
-
|
27
|
-
## Description -- (Requierd) -- A description that will appear when the user looks at the help with -h. This can be as long as needed.
|
28
|
-
description %q{<%= @vars[:description] %>}
|
29
|
-
|
30
|
-
|
31
|
-
## Log Target -- (Optional) -- Set the target for logs.
|
32
|
-
log_target nil
|
33
|
-
|
34
|
-
## Log Level -- (Optional) -- Set the default log_level for users.
|
35
|
-
log_level nil
|
36
|
-
|
37
|
-
|
38
|
-
## Config Userfile -- (Optional) -- Set location of user's config file.
|
39
|
-
config_userfile '~/.<%= @vars[:cmdname] %>', merge_defaults: true, required: false
|
40
|
-
|
41
|
-
## Config Defaults -- (Optional, Multiple) -- Load a YAML file as part of the default config.
|
42
|
-
#config_defaults 'defaults.yml'
|
43
|
-
|
44
|
-
## Config Default -- (Optional, Multiple) -- Specify an individual configuration parameter and set a default value.
|
45
|
-
config_default :myopt, description: 'Testing this', default: true
|
46
|
-
|
47
|
-
|
48
|
-
## Autoupdate, Github -- (Optional) -- Check for updates to this application at a GitHub repo.
|
49
|
-
#autoupdate github_repo: '<your_user>/<your_repo>', access_token: nil, enterprise_hostname: nil, force_update: false
|
50
|
-
|
51
|
-
## Autoupdate, Rubygems.org -- (Optional) -- Check for updates to this application on Rubygems.org
|
52
|
-
#autoupdate gem: '<your_gem>', force_update: false
|
53
|
-
|
54
|
-
|
55
|
-
## Option -- (Optional, Multiple) -- Add a global CLI Option
|
56
|
-
option :name, 'Give me your name', type: :string, default: 'Foo', required: false, permitted: ['Jack', 'Jill']
|
57
|
-
end
|
58
|
-
|
59
|
-
###############################
|
60
|
-
## Hooks Configuration Block ##
|
61
|
-
###############################
|
62
|
-
Rbcli::Configurate.hooks do
|
63
|
-
## Default Action -- (Optional) -- The default code to execute when no subcommand is given.
|
64
|
-
default_action do |opts|
|
65
|
-
puts "Hello, #{opts[:name]}."
|
66
|
-
puts "To see the help, use -h"
|
67
|
-
end
|
68
|
-
|
69
|
-
## Pre-Execution Hook -- (Optional) -- Allows providing a block of code that runs _before_ all commands
|
70
|
-
# pre_hook do |opts|
|
71
|
-
# puts 'This is a pre-command hook. It executes before the command.'
|
72
|
-
# end
|
73
|
-
|
74
|
-
## Post-Execution Hook -- (Optional) -- Allows providing a block of code that runs _after_ all commands
|
75
|
-
# post_hook do |opts|
|
76
|
-
# puts 'This is a post-command hook. It executes after the command.'
|
77
|
-
# end
|
78
|
-
|
79
|
-
## First-Run Hook -- (Optional) -- Allows providing a block of code that executes the first time that the application is run on a given system.
|
80
|
-
# first_run halt_after_running: false do
|
81
|
-
# puts "This is the first time the mytool command is run! Don't forget to generate a config file with the `-g` option before continuing."
|
82
|
-
# end
|
83
|
-
end
|
84
|
-
|
85
|
-
###############################
|
86
|
-
## State Configuration Block ##
|
87
|
-
###############################
|
88
|
-
Rbcli::Configurate.storage do
|
89
|
-
###
|
90
|
-
# Local State Storage
|
91
|
-
###
|
92
|
-
|
93
|
-
## Local State -- (Optional) -- Creates a hash that is automatically saved to a file locally for state persistance. It is accessible to all commands at Rbcli.local_state[:yourkeyhere]
|
94
|
-
#local_state '/var/mytool/localstate', force_creation: true, halt_on_error: true
|
95
|
-
|
96
|
-
|
97
|
-
## Remote State -- (Optional) -- Creates a hash that is automatically saved to a DynamoDB table. It is recommended to keep halt_on_error=true when using a shared state. Locking can be one of (:manual :auto :none).
|
98
|
-
#remote_state_dynamodb table_name: 'mytable', region: 'us-east-1', force_creation: true, halt_on_error: true, locking: :auto
|
99
|
-
end
|
100
|
-
|
101
|
-
#########################
|
102
|
-
## Command Declaration ##
|
103
|
-
#########################
|
104
|
-
class Test < Rbcli::Command # Declare a new command by subclassing Rbcli::Command
|
105
|
-
description 'This is a short description.' # (Required) Short description for the global help
|
106
|
-
usage 'This is some really long usage text description!' # (Required) Long description for the command-specific help
|
107
|
-
parameter :force, 'Force testing', type: :boolean, default: false, required: false # (Optional, Multiple) Add a command-specific CLI parameter. Can be called multiple times
|
108
|
-
|
109
|
-
config_defaults 'defaults.yml' # (Optional, Multiple) Load a YAML file as part of the default config. This can be called multiple times, and the YAML files will be merged. User config is generated from these
|
110
|
-
config_default :myopt2, description: 'Testing this again', default: true # (Optional, Multiple) Specify an individual configuration parameter and set a default value. These will also be included in generated user config
|
111
|
-
|
112
|
-
extern path: 'env | grep "^__PARAMS\|^__ARGS\|^__GLOBAL\|^__CONFIG"', envvars: {MYVAR: 'some_value'} # (Required unless `action` defined) Runs a given application, with optional environment variables, when the user runs the command.
|
113
|
-
extern envvars: {MY_OTHER_VAR: 'another_value'} do |params, args, global_opts, config| # Alternate usage. Supplying a block instead of a path allows us to modify the command based on the arguments and configuration supplied by the user.
|
114
|
-
"echo #{params[:force].to_s}__YESSS!!!"
|
115
|
-
end
|
116
|
-
|
117
|
-
action do |params, args, global_opts, config| # (Required unless `extern` defined) Block to execute if the command is called.
|
118
|
-
Rbcli::log.info { 'These logs can go to STDERR, STDOUT, or a file' } # Example log. Interface is identical to Ruby's logger
|
119
|
-
puts "\nArgs:\n#{args}" # Arguments that came after the command on the CLI (i.e.: `mytool test bar baz` will yield args=['bar', 'baz'])
|
120
|
-
puts "Params:\n#{params}" # Parameters, as described through the option statements above
|
121
|
-
puts "Global opts:\n#{global_opts}" # Global Parameters, as descirbed in the Configurate section
|
122
|
-
puts "Config:\n#{config}" # Config file values
|
123
|
-
puts "LocalState:\n#{Rbcli.local_state}" # Local persistent state storage (when available) -- if unsure use Rbcli.local_state.nil?
|
124
|
-
puts "RemoteState:\n#{Rbcli.remote_state}" # Remote persistent state storage (when available) -- if unsure use Rbcli.remote_state.nil?
|
125
|
-
puts "\nDone!!!"
|
126
|
-
end
|
127
|
-
end
|
128
|
-
|
129
|
-
#####################
|
130
|
-
## Parse Statement ##
|
131
|
-
#####################
|
132
|
-
Rbcli.parse # Parse CLI and execute
|
data/skeletons/mini/executable
DELETED
@@ -1,247 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
|
3
|
-
#########################################################
|
4
|
-
### <%= @vars[:cmdname] %>
|
5
|
-
#######
|
6
|
-
## This is the main executable for <%= @vars[:cmdname] %>.
|
7
|
-
## It's job is to load and execute the application.
|
8
|
-
#########################################################
|
9
|
-
|
10
|
-
require 'bundler/inline'
|
11
|
-
gemfile do
|
12
|
-
source 'https://rubygems.org'
|
13
|
-
ruby ">= <%= RUBY_VERSION %>"
|
14
|
-
gem 'rbcli', '>= <%= @vars[:rbcli_version] %>', require: true
|
15
|
-
end
|
16
|
-
|
17
|
-
#########################
|
18
|
-
## Configuration Block ##
|
19
|
-
#########################
|
20
|
-
# This block is where rbcli is configured.
|
21
|
-
# Any options marked as Optional can be commented out.
|
22
|
-
# Options marked as Multiple can be declared multiple times.
|
23
|
-
#########################
|
24
|
-
|
25
|
-
Rbcli::Configurate.me do
|
26
|
-
|
27
|
-
####
|
28
|
-
# GENERAL
|
29
|
-
###
|
30
|
-
# These parameters are for genreal information about your application.
|
31
|
-
###
|
32
|
-
|
33
|
-
## Script Name -- (Required) -- This line identifies the tool's executable on the command line.
|
34
|
-
# To change it, rename this file to the command you want and this will pick up that name automatically.
|
35
|
-
# You can change it manually if needed, but this should work for most cases.
|
36
|
-
scriptname File.basename(__FILE__)
|
37
|
-
|
38
|
-
## Version Number -- (Required)
|
39
|
-
version '0.1.0'
|
40
|
-
|
41
|
-
## Description -- (Requierd) -- A description that will appear when the user looks at the help with -h. This can be as long as needed.
|
42
|
-
description %q{<%= @vars[:description] %>}
|
43
|
-
|
44
|
-
|
45
|
-
####
|
46
|
-
# LOGGING
|
47
|
-
###
|
48
|
-
# These parameters set the default logging parameters for your applicaiton. Note that a user
|
49
|
-
# can override these settings by modifying their local configuration.
|
50
|
-
# If either option is set to nil, or they are not provided, logging is disabled.
|
51
|
-
###
|
52
|
-
|
53
|
-
## Log Target -- (Optional) -- Set the target for logs.
|
54
|
-
# Valid values are nil, 'STDOUT', 'STDERR', or a file path (as strings).
|
55
|
-
# Default is disabled (nil).
|
56
|
-
log_target nil
|
57
|
-
|
58
|
-
## Log Level -- (Optional) -- Set the default log_level for users.
|
59
|
-
# Valid values are nil, 0-5, or DEBUG < INFO < WARN < ERROR < FATAL < UNKNOWN.
|
60
|
-
# Default is disabled (nil).
|
61
|
-
log_level nil
|
62
|
-
|
63
|
-
|
64
|
-
####
|
65
|
-
# USER CONFIGURATION MANAGEMENT
|
66
|
-
###
|
67
|
-
# RBCli allows you to create a configuration file that your users can modify.
|
68
|
-
# Users will be able to generate their own file by running your tool with the `-g` option.
|
69
|
-
# To disable this feature, comment out the `config_userfile` line below.
|
70
|
-
###
|
71
|
-
|
72
|
-
## Config Userfile -- (Optional) -- Set location of user's config file.
|
73
|
-
#
|
74
|
-
# config_userfile <path>, merge_defaults: <optional: (true|false), default: true>, required: <optional: (true|false, default: false)
|
75
|
-
#
|
76
|
-
# If merge_defaults=true, default settings override user settings.
|
77
|
-
# If false, defaults set here are not loaded at all, and the user is required to set them.
|
78
|
-
# If required=true, application will not run if file does not exist.
|
79
|
-
config_userfile '~/.<%= @vars[:cmdname] %>', merge_defaults: true, required: false
|
80
|
-
|
81
|
-
## Config Defaults -- (Optional, Multiple) -- Load a YAML file as part of the default config.
|
82
|
-
# This can be called multiple times, and the YAML files will be merged. User config is generated from these files.
|
83
|
-
# TODO: This line is not needed when using RBCli in standard mode. YAML files go in the `user_configs` directory instead.
|
84
|
-
#config_defaults 'defaults.yml'
|
85
|
-
|
86
|
-
## Config Default -- (Optional, Multiple) -- Specify an individual configuration parameter and set a default value.
|
87
|
-
# These will be included in generated user config.
|
88
|
-
config_default :myopt, description: 'Testing this', default: true
|
89
|
-
|
90
|
-
|
91
|
-
####
|
92
|
-
# AUTOUPDATE
|
93
|
-
###
|
94
|
-
# RBCli can notify users when you have an update to your application.
|
95
|
-
# This requires your application to be published either on Rubygems.org, Github, or Github Enterprise.
|
96
|
-
# Note that only one can be enabled at a time.
|
97
|
-
# For more details on each integration, see below.
|
98
|
-
###
|
99
|
-
|
100
|
-
## Autoupdate, Github -- (Optional) -- Check for updates to this application at a GitHub repo.
|
101
|
-
# The repo should use version number tags in accordance to Github's best practices: https://help.github.com/articles/creating-releases/
|
102
|
-
#
|
103
|
-
# Note that the `access_token` can be overridden by the user via their configuration file, so it can be left as `nil`,
|
104
|
-
# which will require your users to enter their github tokens to use this feature.
|
105
|
-
# For instructions on generating a new access token, see: https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/
|
106
|
-
# The token is not needed if using a public repo.
|
107
|
-
#
|
108
|
-
# The `enterprise_hostname` setting allows you to point RBCli at a local GitHub Enterprise server.
|
109
|
-
#
|
110
|
-
# Setting `force_update: true` will halt execution if an update is available, forcing the user to update.
|
111
|
-
#
|
112
|
-
#autoupdate github_repo: '<your_user>/<your_repo>', access_token: nil, enterprise_hostname: nil, force_update: false
|
113
|
-
|
114
|
-
## Autoupdate, Rubygems.org -- (Optional) -- Check for updates to this application on Rubygems.org
|
115
|
-
#autoupdate gem: '<your_gem>', force_update: false
|
116
|
-
|
117
|
-
####
|
118
|
-
# Command Line Options
|
119
|
-
###
|
120
|
-
# Here you can set global options for users on the command line.
|
121
|
-
# RBCli supports commands with syntax as follows:
|
122
|
-
# toolname [options] command [parameters] [lineitem]
|
123
|
-
#
|
124
|
-
# Here you are defining the [options]. The parameters and lineitms (subcommands) are
|
125
|
-
# defined under their command blocks.
|
126
|
-
#
|
127
|
-
# The following types are supported: `:string`, `:boolean` or `:flag`, `:integer`, and `:float`
|
128
|
-
#
|
129
|
-
# If a default value is not set, it will default to `nil`.
|
130
|
-
#
|
131
|
-
# To specify multiple options, simply copy the line and modify as desired.
|
132
|
-
#
|
133
|
-
# Once parsed, option values will be placed in a hash where they can be accessed via their names as shown above where
|
134
|
-
# they are made available to your hooks and commands.
|
135
|
-
###
|
136
|
-
|
137
|
-
## Option -- (Optional, Multiple) -- Add a global CLI Option
|
138
|
-
option :name, 'Give me your name', type: :string, default: 'Foo', required: false, permitted: ['Jack', 'Jill']
|
139
|
-
end
|
140
|
-
|
141
|
-
###############################
|
142
|
-
## Hooks Configuration Block ##
|
143
|
-
###############################
|
144
|
-
# Here you can set hooks that will be run at specified points in the execution chain.
|
145
|
-
# Global CLI options are made available to many of the hooks, but command parameters and lineitems are not.
|
146
|
-
###############################
|
147
|
-
Rbcli::Configurate.hooks do
|
148
|
-
## Default Action -- (Optional) -- The default code to execute when no subcommand is given.
|
149
|
-
# If not present, the help is shown (same as -h)
|
150
|
-
default_action do |opts|
|
151
|
-
puts "Hello, #{opts[:name]}."
|
152
|
-
puts "To see the help, use -h"
|
153
|
-
end
|
154
|
-
|
155
|
-
## Pre-Execution Hook -- (Optional) -- Allows providing a block of code that runs _before_ all commands
|
156
|
-
pre_hook do |opts|
|
157
|
-
puts 'This is a pre-command hook. It executes before the command.'
|
158
|
-
end
|
159
|
-
|
160
|
-
## Post-Execution Hook -- (Optional) -- Allows providing a block of code that runs _after_ all commands
|
161
|
-
post_hook do |opts|
|
162
|
-
puts 'This is a post-command hook. It executes after the command.'
|
163
|
-
end
|
164
|
-
|
165
|
-
## First-Run Hook -- (Optional) -- Allows providing a block of code that executes the first time that the application is run on a given system.
|
166
|
-
# If `halt_after_running` is set to `true` then parsing will not continue after this code is executed. All subsequent runs will not execute this code.
|
167
|
-
# This feature is dependent on the Local State Storage system, and will not run without it.
|
168
|
-
first_run halt_after_running: false do
|
169
|
-
puts "This is the first time the mytool command is run! Don't forget to generate a config file with the `-g` option before continuing."
|
170
|
-
end
|
171
|
-
end
|
172
|
-
|
173
|
-
###############################
|
174
|
-
## State Configuration Block ##
|
175
|
-
###############################
|
176
|
-
# The state-related componets
|
177
|
-
# are configured here.
|
178
|
-
###############################
|
179
|
-
Rbcli::Configurate.storage do
|
180
|
-
###
|
181
|
-
# Local State Storage -- (Optional)
|
182
|
-
###
|
183
|
-
# Local state storage creates a hash that is automatically saved to a file locally for state persistance.
|
184
|
-
# It is accessible to all commands at: Rbcli.local_state[:yourkeyhere]
|
185
|
-
#
|
186
|
-
# Note that every update to the top level of this hash will trigger a save, and updating nested hashes will not.
|
187
|
-
# If you need to update nested hashes, you can trigger a save manually by calling `Rbcli.local_state.commit`.
|
188
|
-
# It is accessible to all commands at: Rbcli.local_state[:yourkeyhere]
|
189
|
-
# Please see the documentation for full usage details.
|
190
|
-
###
|
191
|
-
|
192
|
-
#local_state '/var/mytool/localstate', force_creation: true, halt_on_error: true # (Optional) Creates a hash that is automatically saved to a file locally for state persistance. It is accessible to all commands at Rbcli.localstate[:yourkeyhere]
|
193
|
-
|
194
|
-
|
195
|
-
###
|
196
|
-
# Remote State Storage
|
197
|
-
###
|
198
|
-
# Remote state storage creates a hash that is automatically saved to a remote database for state persistence.
|
199
|
-
# This state can be made unique to each user, or can be shared across different users of the tool.
|
200
|
-
#
|
201
|
-
# When sharing, locking should be set to `true`. Note that RBCli uses lazy-loaded, meaning the lock will
|
202
|
-
# only be acquired when absolutely needed. This behavior can be overridden manually if desired.
|
203
|
-
# For full usage details, see the documentation.
|
204
|
-
###
|
205
|
-
|
206
|
-
#remote_state_dynamodb table_name: 'mytable', region: 'us-east-1', force_creation: true, halt_on_error: true, locking: :auto # (Optional) Creates a hash that is automatically saved to a DynamoDB table. It is recommended to keep halt_on_error=true when using a shared state. Locking can be one of (:manual :auto :none) -- see the README for details
|
207
|
-
end
|
208
|
-
|
209
|
-
#########################
|
210
|
-
## Command Declaration ##
|
211
|
-
#########################
|
212
|
-
# With rbcli, commands are declared by subclassing
|
213
|
-
# from Rbcli::Command. The name of the class will be
|
214
|
-
# the command that is available to the user.
|
215
|
-
#########################
|
216
|
-
class Test < Rbcli::Command # Declare a new command by subclassing Rbcli::Command
|
217
|
-
description 'This is a short description.' # (Required) Short description for the global help
|
218
|
-
usage 'This is some really long usage text description!' # (Required) Long description for the command-specific help
|
219
|
-
parameter :force, 'Force testing', type: :boolean, default: false, required: false # (Optional, Multiple) Add a command-specific CLI parameter. Can be called multiple times
|
220
|
-
|
221
|
-
config_defaults 'defaults.yml' # (Optional, Multiple) Load a YAML file as part of the default config. This can be called multiple times, and the YAML files will be merged. User config is generated from these
|
222
|
-
config_default :myopt2, description: 'Testing this again', default: true # (Optional, Multiple) Specify an individual configuration parameter and set a default value. These will also be included in generated user config
|
223
|
-
|
224
|
-
extern path: 'env | grep "^__PARAMS\|^__ARGS\|^__GLOBAL\|^__CONFIG"', envvars: {MYVAR: 'some_value'} # (Required unless `action` defined) Runs a given application, with optional environment variables, when the user runs the command.
|
225
|
-
extern envvars: {MY_OTHER_VAR: 'another_value'} do |params, args, global_opts, config| # Alternate usage. Supplying a block instead of a path allows us to modify the command based on the arguments and configuration supplied by the user.
|
226
|
-
"echo #{params[:force].to_s}__YESSS!!!"
|
227
|
-
end
|
228
|
-
|
229
|
-
action do |params, args, global_opts, config| # (Required unless `extern` defined) Block to execute if the command is called.
|
230
|
-
Rbcli::log.info { 'These logs can go to STDERR, STDOUT, or a file' } # Example log. Interface is identical to Ruby's logger
|
231
|
-
puts "\nArgs:\n#{args}" # Arguments that came after the command on the CLI (i.e.: `mytool test bar baz` will yield args=['bar', 'baz'])
|
232
|
-
puts "Params:\n#{params}" # Parameters, as described through the option statements above
|
233
|
-
puts "Global opts:\n#{global_opts}" # Global Parameters, as descirbed in the Configurate section
|
234
|
-
puts "Config:\n#{config}" # Config file values
|
235
|
-
puts "LocalState:\n#{Rbcli.local_state}" # Local persistent state storage (when available) -- if unsure use Rbcli.local_state.nil?
|
236
|
-
puts "RemoteState:\n#{Rbcli.remote_state}" # Remote persistent state storage (when available) -- if unsure use Rbcli.remote_state.nil?
|
237
|
-
puts "\nDone!!!"
|
238
|
-
end
|
239
|
-
end
|
240
|
-
|
241
|
-
#####################
|
242
|
-
## Parse Statement ##
|
243
|
-
#####################
|
244
|
-
# When this statement is called, the CLI will be
|
245
|
-
# parsed and code executed.
|
246
|
-
#####################
|
247
|
-
Rbcli.parse # Parse CLI and execute
|
@@ -1,7 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<Settings><!--This file was automatically generated by Ruby plugin.
|
3
|
-
You are allowed to:
|
4
|
-
1. Remove rake task
|
5
|
-
2. Add existing rake tasks
|
6
|
-
To add existing rake tasks automatically delete this file and reload the project.
|
7
|
-
--><RakeGroup description="" fullCmd="" taksId="rake" /></Settings>
|
data/skeletons/project/.rbcli
DELETED
File without changes
|
data/skeletons/project/.rspec
DELETED
@@ -1,74 +0,0 @@
|
|
1
|
-
# Contributor Covenant Code of Conduct
|
2
|
-
|
3
|
-
## Our Pledge
|
4
|
-
|
5
|
-
In the interest of fostering an open and welcoming environment, we as
|
6
|
-
contributors and maintainers pledge to making participation in our project and
|
7
|
-
our community a harassment-free experience for everyone, regardless of age, body
|
8
|
-
size, disability, ethnicity, gender identity and expression, level of experience,
|
9
|
-
nationality, personal appearance, race, religion, or sexual identity and
|
10
|
-
orientation.
|
11
|
-
|
12
|
-
## Our Standards
|
13
|
-
|
14
|
-
Examples of behavior that contributes to creating a positive environment
|
15
|
-
include:
|
16
|
-
|
17
|
-
* Using welcoming and inclusive language
|
18
|
-
* Being respectful of differing viewpoints and experiences
|
19
|
-
* Gracefully accepting constructive criticism
|
20
|
-
* Focusing on what is best for the community
|
21
|
-
* Showing empathy towards other community members
|
22
|
-
|
23
|
-
Examples of unacceptable behavior by participants include:
|
24
|
-
|
25
|
-
* The use of sexualized language or imagery and unwelcome sexual attention or
|
26
|
-
advances
|
27
|
-
* Trolling, insulting/derogatory comments, and personal or political attacks
|
28
|
-
* Public or private harassment
|
29
|
-
* Publishing others' private information, such as a physical or electronic
|
30
|
-
address, without explicit permission
|
31
|
-
* Other conduct which could reasonably be considered inappropriate in a
|
32
|
-
professional setting
|
33
|
-
|
34
|
-
## Our Responsibilities
|
35
|
-
|
36
|
-
Project maintainers are responsible for clarifying the standards of acceptable
|
37
|
-
behavior and are expected to take appropriate and fair corrective action in
|
38
|
-
response to any instances of unacceptable behavior.
|
39
|
-
|
40
|
-
Project maintainers have the right and responsibility to remove, edit, or
|
41
|
-
reject comments, commits, code, wiki edits, issues, and other contributions
|
42
|
-
that are not aligned to this Code of Conduct, or to ban temporarily or
|
43
|
-
permanently any contributor for other behaviors that they deem inappropriate,
|
44
|
-
threatening, offensive, or harmful.
|
45
|
-
|
46
|
-
## Scope
|
47
|
-
|
48
|
-
This Code of Conduct applies both within project spaces and in public spaces
|
49
|
-
when an individual is representing the project or its community. Examples of
|
50
|
-
representing a project or community include using an official project e-mail
|
51
|
-
address, posting via an official social media account, or acting as an appointed
|
52
|
-
representative at an online or offline event. Representation of a project may be
|
53
|
-
further defined and clarified by project maintainers.
|
54
|
-
|
55
|
-
## Enforcement
|
56
|
-
|
57
|
-
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
58
|
-
reported by contacting the project team at andrew@blacknex.us. All
|
59
|
-
complaints will be reviewed and investigated and will result in a response that
|
60
|
-
is deemed necessary and appropriate to the circumstances. The project team is
|
61
|
-
obligated to maintain confidentiality with regard to the reporter of an incident.
|
62
|
-
Further details of specific enforcement policies may be posted separately.
|
63
|
-
|
64
|
-
Project maintainers who do not follow or enforce the Code of Conduct in good
|
65
|
-
faith may face temporary or permanent repercussions as determined by other
|
66
|
-
members of the project's leadership.
|
67
|
-
|
68
|
-
## Attribution
|
69
|
-
|
70
|
-
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
|
71
|
-
available at [http://contributor-covenant.org/version/1/4][version]
|
72
|
-
|
73
|
-
[homepage]: http://contributor-covenant.org
|
74
|
-
[version]: http://contributor-covenant.org/version/1/4/
|
data/skeletons/project/Gemfile
DELETED
data/skeletons/project/README.md
DELETED
@@ -1,46 +0,0 @@
|
|
1
|
-
# <%= @vars[:cmdname] %>
|
2
|
-
|
3
|
-
Welcome to your new application! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem.
|
4
|
-
|
5
|
-
You'll find your gem's Command Line entrypoint under the file `exe/<%= @vars[:cmdname] %>`, although you shouldn't need to edit this file. Instead, follow these steps to get up and running quickly:
|
6
|
-
|
7
|
-
* Review the configuration under the `config` directory
|
8
|
-
* Modify global CLI options under the `application/options.rb` file
|
9
|
-
* Generate a new command by running `rbcli generate -t command -n <name>`
|
10
|
-
* Modify the command's code under `application/commands/<name>.rb`
|
11
|
-
* Repeat the previous two steps until complete!
|
12
|
-
|
13
|
-
For more details, including advanced usage, please see the [RBCli documentation](https://github.com/akhoury6/rbcli).
|
14
|
-
|
15
|
-
TODO: Delete the text above and write your README!
|
16
|
-
|
17
|
-
## About
|
18
|
-
|
19
|
-
<%= @vars[:description] %>
|
20
|
-
|
21
|
-
## Installation
|
22
|
-
|
23
|
-
To install this application from source, clone this repo and run:
|
24
|
-
|
25
|
-
```bash
|
26
|
-
gem build <%= @vars[:cmdname] %>.gemspec
|
27
|
-
gem install <%= @vars[:cmdname] %>-*.gem
|
28
|
-
```
|
29
|
-
|
30
|
-
To install this application from Rubygems.org, run:
|
31
|
-
|
32
|
-
```bash
|
33
|
-
gem install <%= @vars[:cmdname] %>
|
34
|
-
```
|
35
|
-
|
36
|
-
## Development
|
37
|
-
|
38
|
-
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `config/version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
39
|
-
|
40
|
-
## Contributing
|
41
|
-
|
42
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/untitled. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
43
|
-
|
44
|
-
## Code of Conduct
|
45
|
-
|
46
|
-
Everyone interacting in the Untitled project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/<%= @vars[:cmdname] %>/blob/master/CODE_OF_CONDUCT.md).
|
data/skeletons/project/Rakefile
DELETED
@@ -1,28 +0,0 @@
|
|
1
|
-
#########################
|
2
|
-
## Command Declaration ##
|
3
|
-
#########################
|
4
|
-
# With rbcli, commands are declared by subclassing
|
5
|
-
# from Rbcli::Command. The name of the class will be
|
6
|
-
# the command that is available to the user.
|
7
|
-
#########################
|
8
|
-
class <%= @vars[:name].capitalize %> < Rbcli::Command # Declare a new command by subclassing Rbcli::Command
|
9
|
-
description '<%= @vars[:description] %>' # (Required) Short description for the global help
|
10
|
-
usage <<-EOF
|
11
|
-
<%= @vars[:usage_text] %>
|
12
|
-
EOF
|
13
|
-
parameter :force, 'Force testing', short: 'f', type: :boolean, default: false, required: false, prompt: 'Force testing?' # (Optional, Multiple) Add a command-specific CLI parameter. Uses the same format as options (see application/options.rb for help)
|
14
|
-
|
15
|
-
config_default :myopt2, description: 'My Option #2', default: 'Default Value Here' # (Optional, Multiple) Specify an individual configuration parameter and set a default value. These will also be included in generated user config.
|
16
|
-
# Alternatively, you can simply create a yaml file in the `default_user_configs` directory in your project that specifies the default values of all options
|
17
|
-
|
18
|
-
action do |params, args, global_opts, config| # (Required) Block to execute if the command is called.
|
19
|
-
Rbcli::log.info { 'These logs can go to STDERR, STDOUT, or a file' } # Example log. Interface is identical to Ruby's logger
|
20
|
-
puts "\nArgs:\n#{args}" # Arguments that came after the command on the CLI (i.e.: `mytool test bar baz` will yield args=['bar', 'baz'])
|
21
|
-
puts "Params:\n#{params}" # Parameters, as described through the option statements above
|
22
|
-
puts "Global opts:\n#{global_opts}" # Global Parameters, as descirbed in the Configurate section
|
23
|
-
puts "Config:\n#{config}" # Config file values
|
24
|
-
puts "LocalState:\n#{Rbcli.local_state}" # Local persistent state storage (when available) -- if unsure use Rbcli.local_state.nil?
|
25
|
-
puts "RemoteState:\n#{Rbcli.remote_state}" # Remote persistent state storage (when available) -- if unsure use Rbcli.remote_state.nil?
|
26
|
-
puts "\nDone!!!"
|
27
|
-
end
|
28
|
-
end
|