mobile_workflow_cli 0.1.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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: a607d960e964bcf728fc65d5a7dccd77fcf08104795162bcae0fd70b40388b72
4
+ data.tar.gz: 53a051164d56c0ac2f7657fd2ba9f8cab954abe00a39697d0b7cbf80e3543fd3
5
+ SHA512:
6
+ metadata.gz: 779afd9ff5f88425498e69b17389ab84b93887b25848ffb88266719d17df0f08c9de2258fc9b9cc68c7f00cafc638ec55312c107ec4e7507e4a183a35f31450d
7
+ data.tar.gz: 0e0c41293f094c7f19364376a1ebefbb996ec7c035f689f02c91a5e313f6f7a5de19247b9363e07d5d2e1ef77664aaa29253faf907689adf225476f4e2d3eb24
data/.byebug_history ADDED
@@ -0,0 +1,2 @@
1
+ exit
2
+ bt
data/.gitignore ADDED
@@ -0,0 +1,11 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /_yardoc/
4
+ /coverage/
5
+ /doc/
6
+ /pkg/
7
+ /spec/reports/
8
+ /tmp/
9
+
10
+ # rspec failure tracking
11
+ .rspec_status
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --format documentation
2
+ --color
3
+ --require spec_helper
data/.travis.yml ADDED
@@ -0,0 +1,6 @@
1
+ ---
2
+ language: ruby
3
+ cache: bundler
4
+ rvm:
5
+ - 2.6.6
6
+ before_install: gem install bundler -v 2.1.4
data/Gemfile ADDED
@@ -0,0 +1,7 @@
1
+ source "https://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in mobile_workflow_cli.gemspec
4
+ gemspec
5
+
6
+ gem "rake", "~> 12.0"
7
+ gem "rspec", "~> 3.0"
data/Gemfile.lock ADDED
@@ -0,0 +1,205 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ mobile_workflow_cli (0.1.0)
5
+ administrate
6
+ rails (>= 6.0.0)
7
+
8
+ GEM
9
+ remote: https://rubygems.org/
10
+ specs:
11
+ actioncable (6.0.3)
12
+ actionpack (= 6.0.3)
13
+ nio4r (~> 2.0)
14
+ websocket-driver (>= 0.6.1)
15
+ actionmailbox (6.0.3)
16
+ actionpack (= 6.0.3)
17
+ activejob (= 6.0.3)
18
+ activerecord (= 6.0.3)
19
+ activestorage (= 6.0.3)
20
+ activesupport (= 6.0.3)
21
+ mail (>= 2.7.1)
22
+ actionmailer (6.0.3)
23
+ actionpack (= 6.0.3)
24
+ actionview (= 6.0.3)
25
+ activejob (= 6.0.3)
26
+ mail (~> 2.5, >= 2.5.4)
27
+ rails-dom-testing (~> 2.0)
28
+ actionpack (6.0.3)
29
+ actionview (= 6.0.3)
30
+ activesupport (= 6.0.3)
31
+ rack (~> 2.0, >= 2.0.8)
32
+ rack-test (>= 0.6.3)
33
+ rails-dom-testing (~> 2.0)
34
+ rails-html-sanitizer (~> 1.0, >= 1.2.0)
35
+ actiontext (6.0.3)
36
+ actionpack (= 6.0.3)
37
+ activerecord (= 6.0.3)
38
+ activestorage (= 6.0.3)
39
+ activesupport (= 6.0.3)
40
+ nokogiri (>= 1.8.5)
41
+ actionview (6.0.3)
42
+ activesupport (= 6.0.3)
43
+ builder (~> 3.1)
44
+ erubi (~> 1.4)
45
+ rails-dom-testing (~> 2.0)
46
+ rails-html-sanitizer (~> 1.1, >= 1.2.0)
47
+ activejob (6.0.3)
48
+ activesupport (= 6.0.3)
49
+ globalid (>= 0.3.6)
50
+ activemodel (6.0.3)
51
+ activesupport (= 6.0.3)
52
+ activerecord (6.0.3)
53
+ activemodel (= 6.0.3)
54
+ activesupport (= 6.0.3)
55
+ activestorage (6.0.3)
56
+ actionpack (= 6.0.3)
57
+ activejob (= 6.0.3)
58
+ activerecord (= 6.0.3)
59
+ marcel (~> 0.3.1)
60
+ activesupport (6.0.3)
61
+ concurrent-ruby (~> 1.0, >= 1.0.2)
62
+ i18n (>= 0.7, < 2)
63
+ minitest (~> 5.1)
64
+ tzinfo (~> 1.1)
65
+ zeitwerk (~> 2.2, >= 2.2.2)
66
+ administrate (0.13.0)
67
+ actionpack (>= 4.2)
68
+ actionview (>= 4.2)
69
+ activerecord (>= 4.2)
70
+ autoprefixer-rails (>= 6.0)
71
+ datetime_picker_rails (~> 0.0.7)
72
+ jquery-rails (>= 4.0)
73
+ kaminari (>= 1.0)
74
+ momentjs-rails (~> 2.8)
75
+ sassc-rails (~> 2.1)
76
+ selectize-rails (~> 0.6)
77
+ autoprefixer-rails (9.7.6)
78
+ execjs
79
+ builder (3.2.4)
80
+ byebug (11.1.3)
81
+ concurrent-ruby (1.1.6)
82
+ crass (1.0.6)
83
+ datetime_picker_rails (0.0.7)
84
+ momentjs-rails (>= 2.8.1)
85
+ diff-lcs (1.3)
86
+ erubi (1.9.0)
87
+ execjs (2.7.0)
88
+ ffi (1.12.2)
89
+ globalid (0.4.2)
90
+ activesupport (>= 4.2.0)
91
+ i18n (1.8.2)
92
+ concurrent-ruby (~> 1.0)
93
+ jquery-rails (4.4.0)
94
+ rails-dom-testing (>= 1, < 3)
95
+ railties (>= 4.2.0)
96
+ thor (>= 0.14, < 2.0)
97
+ kaminari (1.2.0)
98
+ activesupport (>= 4.1.0)
99
+ kaminari-actionview (= 1.2.0)
100
+ kaminari-activerecord (= 1.2.0)
101
+ kaminari-core (= 1.2.0)
102
+ kaminari-actionview (1.2.0)
103
+ actionview
104
+ kaminari-core (= 1.2.0)
105
+ kaminari-activerecord (1.2.0)
106
+ activerecord
107
+ kaminari-core (= 1.2.0)
108
+ kaminari-core (1.2.0)
109
+ loofah (2.5.0)
110
+ crass (~> 1.0.2)
111
+ nokogiri (>= 1.5.9)
112
+ mail (2.7.1)
113
+ mini_mime (>= 0.1.1)
114
+ marcel (0.3.3)
115
+ mimemagic (~> 0.3.2)
116
+ method_source (1.0.0)
117
+ mimemagic (0.3.5)
118
+ mini_mime (1.0.2)
119
+ mini_portile2 (2.4.0)
120
+ minitest (5.14.0)
121
+ momentjs-rails (2.20.1)
122
+ railties (>= 3.1)
123
+ nio4r (2.5.2)
124
+ nokogiri (1.10.9)
125
+ mini_portile2 (~> 2.4.0)
126
+ rack (2.2.2)
127
+ rack-test (1.1.0)
128
+ rack (>= 1.0, < 3)
129
+ rails (6.0.3)
130
+ actioncable (= 6.0.3)
131
+ actionmailbox (= 6.0.3)
132
+ actionmailer (= 6.0.3)
133
+ actionpack (= 6.0.3)
134
+ actiontext (= 6.0.3)
135
+ actionview (= 6.0.3)
136
+ activejob (= 6.0.3)
137
+ activemodel (= 6.0.3)
138
+ activerecord (= 6.0.3)
139
+ activestorage (= 6.0.3)
140
+ activesupport (= 6.0.3)
141
+ bundler (>= 1.3.0)
142
+ railties (= 6.0.3)
143
+ sprockets-rails (>= 2.0.0)
144
+ rails-dom-testing (2.0.3)
145
+ activesupport (>= 4.2.0)
146
+ nokogiri (>= 1.6)
147
+ rails-html-sanitizer (1.3.0)
148
+ loofah (~> 2.3)
149
+ railties (6.0.3)
150
+ actionpack (= 6.0.3)
151
+ activesupport (= 6.0.3)
152
+ method_source
153
+ rake (>= 0.8.7)
154
+ thor (>= 0.20.3, < 2.0)
155
+ rake (12.3.3)
156
+ rspec (3.9.0)
157
+ rspec-core (~> 3.9.0)
158
+ rspec-expectations (~> 3.9.0)
159
+ rspec-mocks (~> 3.9.0)
160
+ rspec-core (3.9.2)
161
+ rspec-support (~> 3.9.3)
162
+ rspec-expectations (3.9.2)
163
+ diff-lcs (>= 1.2.0, < 2.0)
164
+ rspec-support (~> 3.9.0)
165
+ rspec-mocks (3.9.1)
166
+ diff-lcs (>= 1.2.0, < 2.0)
167
+ rspec-support (~> 3.9.0)
168
+ rspec-support (3.9.3)
169
+ sassc (2.3.0)
170
+ ffi (~> 1.9)
171
+ sassc-rails (2.1.2)
172
+ railties (>= 4.0.0)
173
+ sassc (>= 2.0)
174
+ sprockets (> 3.0)
175
+ sprockets-rails
176
+ tilt
177
+ selectize-rails (0.12.6)
178
+ sprockets (4.0.0)
179
+ concurrent-ruby (~> 1.0)
180
+ rack (> 1, < 3)
181
+ sprockets-rails (3.2.1)
182
+ actionpack (>= 4.0)
183
+ activesupport (>= 4.0)
184
+ sprockets (>= 3.0.0)
185
+ thor (1.0.1)
186
+ thread_safe (0.3.6)
187
+ tilt (2.0.10)
188
+ tzinfo (1.2.7)
189
+ thread_safe (~> 0.1)
190
+ websocket-driver (0.7.1)
191
+ websocket-extensions (>= 0.1.0)
192
+ websocket-extensions (0.1.4)
193
+ zeitwerk (2.3.0)
194
+
195
+ PLATFORMS
196
+ ruby
197
+
198
+ DEPENDENCIES
199
+ byebug
200
+ mobile_workflow_cli!
201
+ rake (~> 12.0)
202
+ rspec (~> 3.0)
203
+
204
+ BUNDLED WITH
205
+ 2.1.4
data/LICENSE.txt ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2020 Matt Brooke-Smith
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,24 @@
1
+ # Mobile Workflow CLI
2
+ A utility to create a Rails server from an Open API Spec file.
3
+
4
+ The server contains
5
+ * Models
6
+ * API
7
+ * Password protected admin console (for updating the data)
8
+
9
+ ## Installation
10
+
11
+ Install the utility
12
+
13
+ ```ruby
14
+ gem 'mobile_workflow_cli'
15
+ ```
16
+
17
+ ## Usage
18
+
19
+ ```mwf new <path to open api spec json> [options]```
20
+
21
+
22
+ ## License
23
+
24
+ The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
data/Rakefile ADDED
@@ -0,0 +1,6 @@
1
+ require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task :default => :spec
data/USAGE ADDED
@@ -0,0 +1,9 @@
1
+ Description:
2
+ Mobile Workflow CLI creates a Rails template project for your Mobile Workflow App.
3
+
4
+ Example:
5
+ mwf todo_server ~/Downloads/todo_oai_spec.json -H
6
+
7
+ Generate a Rails installation from the downloaded todo_oai_spec.json in the todo_server
8
+ folder relative to the current directory. Then create an new Heroku app and deploy the code.
9
+
data/bin/mwf ADDED
@@ -0,0 +1,23 @@
1
+ #!/usr/bin/env ruby
2
+ require 'pathname'
3
+ require 'byebug'
4
+
5
+ source_path = (Pathname.new(__FILE__).dirname + '../lib').expand_path
6
+ $LOAD_PATH << source_path
7
+
8
+ require 'mobile_workflow_cli'
9
+
10
+ if ARGV.empty?
11
+ puts "USAGE: mwf <directory> <OpenAPI Spec file path> [options]"
12
+ puts "See --help for more info"
13
+ exit 0
14
+ elsif ['-v', '--version'].include? ARGV[0]
15
+ puts MobileWorkflowCli::VERSION
16
+ exit 0
17
+ end
18
+
19
+ templates_root = File.expand_path(File.join("..", "templates"), File.dirname(__FILE__))
20
+ MobileWorkflowCli::AppGenerator.source_root templates_root
21
+ MobileWorkflowCli::AppGenerator.source_paths << Rails::Generators::AppGenerator.source_root << templates_root
22
+
23
+ MobileWorkflowCli::AppGenerator.start
data/bin/setup ADDED
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+ set -vx
5
+
6
+ bundle install
7
+
8
+ # Do any other automated setup that you need to do here
@@ -0,0 +1,9 @@
1
+ require "mobile_workflow_cli/version"
2
+
3
+ require "mobile_workflow_cli/app_generator"
4
+ require "mobile_workflow_cli/app_builder"
5
+
6
+ module MobileWorkflowCli
7
+ class Error < StandardError; end
8
+ # Your code goes here...
9
+ end
@@ -0,0 +1,16 @@
1
+ module MobileWorkflowCli
2
+ class AppBuilder < Rails::AppBuilder
3
+ def readme
4
+ template 'README.md.erb', 'README.md'
5
+ end
6
+
7
+ def gemfile
8
+ super
9
+ # Thoughtbot administrate for admin console
10
+ gem "administrate"
11
+
12
+ # Dotenv for development / test
13
+ gem 'dotenv-rails', groups: [:development, :test]
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,149 @@
1
+ require 'rails/generators'
2
+ require 'rails/generators/rails/app/app_generator'
3
+ require 'json'
4
+ require 'active_support/core_ext/hash/indifferent_access'
5
+
6
+ module MobileWorkflowCli
7
+ class AppGenerator < Rails::Generators::AppGenerator
8
+ hide!
9
+
10
+ class_option :database, type: :string, aliases: "-d", default: "postgresql", desc: "Configure for selected database (options: #{DATABASES.join("/")})"
11
+ class_option :skip_test, type: :boolean, default: true, desc: "Skip Test Unit"
12
+ class_option :force, type: :boolean, default: true, desc: "Force overwrite"
13
+
14
+ class_option :version, type: :boolean, aliases: "-v", desc: "Show version number and quit"
15
+ class_option :help, type: :boolean, aliases: '-h', desc: "Show this help message and quit"
16
+
17
+ class_option :heroku, type: :boolean, aliases: "-H", default: false, desc: "Create Heroku app"
18
+
19
+ def self.banner
20
+ "mwf <directory> <OpenAPI Spec file path> [options]"
21
+ end
22
+
23
+ def finish_template
24
+ open_api_spec = read_openapi_spec
25
+ generate_models(open_api_spec)
26
+ setup_db
27
+ generate_administrate
28
+ generate_base_api_controller(open_api_spec)
29
+ generate_controllers_and_routes(open_api_spec)
30
+ generate_procfile
31
+
32
+ admin_user = 'admin'
33
+ admin_password = SecureRandom.base64(12)
34
+ generate_dot_env(admin_user, admin_password)
35
+ super
36
+
37
+ initial_git_commit
38
+ deploy_heroku(admin_user, admin_password) if options[:heroku]
39
+ end
40
+
41
+ protected
42
+
43
+ def get_builder_class
44
+ MobileWorkflowCli::AppBuilder
45
+ end
46
+
47
+ # Todo: MBS - move these methods to the builder class
48
+ # Ideally override RailsBuilder methods
49
+ private
50
+ def read_openapi_spec
51
+ openapi_spec_path = ARGV[1]
52
+ say "Loading model from OpenAPI Spec: #{openapi_spec_path}"
53
+ return JSON.parse(File.read(openapi_spec_path)).with_indifferent_access
54
+ end
55
+
56
+ def generate_administrate
57
+ generate('administrate:install')
58
+ file 'app/assets/config/manifest.js', <<-CODE
59
+ //= link administrate/application.css
60
+ //= link administrate/application.js
61
+ CODE
62
+
63
+ file 'app/controllers/admin/application_controller.rb', <<-CODE
64
+ module Admin
65
+ class ApplicationController < Administrate::ApplicationController
66
+ before_action :authenticate_admin
67
+
68
+ def authenticate_admin
69
+ self.class.http_basic_authenticate_with(name: ENV["ADMIN_USER"], password: ENV["ADMIN_PASSWORD"])
70
+ end
71
+ end
72
+ end
73
+ CODE
74
+ end
75
+
76
+ def generate_models(openapi_spec)
77
+ say "Generating models"
78
+ openapi_spec[:components][:schemas].each_pair do |name, schema|
79
+ properties_args = schema['properties'].keys.reject{|key| key == 'id'}.collect{|key| "#{key}:#{schema['properties'][key]['type']}" }.join(' ')
80
+ generate(:model, "#{name.underscore} #{properties_args}")
81
+ end
82
+ end
83
+
84
+ def generate_base_api_controller(openapi_spec)
85
+ file 'app/controllers/api_controller.rb', <<-CODE
86
+ class ApiController < ActionController::API
87
+ end
88
+ CODE
89
+ end
90
+
91
+ def generate_controllers_and_routes(openapi_spec)
92
+ say "Generating controllers"
93
+ controller_names = []
94
+ openapi_spec[:paths].each_pair do |url_path, path|
95
+ controller_name = url_path.split('/').last.pluralize
96
+ model = path[:get][:responses]["200"][:content]['application/json'][:schema][:items]['$ref'].split('/').last
97
+ file "app/controllers/#{controller_name}_controller.rb", <<-CODE
98
+ class #{controller_name.titleize}Controller < ApiController
99
+ def index
100
+ render json: #{model}.where(filter_params)
101
+ end
102
+
103
+ private
104
+ def filter_params
105
+ params.permit() # Add any filter properties here
106
+ end
107
+ end
108
+ CODE
109
+ controller_names << controller_name
110
+ end
111
+ controller_names.each {|n| route "resources :#{n}, only: :index" }
112
+
113
+ # Root route
114
+ route "root to: 'admin/#{controller_names.first}#index'"
115
+ end
116
+
117
+ def setup_db
118
+ rails_command("db:drop")
119
+ rails_command("db:create")
120
+ rails_command("db:migrate")
121
+ end
122
+
123
+ def generate_procfile
124
+ file 'Procfile', <<-CODE
125
+ web: bundle exec rackup config.ru -p $PORT
126
+ release: bundle exec rake db:migrate
127
+ CODE
128
+ end
129
+
130
+ def initial_git_commit
131
+ git add: "."
132
+ git commit: %Q{ -m 'Initial commit' }
133
+ end
134
+
135
+ def generate_dot_env(admin_user, admin_password)
136
+ file '.env', <<-CODE
137
+ ADMIN_USER=#{admin_user}
138
+ ADMIN_PASSWORD=#{admin_password}
139
+ CODE
140
+ end
141
+
142
+ def deploy_heroku(admin_user, admin_password)
143
+ heroku_output = `heroku create`
144
+ `git push heroku master`
145
+ `heroku config:set ADMIN_USER=#{admin_user} ADMIN_PASSWORD=#{admin_password}`
146
+ say "Server created: #{heroku_output}"
147
+ end
148
+ end
149
+ end
@@ -0,0 +1,5 @@
1
+ module MobileWorkflowCli
2
+ VERSION = "0.1.0"
3
+ RUBY_VERSION = '2.5.5'
4
+ RAILS_VERSION = '6.0.0'
5
+ end
@@ -0,0 +1,27 @@
1
+ require_relative 'lib/mobile_workflow_cli/version'
2
+
3
+ Gem::Specification.new do |s|
4
+ s.name = "mobile_workflow_cli"
5
+ s.version = MobileWorkflowCli::VERSION
6
+ s.authors = ["Matt Brooke-Smith"]
7
+ s.email = ["matt@futureworkshops.com"]
8
+
9
+ s.summary = "CLI tool for Mobile Workflow"
10
+ s.homepage = "https://github.com/FutureWorkshops/MobileWorkflowCli"
11
+ s.license = "MIT"
12
+ s.required_ruby_version = ">= #{MobileWorkflowCli::RUBY_VERSION}"
13
+
14
+ s.metadata["homepage_uri"] = s.homepage
15
+ s.metadata["source_code_uri"] = s.homepage
16
+
17
+ s.files = Dir.chdir(File.expand_path('..', __FILE__)) do
18
+ `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|s|features)/}) }
19
+ end
20
+ s.test_files = `git ls-files -- {spec}/*`.split("\n")
21
+ s.require_paths = ["lib"]
22
+
23
+ s.add_dependency 'administrate'
24
+ s.add_dependency 'rails', ">= #{MobileWorkflowCli::RAILS_VERSION}"
25
+
26
+ s.add_development_dependency 'byebug'
27
+ end
@@ -0,0 +1,9 @@
1
+ RSpec.describe MobileWorkflowCli do
2
+ it "has a version number" do
3
+ expect(MobileWorkflowCli::VERSION).not_to be nil
4
+ end
5
+
6
+ it "does something useful" do
7
+ expect(false).to eq(true)
8
+ end
9
+ end
@@ -0,0 +1,14 @@
1
+ require "bundler/setup"
2
+ require "mobile_workflow_cli"
3
+
4
+ RSpec.configure do |config|
5
+ # Enable flags like --only-failures and --next-failure
6
+ config.example_status_persistence_file_path = ".rspec_status"
7
+
8
+ # Disable RSpec exposing methods globally on `Module` and `main`
9
+ config.disable_monkey_patching!
10
+
11
+ config.expect_with :rspec do |c|
12
+ c.syntax = :expect
13
+ end
14
+ end
@@ -0,0 +1,22 @@
1
+ # <%= app_name.humanize %>
2
+
3
+ ## Prereqs
4
+ * Ruby >= 2.5.5
5
+ * Rails >= 6.0.0
6
+
7
+ Optional
8
+ * Heroku toolbelt
9
+ * Heroku account
10
+
11
+ ## Getting Started
12
+
13
+ After you have cloned this repo, run this setup script to set up your machine
14
+ with the necessary dependencies to run and test this app:
15
+
16
+ % ./bin/setup
17
+
18
+ After setting up, you can run the application using [Heroku Local]:
19
+
20
+ % heroku local
21
+
22
+ [Heroku Local]: https://devcenter.heroku.com/articles/heroku-local
metadata ADDED
@@ -0,0 +1,107 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mobile_workflow_cli
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Matt Brooke-Smith
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2020-05-14 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: administrate
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rails
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 6.0.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 6.0.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: byebug
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ description:
56
+ email:
57
+ - matt@futureworkshops.com
58
+ executables: []
59
+ extensions: []
60
+ extra_rdoc_files: []
61
+ files:
62
+ - ".byebug_history"
63
+ - ".gitignore"
64
+ - ".rspec"
65
+ - ".travis.yml"
66
+ - Gemfile
67
+ - Gemfile.lock
68
+ - LICENSE.txt
69
+ - README.md
70
+ - Rakefile
71
+ - USAGE
72
+ - bin/mwf
73
+ - bin/setup
74
+ - lib/mobile_workflow_cli.rb
75
+ - lib/mobile_workflow_cli/app_builder.rb
76
+ - lib/mobile_workflow_cli/app_generator.rb
77
+ - lib/mobile_workflow_cli/version.rb
78
+ - mobile_workflow_cli.gemspec
79
+ - spec/mobile_workflow_cli_spec.rb
80
+ - spec/spec_helper.rb
81
+ - templates/README.md.erb
82
+ homepage: https://github.com/FutureWorkshops/MobileWorkflowCli
83
+ licenses:
84
+ - MIT
85
+ metadata:
86
+ homepage_uri: https://github.com/FutureWorkshops/MobileWorkflowCli
87
+ source_code_uri: https://github.com/FutureWorkshops/MobileWorkflowCli
88
+ post_install_message:
89
+ rdoc_options: []
90
+ require_paths:
91
+ - lib
92
+ required_ruby_version: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: 2.5.5
97
+ required_rubygems_version: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - ">="
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
102
+ requirements: []
103
+ rubygems_version: 3.0.8
104
+ signing_key:
105
+ specification_version: 4
106
+ summary: CLI tool for Mobile Workflow
107
+ test_files: []