jets 0.5.0 → 0.5.1
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/.codebuild/scripts/install-java.sh +7 -5
- data/CHANGELOG.md +5 -0
- data/Gemfile.lock +2 -2
- data/README.md +1 -1
- data/jets.gemspec +3 -1
- data/lib/jets/commands/templates/skeleton/config/application.rb.tt +1 -1
- data/lib/jets/dotenv.rb +1 -1
- data/lib/jets/internal/app/jobs/jets/preheat_job.rb +0 -1
- data/lib/jets/version.rb +1 -1
- data/vendor/dynomite/CHANGELOG.md +34 -0
- data/vendor/dynomite/Gemfile +6 -0
- data/vendor/dynomite/README.md +141 -0
- data/vendor/dynomite/Rakefile +2 -0
- data/vendor/dynomite/bin/console +14 -0
- data/vendor/dynomite/bin/setup +8 -0
- data/vendor/dynomite/docs/migrations/long-example.rb +123 -0
- data/vendor/dynomite/docs/migrations/short-example.rb +36 -0
- data/vendor/dynomite/dynomite.gemspec +29 -0
- data/vendor/dynomite/lib/dynomite.rb +23 -0
- data/vendor/dynomite/lib/dynomite/core.rb +25 -0
- data/vendor/dynomite/lib/dynomite/db_config.rb +101 -0
- data/vendor/dynomite/lib/dynomite/erb.rb +53 -0
- data/vendor/dynomite/lib/dynomite/item.rb +291 -0
- data/vendor/dynomite/lib/dynomite/log.rb +15 -0
- data/vendor/dynomite/lib/dynomite/migration.rb +27 -0
- data/vendor/dynomite/lib/dynomite/migration/common.rb +86 -0
- data/vendor/dynomite/lib/dynomite/migration/dsl.rb +172 -0
- data/vendor/dynomite/lib/dynomite/migration/dsl/base_secondary_index.rb +72 -0
- data/vendor/dynomite/lib/dynomite/migration/dsl/global_secondary_index.rb +4 -0
- data/vendor/dynomite/lib/dynomite/migration/dsl/local_secondary_index.rb +8 -0
- data/vendor/dynomite/lib/dynomite/migration/executor.rb +30 -0
- data/vendor/dynomite/lib/dynomite/migration/generator.rb +68 -0
- data/vendor/dynomite/lib/dynomite/migration/templates/create_table.rb +32 -0
- data/vendor/dynomite/lib/dynomite/migration/templates/update_table.rb +26 -0
- data/vendor/dynomite/lib/dynomite/version.rb +3 -0
- data/vendor/dynomite/spec/fixtures/app_root/config/dynamodb.yml +7 -0
- data/vendor/dynomite/spec/lib/dynomite/item_spec.rb +89 -0
- data/vendor/dynomite/spec/lib/dynomite/migration/dsl/global_secondary_index_spec.rb +106 -0
- data/vendor/dynomite/spec/lib/dynomite/migration/dsl/local_secondary_index_spec.rb +72 -0
- data/vendor/dynomite/spec/lib/dynomite/migration/dsl_spec.rb +76 -0
- data/vendor/dynomite/spec/lib/dynomite/migration/generator_spec.rb +23 -0
- data/vendor/dynomite/spec/lib/dynomite/migration_spec.rb +60 -0
- data/vendor/dynomite/spec/spec_helper.rb +110 -0
- data/vendor/lambdagem/CHANGELOG.md +24 -0
- data/vendor/lambdagem/Gemfile +6 -0
- data/vendor/lambdagem/Gemfile.lock +73 -0
- data/vendor/lambdagem/Guardfile +12 -0
- data/vendor/lambdagem/LICENSE.txt +22 -0
- data/vendor/lambdagem/README.md +143 -0
- data/vendor/lambdagem/Rakefile +6 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-10.0.0/byebug/byebug.so +0 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-10.0.0/gem.build_complete +0 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-10.0.0/gem_make.out +19 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/LICENSE +23 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/exe/byebug +6 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/Makefile +263 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/breakpoint.c +517 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/breakpoint.o +0 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/byebug.c +905 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/byebug.h +143 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/byebug.o +0 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/byebug.so +0 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/context.c +673 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/context.o +0 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/extconf.rb +12 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/locker.c +96 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/locker.o +0 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/threads.c +230 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/ext/byebug/threads.o +0 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug.rb +3 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/attacher.rb +48 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/breakpoint.rb +111 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/byebug.so +0 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/command.rb +111 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/command_list.rb +34 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands.rb +39 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/break.rb +116 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/catch.rb +82 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/condition.rb +57 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/continue.rb +50 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/debug.rb +38 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/delete.rb +57 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/disable.rb +33 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/disable/breakpoints.rb +42 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/disable/display.rb +43 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/display.rb +66 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/down.rb +45 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/edit.rb +68 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/enable.rb +33 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/enable/breakpoints.rb +42 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/enable/display.rb +43 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/finish.rb +57 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/frame.rb +57 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/help.rb +64 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/history.rb +39 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info.rb +37 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/breakpoints.rb +67 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/display.rb +51 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/file.rb +82 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/line.rb +35 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/info/program.rb +49 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/interrupt.rb +34 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/irb.rb +52 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/kill.rb +47 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/list.rb +159 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/method.rb +53 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/next.rb +40 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/pry.rb +43 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/quit.rb +42 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/restart.rb +64 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/save.rb +72 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/set.rb +79 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/show.rb +45 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/source.rb +42 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/step.rb +40 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread.rb +34 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/current.rb +37 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/list.rb +43 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/resume.rb +47 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/stop.rb +43 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/thread/switch.rb +46 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/tracevar.rb +57 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/undisplay.rb +52 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/untracevar.rb +36 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/up.rb +45 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var.rb +37 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/all.rb +41 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/args.rb +39 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/const.rb +51 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/global.rb +37 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/instance.rb +39 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/var/local.rb +39 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/commands/where.rb +53 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/context.rb +157 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/core.rb +114 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/errors.rb +29 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/frame.rb +185 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/bin.rb +47 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/eval.rb +126 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/file.rb +63 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/frame.rb +75 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/parse.rb +77 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/path.rb +40 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/reflection.rb +19 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/string.rb +36 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/thread.rb +67 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/toggle.rb +64 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/helpers/var.rb +54 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/history.rb +130 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interface.rb +146 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interfaces/local_interface.rb +44 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interfaces/remote_interface.rb +50 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interfaces/script_interface.rb +32 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/interfaces/test_interface.rb +67 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/option_setter.rb +95 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/printers/base.rb +69 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/printers/plain.rb +44 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/printers/texts/base.yml +115 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/printers/texts/plain.yml +33 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/processors/command_processor.rb +173 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/processors/control_processor.rb +24 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/processors/post_mortem_processor.rb +18 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/processors/script_processor.rb +49 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/remote.rb +85 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/remote/client.rb +55 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/remote/server.rb +47 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/runner.rb +198 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/setting.rb +79 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/autoirb.rb +29 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/autolist.rb +29 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/autopry.rb +29 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/autosave.rb +17 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/basename.rb +16 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/callstyle.rb +20 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/fullpath.rb +16 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/histfile.rb +20 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/histsize.rb +20 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/linetrace.rb +22 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/listsize.rb +21 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/post_mortem.rb +27 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/savefile.rb +20 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/stack_on_error.rb +15 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/settings/width.rb +20 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/source_file_formatter.rb +71 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/subcommands.rb +54 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/gems/byebug-10.0.0/lib/byebug/version.rb +8 -0
- data/vendor/lambdagem/bundled/gems/ruby/2.5.0/specifications/byebug-10.0.0.gemspec +39 -0
- data/vendor/lambdagem/exe/lambdagem +14 -0
- data/vendor/lambdagem/lambdagem.gemspec +32 -0
- data/vendor/lambdagem/lib/lambdagem.rb +16 -0
- data/vendor/lambdagem/lib/lambdagem/base.rb +51 -0
- data/vendor/lambdagem/lib/lambdagem/build.rb +202 -0
- data/vendor/lambdagem/lib/lambdagem/clean.rb +8 -0
- data/vendor/lambdagem/lib/lambdagem/cli.rb +62 -0
- data/vendor/lambdagem/lib/lambdagem/command.rb +38 -0
- data/vendor/lambdagem/lib/lambdagem/exist.rb +50 -0
- data/vendor/lambdagem/lib/lambdagem/extract.rb +8 -0
- data/vendor/lambdagem/lib/lambdagem/extract/base.rb +62 -0
- data/vendor/lambdagem/lib/lambdagem/extract/class_methods.rb +50 -0
- data/vendor/lambdagem/lib/lambdagem/extract/gem.rb +95 -0
- data/vendor/lambdagem/lib/lambdagem/extract/ruby.rb +62 -0
- data/vendor/lambdagem/lib/lambdagem/help.rb +9 -0
- data/vendor/lambdagem/lib/lambdagem/help/all.md +11 -0
- data/vendor/lambdagem/lib/lambdagem/help/build.md +14 -0
- data/vendor/lambdagem/lib/lambdagem/help/clean.md +5 -0
- data/vendor/lambdagem/lib/lambdagem/help/extract_gem.md +5 -0
- data/vendor/lambdagem/lib/lambdagem/help/extract_ruby.md +5 -0
- data/vendor/lambdagem/lib/lambdagem/help/package.md +20 -0
- data/vendor/lambdagem/lib/lambdagem/help/upload.md +7 -0
- data/vendor/lambdagem/lib/lambdagem/package.rb +33 -0
- data/vendor/lambdagem/lib/lambdagem/upload.rb +39 -0
- data/vendor/lambdagem/lib/lambdagem/version.rb +3 -0
- data/vendor/lambdagem/spec/lib/build_spec.rb +32 -0
- data/vendor/lambdagem/spec/lib/cli_spec.rb +24 -0
- data/vendor/lambdagem/spec/lib/upload_spec.rb +25 -0
- data/vendor/lambdagem/spec/spec_helper.rb +24 -0
- metadata +212 -2
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "forwardable"
|
|
4
|
+
|
|
5
|
+
require "byebug/helpers/reflection"
|
|
6
|
+
require "byebug/command_list"
|
|
7
|
+
|
|
8
|
+
module Byebug
|
|
9
|
+
#
|
|
10
|
+
# Subcommand additions.
|
|
11
|
+
#
|
|
12
|
+
module Subcommands
|
|
13
|
+
def self.included(command)
|
|
14
|
+
command.extend(ClassMethods)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
extend Forwardable
|
|
18
|
+
def_delegators "self.class", :subcommand_list
|
|
19
|
+
|
|
20
|
+
#
|
|
21
|
+
# Delegates to subcommands or prints help if no subcommand specified.
|
|
22
|
+
#
|
|
23
|
+
def execute
|
|
24
|
+
subcmd_name = @match[1]
|
|
25
|
+
return puts(help) unless subcmd_name
|
|
26
|
+
|
|
27
|
+
subcmd = subcommand_list.match(subcmd_name)
|
|
28
|
+
raise CommandNotFound.new(subcmd_name, self.class) unless subcmd
|
|
29
|
+
|
|
30
|
+
subcmd.new(processor, arguments).execute
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
#
|
|
34
|
+
# Class methods added to subcommands
|
|
35
|
+
#
|
|
36
|
+
module ClassMethods
|
|
37
|
+
include Helpers::ReflectionHelper
|
|
38
|
+
|
|
39
|
+
#
|
|
40
|
+
# Default help text for a command with subcommands
|
|
41
|
+
#
|
|
42
|
+
def help
|
|
43
|
+
super + subcommand_list.to_s
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
#
|
|
47
|
+
# Command's subcommands.
|
|
48
|
+
#
|
|
49
|
+
def subcommand_list
|
|
50
|
+
@subcommand_list ||= CommandList.new(commands)
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
|
2
|
+
# stub: byebug 10.0.0 ruby lib
|
|
3
|
+
# stub: ext/byebug/extconf.rb
|
|
4
|
+
|
|
5
|
+
Gem::Specification.new do |s|
|
|
6
|
+
s.name = "byebug".freeze
|
|
7
|
+
s.version = "10.0.0"
|
|
8
|
+
|
|
9
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
|
|
10
|
+
s.require_paths = ["lib".freeze]
|
|
11
|
+
s.authors = ["David Rodriguez".freeze, "Kent Sibilev".freeze, "Mark Moseley".freeze]
|
|
12
|
+
s.bindir = "exe".freeze
|
|
13
|
+
s.date = "2018-01-26"
|
|
14
|
+
s.description = "Byebug is a Ruby debugger. It's implemented using the\n TracePoint C API for execution control and the Debug Inspector C API for\n call stack navigation. The core component provides support that front-ends\n can build on. It provides breakpoint handling and bindings for stack frames\n among other things and it comes with an easy to use command line interface.".freeze
|
|
15
|
+
s.email = "deivid.rodriguez@mail.com".freeze
|
|
16
|
+
s.executables = ["byebug".freeze]
|
|
17
|
+
s.extensions = ["ext/byebug/extconf.rb".freeze]
|
|
18
|
+
s.extra_rdoc_files = ["CHANGELOG.md".freeze, "CONTRIBUTING.md".freeze, "README.md".freeze, "GUIDE.md".freeze]
|
|
19
|
+
s.files = ["CHANGELOG.md".freeze, "CONTRIBUTING.md".freeze, "GUIDE.md".freeze, "README.md".freeze, "exe/byebug".freeze, "ext/byebug/extconf.rb".freeze]
|
|
20
|
+
s.homepage = "http://github.com/deivid-rodriguez/byebug".freeze
|
|
21
|
+
s.licenses = ["BSD-2-Clause".freeze]
|
|
22
|
+
s.required_ruby_version = Gem::Requirement.new(">= 2.2.0".freeze)
|
|
23
|
+
s.rubygems_version = "2.7.3".freeze
|
|
24
|
+
s.summary = "Ruby fast debugger - base + CLI".freeze
|
|
25
|
+
|
|
26
|
+
s.installed_by_version = "2.7.3" if s.respond_to? :installed_by_version
|
|
27
|
+
|
|
28
|
+
if s.respond_to? :specification_version then
|
|
29
|
+
s.specification_version = 4
|
|
30
|
+
|
|
31
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
|
32
|
+
s.add_development_dependency(%q<bundler>.freeze, ["~> 1.7"])
|
|
33
|
+
else
|
|
34
|
+
s.add_dependency(%q<bundler>.freeze, ["~> 1.7"])
|
|
35
|
+
end
|
|
36
|
+
else
|
|
37
|
+
s.add_dependency(%q<bundler>.freeze, ["~> 1.7"])
|
|
38
|
+
end
|
|
39
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
# Trap ^C
|
|
4
|
+
Signal.trap("INT") {
|
|
5
|
+
puts "\nCtrl-C detected. Exiting..."
|
|
6
|
+
sleep 1
|
|
7
|
+
exit
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
$:.unshift(File.expand_path("../../lib", __FILE__))
|
|
11
|
+
require "lambdagem"
|
|
12
|
+
require "lambdagem/cli"
|
|
13
|
+
|
|
14
|
+
Lambdagem::CLI.start(ARGV)
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
lib = File.expand_path("../lib", __FILE__)
|
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
|
+
require "lambdagem/version"
|
|
5
|
+
|
|
6
|
+
Gem::Specification.new do |spec|
|
|
7
|
+
spec.name = "lambdagem"
|
|
8
|
+
spec.version = Lambdagem::VERSION
|
|
9
|
+
spec.authors = ["Tung Nguyen"]
|
|
10
|
+
spec.email = ["tongueroo@gmail.com"]
|
|
11
|
+
spec.description = %q{Gem builder}
|
|
12
|
+
spec.summary = %q{Gem builder}
|
|
13
|
+
spec.homepage = "https://github.com/tongueroo/lambdagem"
|
|
14
|
+
spec.license = "MIT"
|
|
15
|
+
|
|
16
|
+
spec.files = `git ls-files`.split($/)
|
|
17
|
+
spec.bindir = 'exe'
|
|
18
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
19
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
20
|
+
spec.require_paths = ["lib"]
|
|
21
|
+
|
|
22
|
+
spec.add_dependency "thor"
|
|
23
|
+
spec.add_dependency "hashie"
|
|
24
|
+
spec.add_dependency "colorize"
|
|
25
|
+
spec.add_dependency "aws-sdk-s3"
|
|
26
|
+
spec.add_dependency "gems"
|
|
27
|
+
|
|
28
|
+
spec.add_development_dependency "bundler"
|
|
29
|
+
spec.add_development_dependency "rake"
|
|
30
|
+
spec.add_development_dependency "rspec"
|
|
31
|
+
spec.add_development_dependency "byebug"
|
|
32
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
$:.unshift(File.expand_path("../", __FILE__))
|
|
2
|
+
require "lambdagem/version"
|
|
3
|
+
require "byebug" if ENV['USER'] == 'tung'
|
|
4
|
+
|
|
5
|
+
module Lambdagem
|
|
6
|
+
autoload :Command, "lambdagem/command"
|
|
7
|
+
autoload :Help, "lambdagem/help"
|
|
8
|
+
autoload :CLI, "lambdagem/cli"
|
|
9
|
+
autoload :Base, "lambdagem/base"
|
|
10
|
+
autoload :Build, "lambdagem/build"
|
|
11
|
+
autoload :Package, "lambdagem/package"
|
|
12
|
+
autoload :Upload, "lambdagem/upload"
|
|
13
|
+
autoload :Extract, "lambdagem/extract"
|
|
14
|
+
autoload :Clean, "lambdagem/clean"
|
|
15
|
+
autoload :Exist, "lambdagem/exist"
|
|
16
|
+
end
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
require 'fileutils'
|
|
2
|
+
require 'colorize'
|
|
3
|
+
|
|
4
|
+
class Lambdagem::Base
|
|
5
|
+
attr_reader :s3_bucket, :lambdagems_url
|
|
6
|
+
def initialize(name, options={})
|
|
7
|
+
@name = name
|
|
8
|
+
@options = options
|
|
9
|
+
|
|
10
|
+
@build_root = options[:build_root] || "/tmp/lambdagem"
|
|
11
|
+
@artifacts_root = "#{@build_root}/artifacts"
|
|
12
|
+
@s3_bucket = options[:s3] || 'lambdagems'
|
|
13
|
+
@lambdagems_url = options[:lambdagems_url] || "https://lambdagems.com"
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
# The gems are stored in a ruby version folder that always has a patch version of
|
|
17
|
+
# 0. So 2.5.1 => 2.5.0
|
|
18
|
+
def minor_ruby_version
|
|
19
|
+
major, minor = RUBY_VERSION.split('.')[0..1]
|
|
20
|
+
[major, minor, "0"].join('.')
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
# The ruby version folder always has a 0 for the patch version.
|
|
24
|
+
# Example: 2.4.2 => 2.4.0
|
|
25
|
+
def ruby_version_folder
|
|
26
|
+
major, minor, patch = RUBY_VERSION.split('.')
|
|
27
|
+
[major, minor, '0'].join('.')
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
# Current jets version is 2.5.0, will use that for gems and ruby
|
|
31
|
+
# when users are using ruby 2.5.1.
|
|
32
|
+
# When the jets ruby version is updated we update this also.
|
|
33
|
+
def jets_ruby_version
|
|
34
|
+
major, minor, patch = RUBY_VERSION.split('.')
|
|
35
|
+
[major, minor, '0'].join('.')
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Input: byebug-9.1.0
|
|
39
|
+
# Output: byebug
|
|
40
|
+
def gem_name
|
|
41
|
+
@name.gsub(/-(\d+\.\d+\.\d+.*)/,'')
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# Input: byebug-9.1.0
|
|
45
|
+
# Output: 9.1.0
|
|
46
|
+
# Can return nil if version not found
|
|
47
|
+
def gem_version
|
|
48
|
+
md = @name.match(/-(\d+\.\d+\.\d+.*)/)
|
|
49
|
+
md[1] if md
|
|
50
|
+
end
|
|
51
|
+
end
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
require 'bundler'
|
|
2
|
+
|
|
3
|
+
# Terms:
|
|
4
|
+
# name: the gem name the user passed in, could have version number could not
|
|
5
|
+
# full_gem_name: has both gem name and version number. IE: byebug-0.9.1
|
|
6
|
+
# gem_name: strips the version. IE: byebug
|
|
7
|
+
# gem_version: version only. IE: 0.9.1
|
|
8
|
+
class Lambdagem::Build < Lambdagem::Base
|
|
9
|
+
def build
|
|
10
|
+
puts "Building #{@name} in #{@build_root}"
|
|
11
|
+
return if @options[:noop]
|
|
12
|
+
|
|
13
|
+
clean
|
|
14
|
+
create_gemfile
|
|
15
|
+
bundle_install
|
|
16
|
+
# upload not just the top-level gem but also the dependent gems
|
|
17
|
+
# in case there are dependent gems that also require compilation
|
|
18
|
+
all_gems.each do |full_gem_name|
|
|
19
|
+
artifact_location = prepare_gem(full_gem_name)
|
|
20
|
+
# artifact is going to be tmp/artifacts/bundled
|
|
21
|
+
# the article contains the bundled directory so we can expand it all
|
|
22
|
+
# out together.
|
|
23
|
+
puts "Artifacts location: #{artifact_location}"
|
|
24
|
+
puts "Gem artifact path: #{gem_artifact_path(full_gem_name)}"
|
|
25
|
+
puts "If you have system library dependencies add them under the artifacts location before running: lambdagem package #{full_gem_name}"
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def all_gems
|
|
30
|
+
names = all_extensions.map { |path| File.basename(path) }
|
|
31
|
+
names.uniq
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# Finds the paths that have compiled extensions.
|
|
35
|
+
#
|
|
36
|
+
# Examples of return:
|
|
37
|
+
# linux:
|
|
38
|
+
# ["tmp/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-9.1.0"]
|
|
39
|
+
# macosx:
|
|
40
|
+
# ["tmp/bundled/gems/ruby/2.4.0/extensions/x86_64-darwin-16/2.4.0-static/byebug-9.1.0"]
|
|
41
|
+
def all_extensions
|
|
42
|
+
Dir.glob("#{@build_root}/bundled/gems/ruby/*/extensions/*/*/*").to_a.uniq
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
def clean
|
|
46
|
+
FileUtils.rm_rf(@build_root)
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
def create_gemfile
|
|
50
|
+
content =<<-EOL
|
|
51
|
+
source "https://rubygems.org"
|
|
52
|
+
EOL
|
|
53
|
+
if gem_version
|
|
54
|
+
content << %Q|gem "#{gem_name}", "#{gem_version}"\n|
|
|
55
|
+
else
|
|
56
|
+
content << %Q|gem "#{gem_name}"\n|
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
gemfile_path = "#{@build_root}/Gemfile"
|
|
60
|
+
FileUtils.mkdir_p(File.dirname(gemfile_path))
|
|
61
|
+
IO.write(gemfile_path, content)
|
|
62
|
+
puts "Generated: #{gemfile_path}"
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
def bundle_install
|
|
66
|
+
Bundler.with_clean_env do
|
|
67
|
+
command = "cd #{@build_root} && bundle install --path bundled/gems"
|
|
68
|
+
puts "=> #{command}"
|
|
69
|
+
success = system(command)
|
|
70
|
+
abort('Bundle install failed, exiting.') unless success
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
# Do not want to copy everything underneath bundled/gems/ruby/2.5.0 or else
|
|
75
|
+
# we end up with a bunch of extra files that might screw up an current
|
|
76
|
+
# install of ruby when we extract out the files and overwrite things.
|
|
77
|
+
#
|
|
78
|
+
# Instead only copy the folders that we want to be a part of the tarball
|
|
79
|
+
# into another directory first. This is called the artifacts directory.
|
|
80
|
+
#
|
|
81
|
+
# Example of the 2 folder we want to keep is:
|
|
82
|
+
#
|
|
83
|
+
# tmp/bundled/gems/ruby/2.5.0/gems/byebug-9.1.0
|
|
84
|
+
# tmp/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-9.1.0
|
|
85
|
+
#
|
|
86
|
+
# Returns the path to the ruby minor version folder that contains all the of gem.
|
|
87
|
+
# Example: tmp/artifacts/2.5.0
|
|
88
|
+
def prepare_gem(full_gem_name)
|
|
89
|
+
gem_path = built_gem_path(full_gem_name)
|
|
90
|
+
ext_path = built_ext_path(full_gem_name)
|
|
91
|
+
copy_artifacts(gem_path)
|
|
92
|
+
copy_artifacts(ext_path) if ext_path
|
|
93
|
+
# copy specifications: required for bundler to work
|
|
94
|
+
specs_path = specifications_path(full_gem_name)
|
|
95
|
+
copy_spec(specs_path)
|
|
96
|
+
|
|
97
|
+
tidy_gem(full_gem_name)
|
|
98
|
+
|
|
99
|
+
"#{@artifacts_root}/#{full_gem_name}/bundled"
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
# Clean up some unneeded files to try to keep the package size down
|
|
103
|
+
def tidy_gem(full_gem_name)
|
|
104
|
+
gem_artifact_path = gem_artifact_path(full_gem_name)
|
|
105
|
+
|
|
106
|
+
# remove top level tests and cache folders
|
|
107
|
+
Dir.glob("#{gem_artifact_path}/*").each do |path|
|
|
108
|
+
next unless File.directory?(path)
|
|
109
|
+
folder = File.basename(path)
|
|
110
|
+
if %w[test tests spec features benchmark cache doc].include?(folder)
|
|
111
|
+
FileUtils.rm_rf(path)
|
|
112
|
+
end
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
Dir.glob("#{gem_artifact_path}/**/*").each do |path|
|
|
116
|
+
next unless File.file?(path)
|
|
117
|
+
ext = File.extname(path)
|
|
118
|
+
if %w[.rdoc .md .markdown].include?(ext) or
|
|
119
|
+
path =~ /LICENSE|CHANGELOG|README/
|
|
120
|
+
FileUtils.rm_f(path)
|
|
121
|
+
end
|
|
122
|
+
end
|
|
123
|
+
end
|
|
124
|
+
|
|
125
|
+
def gem_artifact_path(full_gem_name)
|
|
126
|
+
"#{@artifacts_root}/#{full_gem_name}/bundled/gems/ruby/#{ruby_version_folder}/gems/#{full_gem_name}"
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
# original_path example: tmp/bundled/gems/ruby/2.5.0/gems/byebug-9.1.0
|
|
130
|
+
def copy_artifacts(original_path)
|
|
131
|
+
leaf_path = recreate_leaves_structure(@artifacts_root, original_path)
|
|
132
|
+
FileUtils.cp_r(original_path, leaf_path)
|
|
133
|
+
end
|
|
134
|
+
|
|
135
|
+
# Mirrors the some of the leave path structure of the original structure.
|
|
136
|
+
# This works for specific folders that have the gem name at the end only.
|
|
137
|
+
# This is not a generic method.
|
|
138
|
+
#
|
|
139
|
+
# Example 1:
|
|
140
|
+
# dest: tmp/artifacts
|
|
141
|
+
# original_path: tmp/bundled/gems/ruby/2.5.0/gems/byebug-9.1.0
|
|
142
|
+
#
|
|
143
|
+
# Recreated structure:
|
|
144
|
+
# created: tmp/artifacts/byebug-9.1.0/bundled/gems/ruby/2.5.0/gems
|
|
145
|
+
#
|
|
146
|
+
# Example 2:
|
|
147
|
+
# dest: tmp/artifacts
|
|
148
|
+
# original_path: tmp/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-9.1.0
|
|
149
|
+
#
|
|
150
|
+
# Recreated structure:
|
|
151
|
+
# created: tmp/artifacts/byebug-9.1.0/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static
|
|
152
|
+
#
|
|
153
|
+
#
|
|
154
|
+
# Returns created leaf path folder. If the original path was a file this
|
|
155
|
+
# will be the parent folder.
|
|
156
|
+
#
|
|
157
|
+
# Example:
|
|
158
|
+
#
|
|
159
|
+
# folder/a.txt => leaf path is folder
|
|
160
|
+
# folder/folder2 => leaf path is folder/folder2
|
|
161
|
+
#
|
|
162
|
+
def recreate_leaves_structure(dest_dir, original_path)
|
|
163
|
+
# strip the leading tmp/bundled/gems/ruby/
|
|
164
|
+
# and the trailing gem_name
|
|
165
|
+
full_gem_name = File.basename(original_path)
|
|
166
|
+
new_path = original_path.sub("#{@build_root}/", "") # script build root
|
|
167
|
+
leaf_path = "#{dest_dir}/#{full_gem_name}/#{new_path}"
|
|
168
|
+
leaf_path = File.dirname(leaf_path)
|
|
169
|
+
FileUtils.mkdir_p(leaf_path)
|
|
170
|
+
leaf_path
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
# bundled/gems/ruby/2.5.0/gems/byebug-9.1.0
|
|
174
|
+
def built_gem_path(full_gem_name)
|
|
175
|
+
"#{@build_root}/bundled/gems/ruby/#{minor_ruby_version}/gems/#{full_gem_name}"
|
|
176
|
+
end
|
|
177
|
+
|
|
178
|
+
# bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-9.1.0
|
|
179
|
+
# |
|
|
180
|
+
# could change
|
|
181
|
+
def built_ext_path(full_gem_name)
|
|
182
|
+
# infer the path because think 2.5.0-static can probably change
|
|
183
|
+
# Note, RUBY_PLATFORM x86_64-darwin17 in a Dir.glob patter does not always
|
|
184
|
+
# result in a match
|
|
185
|
+
pattern = "#{@build_root}/bundled/gems/ruby/#{minor_ruby_version}/extensions/*/*/#{full_gem_name}"
|
|
186
|
+
# path should be something like this:
|
|
187
|
+
# tmp/bundled/gems/ruby/2.5.0/extensions/x86_64-linux/2.5.0-static/byebug-9.1.0
|
|
188
|
+
path = Dir.glob(pattern).first
|
|
189
|
+
end
|
|
190
|
+
|
|
191
|
+
def specifications_path(full_gem_name)
|
|
192
|
+
"#{@build_root}/bundled/gems/ruby/#{minor_ruby_version}/specifications/#{full_gem_name}.gemspec"
|
|
193
|
+
end
|
|
194
|
+
|
|
195
|
+
def copy_spec(original_path)
|
|
196
|
+
full_gem_name = File.basename(original_path, ".gemspec")
|
|
197
|
+
new_path = original_path.gsub(%r{.*bundled/}, "bundled/") # strip build_root
|
|
198
|
+
new_path = "#{@artifacts_root}/#{full_gem_name}/#{new_path}"
|
|
199
|
+
FileUtils.mkdir_p(File.dirname(new_path))
|
|
200
|
+
FileUtils.cp(original_path, new_path)
|
|
201
|
+
end
|
|
202
|
+
end
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
require "thor"
|
|
2
|
+
|
|
3
|
+
module Lambdagem
|
|
4
|
+
|
|
5
|
+
class CLI < Command
|
|
6
|
+
class_option :verbose, type: :boolean
|
|
7
|
+
class_option :noop, type: :boolean
|
|
8
|
+
|
|
9
|
+
desc "build NAME", "build gem"
|
|
10
|
+
long_desc Help.text(:build)
|
|
11
|
+
def build(name)
|
|
12
|
+
Build.new(name, options).build
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
desc "package NAME", "package gem into tarball"
|
|
16
|
+
long_desc Help.text(:package)
|
|
17
|
+
def package(name)
|
|
18
|
+
Package.new(name, options).build
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
desc "upload NAME", "uploads gem to s3"
|
|
22
|
+
long_desc Help.text(:upload)
|
|
23
|
+
option :s3, required: true, desc: "s3 bucket name"
|
|
24
|
+
def upload(name)
|
|
25
|
+
Upload.new(name, options).upload
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
desc "all NAME", "builds, packages and uploads to s3"
|
|
29
|
+
long_desc Help.text(:all)
|
|
30
|
+
option :s3, required: true, desc: "s3 bucket name"
|
|
31
|
+
def all(name)
|
|
32
|
+
build(name)
|
|
33
|
+
package(name)
|
|
34
|
+
upload(name)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
extract_options = Proc.new do
|
|
38
|
+
option :s3, required: true, desc: "s3 bucket name", default: "lambdagems"
|
|
39
|
+
option :clean, type: :boolean, desc: "remove the cache"
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
desc "extract_gem NAME", "downloads gem from s3 and extracts it"
|
|
43
|
+
long_desc Help.text(:extract)
|
|
44
|
+
extract_options.call
|
|
45
|
+
def extract_gem(name)
|
|
46
|
+
Extract::Gem.new(name, options.merge(exit_on_error: true)).run
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
desc "extract_ruby NAME", "downloads ruby from s3 and extracts it"
|
|
50
|
+
long_desc Help.text(:extract_ruby)
|
|
51
|
+
extract_options.call
|
|
52
|
+
def extract_ruby(name)
|
|
53
|
+
Extract::Ruby.new(name, options.merge(exit_on_error: true)).run
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
desc "clean", "cleans up tmp/downloads cache"
|
|
57
|
+
long_desc Help.text(:clean)
|
|
58
|
+
def clean
|
|
59
|
+
Clean.new(options).run
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
end
|