shopify-cli 2.6.4 → 2.7.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/.devcontainer.json +5 -0
- data/.github/DESIGN.md +1 -1
- data/.github/ISSUE_TEMPLATE.md +7 -0
- data/.gitignore +1 -0
- data/.vscode/extensions.json +5 -0
- data/.vscode/settings.json +9 -0
- data/CHANGELOG.md +35 -3
- data/CONTRIBUTING.md +1 -21
- data/{Dockerfile → Codespace.dockerfile} +11 -3
- data/Gemfile +1 -0
- data/Gemfile.lock +6 -4
- data/README.md +20 -99
- data/Rakefile +27 -0
- data/Tests.dockerfile +35 -0
- data/assets/logo.png +0 -0
- data/dev.yml +0 -3
- data/docs/README.md +13 -0
- data/docs/contributors/testing.md +27 -0
- data/docs/users/installation.md +46 -0
- data/{THEMEKIT_MIGRATION.md → docs/users/migrate-from-themekit.md} +1 -1
- data/ext/javy/javy.rb +186 -0
- data/ext/javy/version +1 -0
- data/lib/project_types/extension/cli.rb +7 -3
- data/lib/project_types/extension/commands/build.rb +1 -0
- data/lib/project_types/extension/commands/create.rb +6 -6
- data/lib/project_types/extension/commands/extension_command.rb +1 -1
- data/lib/project_types/extension/features/argo.rb +1 -8
- data/lib/project_types/extension/features/argo_serve.rb +9 -23
- data/lib/project_types/extension/forms/create.rb +1 -1
- data/lib/project_types/extension/forms/questions/ask_template.rb +3 -6
- data/lib/project_types/extension/messages/messages.rb +1 -0
- data/lib/project_types/extension/models/development_server_requirements.rb +2 -3
- data/lib/project_types/extension/models/server_config/app.rb +13 -0
- data/lib/project_types/extension/models/server_config/development.rb +5 -4
- data/lib/project_types/extension/models/server_config/development_renderer.rb +1 -1
- data/lib/project_types/extension/models/server_config/development_resource.rb +13 -0
- data/lib/project_types/extension/models/server_config/extension.rb +4 -0
- data/lib/project_types/extension/models/server_config/root.rb +4 -1
- data/lib/project_types/extension/tasks/convert_server_config.rb +65 -0
- data/lib/project_types/extension/tasks/ensure_resource_url.rb +39 -0
- data/lib/project_types/extension/tasks/find_package_from_json.rb +37 -0
- data/lib/project_types/extension/tasks/merge_server_config.rb +32 -0
- data/lib/project_types/extension/tasks/run_extension_command.rb +11 -10
- data/lib/project_types/node/cli.rb +0 -16
- data/lib/project_types/node/forms/create.rb +5 -5
- data/lib/project_types/node/messages/messages.rb +2 -144
- data/lib/project_types/php/cli.rb +0 -11
- data/lib/project_types/php/forms/create.rb +5 -6
- data/lib/project_types/php/messages/messages.rb +2 -161
- data/lib/project_types/rails/cli.rb +0 -16
- data/lib/project_types/rails/commands/create.rb +46 -17
- data/lib/project_types/rails/forms/create.rb +5 -7
- data/lib/project_types/rails/messages/messages.rb +6 -151
- data/lib/project_types/script/cli.rb +2 -1
- data/lib/project_types/script/commands/create.rb +2 -5
- data/lib/project_types/script/commands/javy.rb +31 -0
- data/lib/project_types/script/commands/push.rb +1 -1
- data/lib/project_types/script/config/extension_points.yml +3 -0
- data/lib/project_types/script/errors.rb +0 -18
- data/lib/project_types/script/layers/application/create_script.rb +2 -2
- data/lib/project_types/script/layers/domain/script_json.rb +1 -1
- data/lib/project_types/script/layers/infrastructure/api_clients/partners_proxy_api_client.rb +0 -4
- data/lib/project_types/script/layers/infrastructure/errors.rb +8 -3
- data/lib/project_types/script/layers/infrastructure/languages/assemblyscript_task_runner.rb +22 -3
- data/lib/project_types/script/layers/infrastructure/languages/typescript_task_runner.rb +25 -0
- data/lib/project_types/script/layers/infrastructure/script_project_repository.rb +3 -4
- data/lib/project_types/script/layers/infrastructure/script_service.rb +1 -1
- data/lib/project_types/script/messages/messages.rb +16 -22
- data/lib/project_types/script/ui/error_handler.rb +1 -27
- data/lib/project_types/theme/cli.rb +1 -1
- data/lib/project_types/theme/commands/check.rb +1 -1
- data/lib/project_types/theme/commands/delete.rb +1 -1
- data/lib/project_types/theme/commands/init.rb +1 -1
- data/lib/project_types/theme/commands/language_server.rb +1 -1
- data/lib/project_types/theme/commands/package.rb +1 -1
- data/lib/project_types/theme/commands/publish.rb +1 -1
- data/lib/project_types/theme/commands/pull.rb +1 -1
- data/lib/project_types/theme/commands/push.rb +1 -1
- data/lib/project_types/theme/commands/serve.rb +9 -2
- data/lib/project_types/theme/messages/messages.rb +30 -1
- data/lib/shopify_cli/admin_api/populate_resource_command.rb +1 -1
- data/lib/shopify_cli/api.rb +7 -2
- data/lib/shopify_cli/app_type_detector.rb +24 -20
- data/lib/shopify_cli/command/app_sub_command.rb +10 -0
- data/lib/shopify_cli/command/project_command.rb +18 -0
- data/lib/shopify_cli/command/sub_command.rb +19 -0
- data/lib/shopify_cli/command.rb +7 -2
- data/lib/shopify_cli/commands/app/connect.rb +22 -0
- data/lib/shopify_cli/commands/app/create/node.rb +38 -0
- data/lib/shopify_cli/commands/app/create/php.rb +36 -0
- data/lib/shopify_cli/commands/app/create/rails.rb +40 -0
- data/lib/shopify_cli/commands/app/create.rb +28 -0
- data/lib/shopify_cli/commands/app/deploy.rb +49 -0
- data/lib/shopify_cli/commands/app/open.rb +19 -0
- data/lib/shopify_cli/commands/app/serve.rb +49 -0
- data/lib/shopify_cli/commands/app/tunnel.rb +43 -0
- data/lib/shopify_cli/commands/app.rb +29 -0
- data/lib/shopify_cli/commands/config.rb +2 -2
- data/lib/shopify_cli/commands.rb +1 -0
- data/lib/shopify_cli/constants.rb +4 -0
- data/lib/shopify_cli/exception_reporter.rb +8 -6
- data/lib/shopify_cli/git.rb +12 -1
- data/lib/shopify_cli/github/issue_url_generator.rb +19 -0
- data/lib/shopify_cli/github.rb +5 -0
- data/lib/shopify_cli/messages/messages.rb +253 -9
- data/lib/shopify_cli/migrator.rb +9 -11
- data/lib/shopify_cli/project.rb +5 -1
- data/lib/shopify_cli/project_commands.rb +1 -1
- data/lib/shopify_cli/services/app/connect_service.rb +25 -0
- data/lib/shopify_cli/services/app/create/node_service.rb +155 -0
- data/lib/shopify_cli/services/app/create/php_service.rb +152 -0
- data/lib/shopify_cli/services/app/create/rails_service.rb +215 -0
- data/lib/shopify_cli/services/app/deploy/heroku/node_service.rb +101 -0
- data/lib/shopify_cli/services/app/deploy/heroku/php_service.rb +135 -0
- data/lib/shopify_cli/services/app/deploy/heroku/rails_service.rb +120 -0
- data/lib/shopify_cli/services/app/open_service.rb +19 -0
- data/lib/shopify_cli/services/app/serve/node_service.rb +42 -0
- data/lib/shopify_cli/services/app/serve/php_service.rb +46 -0
- data/lib/shopify_cli/services/app/serve/rails_service.rb +48 -0
- data/lib/shopify_cli/services/app/tunnel/auth_service.rb +21 -0
- data/lib/shopify_cli/services/app/tunnel/start_service.rb +20 -0
- data/lib/shopify_cli/services/app/tunnel/stop_service.rb +20 -0
- data/lib/shopify_cli/services.rb +31 -0
- data/lib/shopify_cli/theme/dev_server/local_assets.rb +1 -1
- data/lib/shopify_cli/theme/dev_server.rb +35 -17
- data/lib/shopify_cli/tunnel.rb +25 -20
- data/lib/shopify_cli/version.rb +1 -1
- data/lib/shopify_cli.rb +1 -2
- data/shopify-cli.gemspec +2 -6
- data/shopify-dev +18 -0
- data/utilities/constants.rb +7 -0
- data/utilities/docker/container.rb +30 -2
- data/utilities/docker.rb +3 -2
- data/utilities/utilities.rb +1 -0
- data/vendor/deps/cli-kit/lib/cli/kit/system.rb +1 -1
- metadata +56 -53
- data/docs/_config.yml +0 -2
- data/docs/app/node/commands/index.md +0 -4
- data/docs/app/node/index.md +0 -4
- data/docs/app/rails/commands/index.md +0 -4
- data/docs/app/rails/index.md +0 -4
- data/docs/core/index.md +0 -4
- data/docs/getting-started/index.md +0 -4
- data/docs/getting-started/install/index.md +0 -4
- data/docs/getting-started/migrate/index.md +0 -4
- data/docs/getting-started/uninstall/index.md +0 -4
- data/docs/getting-started/upgrade/index.md +0 -4
- data/docs/help/start-app/index.md +0 -4
- data/docs/index.md +0 -4
- data/ext/shopify-cli/extconf.rb +0 -60
- data/install.sh +0 -7
- data/lib/project_types/extension/tasks/converters/server_config_converter.rb +0 -31
- data/lib/project_types/extension/tasks/load_server_config.rb +0 -23
- data/lib/project_types/node/commands/connect.rb +0 -21
- data/lib/project_types/node/commands/create.rb +0 -125
- data/lib/project_types/node/commands/deploy/heroku.rb +0 -96
- data/lib/project_types/node/commands/deploy.rb +0 -32
- data/lib/project_types/node/commands/generate.rb +0 -22
- data/lib/project_types/node/commands/open.rb +0 -18
- data/lib/project_types/node/commands/serve.rb +0 -45
- data/lib/project_types/node/commands/tunnel.rb +0 -41
- data/lib/project_types/php/commands/connect.rb +0 -19
- data/lib/project_types/php/commands/create.rb +0 -143
- data/lib/project_types/php/commands/deploy/heroku.rb +0 -129
- data/lib/project_types/php/commands/deploy.rb +0 -32
- data/lib/project_types/php/commands/open.rb +0 -16
- data/lib/project_types/php/commands/serve.rb +0 -48
- data/lib/project_types/php/commands/tunnel.rb +0 -37
- data/lib/project_types/rails/commands/connect.rb +0 -21
- data/lib/project_types/rails/commands/deploy/heroku.rb +0 -115
- data/lib/project_types/rails/commands/deploy.rb +0 -32
- data/lib/project_types/rails/commands/generate/webhook.rb +0 -42
- data/lib/project_types/rails/commands/generate.rb +0 -60
- data/lib/project_types/rails/commands/open.rb +0 -18
- data/lib/project_types/rails/commands/serve.rb +0 -51
- data/lib/project_types/rails/commands/tunnel.rb +0 -41
- data/lib/project_types/script/graphql/app_script_update_or_create.graphql +0 -0
- data/lib/shopify_cli/sub_command.rb +0 -17
- data/shopify.fish +0 -12
- data/shopify.sh +0 -11
data/lib/shopify_cli/tunnel.rb
CHANGED
|
@@ -12,7 +12,7 @@ module ShopifyCLI
|
|
|
12
12
|
class Tunnel
|
|
13
13
|
extend SingleForwardable
|
|
14
14
|
|
|
15
|
-
def_delegators :new, :start, :stop, :auth, :stats, :urls, :running_on?
|
|
15
|
+
def_delegators :new, :start, :stop, :auth, :authenticated?, :stats, :urls, :running_on?
|
|
16
16
|
|
|
17
17
|
class FetchUrlError < RuntimeError; end
|
|
18
18
|
class NgrokError < RuntimeError; end
|
|
@@ -65,16 +65,12 @@ module ShopifyCLI
|
|
|
65
65
|
#
|
|
66
66
|
def start(ctx, port: PORT)
|
|
67
67
|
install(ctx)
|
|
68
|
-
|
|
69
|
-
|
|
68
|
+
if authenticated?
|
|
69
|
+
url, account = start_ngrok(ctx, port)
|
|
70
70
|
ctx.puts(ctx.message("core.tunnel.start_with_account", url, account))
|
|
71
71
|
else
|
|
72
|
-
|
|
73
|
-
ctx.puts(ctx.message("core.tunnel.timed_out"))
|
|
74
|
-
url, _account, seconds_remaining = restart_ngrok(ctx, port)
|
|
75
|
-
end
|
|
72
|
+
url, _ = restart_ngrok(ctx, port)
|
|
76
73
|
ctx.puts(ctx.message("core.tunnel.start", url))
|
|
77
|
-
ctx.puts(ctx.message("core.tunnel.will_timeout", seconds_to_hm(seconds_remaining)))
|
|
78
74
|
ctx.puts(ctx.message("core.tunnel.signup_suggestion", ShopifyCLI::TOOL_NAME))
|
|
79
75
|
end
|
|
80
76
|
url
|
|
@@ -91,7 +87,16 @@ module ShopifyCLI
|
|
|
91
87
|
#
|
|
92
88
|
def auth(ctx, token)
|
|
93
89
|
install(ctx)
|
|
94
|
-
ctx.system(
|
|
90
|
+
ctx.system(ngrok_path, "authtoken", token)
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
##
|
|
94
|
+
# returns a boolean: if the user has a ngrok token to authenticate
|
|
95
|
+
#
|
|
96
|
+
def authenticated?
|
|
97
|
+
ngrok_config_path = File.join(Dir.home, ".ngrok2/ngrok.yml")
|
|
98
|
+
return false unless File.exist?(ngrok_config_path)
|
|
99
|
+
File.read(ngrok_config_path).include?("authtoken")
|
|
95
100
|
end
|
|
96
101
|
|
|
97
102
|
##
|
|
@@ -145,7 +150,7 @@ module ShopifyCLI
|
|
|
145
150
|
|
|
146
151
|
def install(ctx)
|
|
147
152
|
ngrok = "ngrok#{ctx.executable_file_extension}"
|
|
148
|
-
return if File.exist?(
|
|
153
|
+
return if File.exist?(ngrok_path)
|
|
149
154
|
check_prereq_command(ctx, "curl")
|
|
150
155
|
check_prereq_command(ctx, ctx.linux? ? "unzip" : "tar")
|
|
151
156
|
spinner = CLI::UI::SpinGroup.new
|
|
@@ -165,7 +170,7 @@ module ShopifyCLI
|
|
|
165
170
|
spinner.wait
|
|
166
171
|
|
|
167
172
|
# final check to see if ngrok is accessible
|
|
168
|
-
unless File.exist?(
|
|
173
|
+
unless File.exist?(ngrok_path)
|
|
169
174
|
ctx.abort(ctx.message("core.tunnel.error.ngrok", ngrok, ShopifyCLI.cache_dir))
|
|
170
175
|
end
|
|
171
176
|
end
|
|
@@ -177,8 +182,12 @@ module ShopifyCLI
|
|
|
177
182
|
raise e.class, e.message
|
|
178
183
|
end
|
|
179
184
|
|
|
185
|
+
def ngrok_path
|
|
186
|
+
File.join(ShopifyCLI.cache_dir, "ngrok")
|
|
187
|
+
end
|
|
188
|
+
|
|
180
189
|
def ngrok_command(port)
|
|
181
|
-
"\"#{
|
|
190
|
+
"\"#{ngrok_path}\" http -inspect=false -log=stdout -log-level=debug #{port}"
|
|
182
191
|
end
|
|
183
192
|
|
|
184
193
|
def seconds_to_hm(seconds)
|
|
@@ -188,14 +197,11 @@ module ShopifyCLI
|
|
|
188
197
|
def start_ngrok(ctx, port)
|
|
189
198
|
process = ShopifyCLI::ProcessSupervision.start(:ngrok, ngrok_command(port))
|
|
190
199
|
log = fetch_url(ctx, process.log_path)
|
|
191
|
-
|
|
192
|
-
[log.url, log.account, seconds_remaining]
|
|
200
|
+
[log.url, log.account]
|
|
193
201
|
end
|
|
194
202
|
|
|
195
203
|
def restart_ngrok(ctx, port)
|
|
196
|
-
|
|
197
|
-
ctx.abort(ctx.message("core.tunnel.error.stop"))
|
|
198
|
-
end
|
|
204
|
+
ShopifyCLI::ProcessSupervision.stop(:ngrok)
|
|
199
205
|
start_ngrok(ctx, port)
|
|
200
206
|
end
|
|
201
207
|
|
|
@@ -208,7 +214,7 @@ module ShopifyCLI
|
|
|
208
214
|
class LogParser # :nodoc:
|
|
209
215
|
TIMEOUT = 10
|
|
210
216
|
|
|
211
|
-
attr_reader :url, :account
|
|
217
|
+
attr_reader :url, :account
|
|
212
218
|
|
|
213
219
|
def initialize(log_path)
|
|
214
220
|
@log_path = log_path
|
|
@@ -237,9 +243,8 @@ module ShopifyCLI
|
|
|
237
243
|
end
|
|
238
244
|
|
|
239
245
|
def parse_account
|
|
240
|
-
account,
|
|
246
|
+
account, _ = @log.match(/AccountName:(.*)\s+SessionDuration/)&.captures
|
|
241
247
|
@account = account&.empty? ? nil : account
|
|
242
|
-
@timeout = timeout&.empty? ? 0 : timeout.to_i
|
|
243
248
|
end
|
|
244
249
|
|
|
245
250
|
def error
|
data/lib/shopify_cli/version.rb
CHANGED
data/lib/shopify_cli.rb
CHANGED
|
@@ -111,6 +111,7 @@ module ShopifyCLI
|
|
|
111
111
|
autoload :Feature, "shopify_cli/feature"
|
|
112
112
|
autoload :Form, "shopify_cli/form"
|
|
113
113
|
autoload :Git, "shopify_cli/git"
|
|
114
|
+
autoload :GitHub, "shopify_cli/github"
|
|
114
115
|
autoload :Helpers, "shopify_cli/helpers"
|
|
115
116
|
autoload :Heroku, "shopify_cli/heroku"
|
|
116
117
|
autoload :IdentityAuth, "shopify_cli/identity_auth"
|
|
@@ -123,7 +124,6 @@ module ShopifyCLI
|
|
|
123
124
|
autoload :PartnersAPI, "shopify_cli/partners_api"
|
|
124
125
|
autoload :ProcessSupervision, "shopify_cli/process_supervision"
|
|
125
126
|
autoload :Project, "shopify_cli/project"
|
|
126
|
-
autoload :ProjectCommands, "shopify_cli/project_commands"
|
|
127
127
|
autoload :ProjectType, "shopify_cli/project_type"
|
|
128
128
|
autoload :ReportingConfigurationController, "shopify_cli/reporting_configuration_controller"
|
|
129
129
|
autoload :ResolveConstant, "shopify_cli/resolve_constant"
|
|
@@ -131,7 +131,6 @@ module ShopifyCLI
|
|
|
131
131
|
autoload :Result, "shopify_cli/result"
|
|
132
132
|
autoload :Services, "shopify_cli/services"
|
|
133
133
|
autoload :Shopifolk, "shopify_cli/shopifolk"
|
|
134
|
-
autoload :SubCommand, "shopify_cli/sub_command"
|
|
135
134
|
autoload :Task, "shopify_cli/task"
|
|
136
135
|
autoload :Tasks, "shopify_cli/tasks"
|
|
137
136
|
autoload :TransformDataStructure, "shopify_cli/transform_data_structure"
|
data/shopify-cli.gemspec
CHANGED
|
@@ -33,11 +33,7 @@ Gem::Specification.new do |spec|
|
|
|
33
33
|
end
|
|
34
34
|
spec.bindir = "bin"
|
|
35
35
|
spec.require_paths = ["lib", "vendor"]
|
|
36
|
-
spec.
|
|
37
|
-
# Do NOT include `shopify` as a listed executable via `spec.executables`.
|
|
38
|
-
# `ext/shopify-cli/extconf.rb` will dynamically create a script and soft-link
|
|
39
|
-
# `/usr/local/bin/shopify` to that script, in order to "lock" the Ruby used to
|
|
40
|
-
# a single Ruby (useful for debugging in multi-Ruby environments)
|
|
36
|
+
spec.executables << "shopify"
|
|
41
37
|
|
|
42
38
|
spec.add_development_dependency("bundler", "~> 2.2.2")
|
|
43
39
|
spec.add_development_dependency("rake", "~> 12.3", ">= 12.3.3")
|
|
@@ -45,5 +41,5 @@ Gem::Specification.new do |spec|
|
|
|
45
41
|
|
|
46
42
|
spec.add_dependency("bugsnag", "~> 6.22")
|
|
47
43
|
spec.add_dependency("listen", "~> 3.7.0")
|
|
48
|
-
spec.add_dependency("theme-check", "~> 1.
|
|
44
|
+
spec.add_dependency("theme-check", "~> 1.8.0")
|
|
49
45
|
end
|
data/shopify-dev
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
require_relative "./bin/load_shopify"
|
|
4
|
+
|
|
5
|
+
exit(proc do
|
|
6
|
+
begin
|
|
7
|
+
ShopifyCLI::ErrorHandler.call do
|
|
8
|
+
ShopifyCLI::Core::EntryPoint.call(ARGV.dup)
|
|
9
|
+
end
|
|
10
|
+
rescue StandardError => error
|
|
11
|
+
ShopifyCLI::ErrorHandler.exception = error
|
|
12
|
+
if ShopifyCLI::Environment.print_stacktrace?
|
|
13
|
+
raise error
|
|
14
|
+
else
|
|
15
|
+
1
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end.call)
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
require "open3"
|
|
2
|
+
require "colorize"
|
|
2
3
|
|
|
3
4
|
module Utilities
|
|
4
5
|
module Docker
|
|
5
6
|
class Container
|
|
7
|
+
SHOPIFY_PATH = "/usr/src/app"
|
|
6
8
|
SHOPIFY_BIN_PATH = "/usr/src/app/bin/shopify"
|
|
7
9
|
|
|
8
10
|
Error = Class.new(StandardError)
|
|
@@ -55,6 +57,10 @@ module Utilities
|
|
|
55
57
|
end
|
|
56
58
|
|
|
57
59
|
def exec(*args, relative_dir: nil)
|
|
60
|
+
if ARGV.include?("--verbose")
|
|
61
|
+
running_prefix = "Running command: #{args.join(" ")}"
|
|
62
|
+
STDOUT.puts(running_prefix.colorize(:yellow).bold)
|
|
63
|
+
end
|
|
58
64
|
command = ["docker", "exec"]
|
|
59
65
|
cwd = if relative_dir.nil?
|
|
60
66
|
@cwd
|
|
@@ -68,8 +74,30 @@ module Utilities
|
|
|
68
74
|
command << @id
|
|
69
75
|
command += args
|
|
70
76
|
|
|
71
|
-
|
|
72
|
-
|
|
77
|
+
docker_prefix = "Docker (#{args.first}):"
|
|
78
|
+
|
|
79
|
+
if ARGV.include?("--verbose")
|
|
80
|
+
stat = Open3.popen3(*command) do |stdin, stdout, stderr, wait_thread|
|
|
81
|
+
Thread.new do
|
|
82
|
+
stdout.each { |l| STDOUT.puts("#{docker_prefix.colorize(:cyan).bold} #{l}") } unless stdout&.nil?
|
|
83
|
+
end
|
|
84
|
+
Thread.new do
|
|
85
|
+
stderr.each { |l| STDERR.puts("#{docker_prefix.colorize(:red).bold} #{l}") } unless stderr&.nil?
|
|
86
|
+
end
|
|
87
|
+
stdin.close
|
|
88
|
+
|
|
89
|
+
status = wait_thread.value
|
|
90
|
+
|
|
91
|
+
stdout.close
|
|
92
|
+
stderr.close
|
|
93
|
+
|
|
94
|
+
status
|
|
95
|
+
end
|
|
96
|
+
raise StandardError, "The command #{args.first} failed" unless stat.success?
|
|
97
|
+
else
|
|
98
|
+
out, stat = Open3.capture2e(*command)
|
|
99
|
+
raise Error, out unless stat.success?
|
|
100
|
+
end
|
|
73
101
|
end
|
|
74
102
|
end
|
|
75
103
|
end
|
data/utilities/docker.rb
CHANGED
|
@@ -57,8 +57,9 @@ module Utilities
|
|
|
57
57
|
|
|
58
58
|
def build_image_if_needed
|
|
59
59
|
unless image_exists?(image_tag)
|
|
60
|
+
puts "Rebuilding the Docker image..."
|
|
60
61
|
_, err, stat = Open3.capture3(
|
|
61
|
-
"docker", "build",
|
|
62
|
+
"docker", "build", "-t", image_tag, "-f", File.join(root_dir, "Tests.dockerfile"), root_dir
|
|
62
63
|
)
|
|
63
64
|
raise Error, err unless stat.success?
|
|
64
65
|
end
|
|
@@ -66,7 +67,7 @@ module Utilities
|
|
|
66
67
|
|
|
67
68
|
def image_tag
|
|
68
69
|
gemfile_lock_path = File.expand_path("./Gemfile.lock", root_dir)
|
|
69
|
-
dockerfile_path = File.expand_path("./
|
|
70
|
+
dockerfile_path = File.expand_path("./Tests.dockerfile", root_dir)
|
|
70
71
|
fingerprintable_strings = [
|
|
71
72
|
File.read(gemfile_lock_path),
|
|
72
73
|
File.read(dockerfile_path),
|
data/utilities/utilities.rb
CHANGED
|
@@ -222,7 +222,7 @@ module CLI
|
|
|
222
222
|
end
|
|
223
223
|
|
|
224
224
|
def which(cmd, env)
|
|
225
|
-
exts = os == :windows ? env.fetch('PATHEXT').split(';') : ['']
|
|
225
|
+
exts = os == :windows ? env.fetch('PATHEXT', ['']).split(';') : ['']
|
|
226
226
|
env.fetch('PATH', '').split(File::PATH_SEPARATOR).each do |path|
|
|
227
227
|
exts.each do |ext|
|
|
228
228
|
exe = File.join(path, "#{cmd}#{ext}")
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: shopify-cli
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.7.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Shopify
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2021-
|
|
11
|
+
date: 2021-11-17 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -92,14 +92,14 @@ dependencies:
|
|
|
92
92
|
requirements:
|
|
93
93
|
- - "~>"
|
|
94
94
|
- !ruby/object:Gem::Version
|
|
95
|
-
version: 1.
|
|
95
|
+
version: 1.8.0
|
|
96
96
|
type: :runtime
|
|
97
97
|
prerelease: false
|
|
98
98
|
version_requirements: !ruby/object:Gem::Requirement
|
|
99
99
|
requirements:
|
|
100
100
|
- - "~>"
|
|
101
101
|
- !ruby/object:Gem::Version
|
|
102
|
-
version: 1.
|
|
102
|
+
version: 1.8.0
|
|
103
103
|
description: |
|
|
104
104
|
Shopify CLI helps you build Shopify apps faster. It quickly scaffolds Node.js
|
|
105
105
|
and Ruby on Rails embedded apps. It also automates many common tasks in the
|
|
@@ -107,11 +107,12 @@ description: |
|
|
|
107
107
|
and webhooks.
|
|
108
108
|
email:
|
|
109
109
|
- dev-tools-education@shopify.com
|
|
110
|
-
executables:
|
|
111
|
-
|
|
112
|
-
|
|
110
|
+
executables:
|
|
111
|
+
- shopify
|
|
112
|
+
extensions: []
|
|
113
113
|
extra_rdoc_files: []
|
|
114
114
|
files:
|
|
115
|
+
- ".devcontainer.json"
|
|
115
116
|
- ".github/CODEOWNERS"
|
|
116
117
|
- ".github/CODE_OF_CONDUCT.md"
|
|
117
118
|
- ".github/CONTRIBUTING.md"
|
|
@@ -127,9 +128,11 @@ files:
|
|
|
127
128
|
- ".ruby-version"
|
|
128
129
|
- ".tmp/.gitkeep"
|
|
129
130
|
- ".tmp/sv/.gitkeep"
|
|
131
|
+
- ".vscode/extensions.json"
|
|
132
|
+
- ".vscode/settings.json"
|
|
130
133
|
- CHANGELOG.md
|
|
131
134
|
- CONTRIBUTING.md
|
|
132
|
-
-
|
|
135
|
+
- Codespace.dockerfile
|
|
133
136
|
- Gemfile
|
|
134
137
|
- Gemfile.lock
|
|
135
138
|
- LICENSE
|
|
@@ -137,29 +140,21 @@ files:
|
|
|
137
140
|
- RELEASING.md
|
|
138
141
|
- Rakefile
|
|
139
142
|
- SECURITY.md
|
|
140
|
-
-
|
|
143
|
+
- Tests.dockerfile
|
|
144
|
+
- assets/logo.png
|
|
141
145
|
- bin/console
|
|
142
146
|
- bin/load_shopify.rb
|
|
143
147
|
- bin/shopify
|
|
144
148
|
- dev.yml
|
|
145
|
-
- docs/
|
|
146
|
-
- docs/
|
|
147
|
-
- docs/
|
|
148
|
-
- docs/
|
|
149
|
-
-
|
|
150
|
-
-
|
|
151
|
-
- docs/getting-started/index.md
|
|
152
|
-
- docs/getting-started/install/index.md
|
|
153
|
-
- docs/getting-started/migrate/index.md
|
|
154
|
-
- docs/getting-started/uninstall/index.md
|
|
155
|
-
- docs/getting-started/upgrade/index.md
|
|
156
|
-
- docs/help/start-app/index.md
|
|
157
|
-
- docs/index.md
|
|
158
|
-
- ext/shopify-cli/extconf.rb
|
|
149
|
+
- docs/README.md
|
|
150
|
+
- docs/contributors/testing.md
|
|
151
|
+
- docs/users/installation.md
|
|
152
|
+
- docs/users/migrate-from-themekit.md
|
|
153
|
+
- ext/javy/javy.rb
|
|
154
|
+
- ext/javy/version
|
|
159
155
|
- ext/shopify-extensions/extconf.rb
|
|
160
156
|
- ext/shopify-extensions/shopify_extensions.rb
|
|
161
157
|
- ext/shopify-extensions/version
|
|
162
|
-
- install.sh
|
|
163
158
|
- lib/docgen/class_template.md.erb
|
|
164
159
|
- lib/docgen/index_template.md.erb
|
|
165
160
|
- lib/docgen/markdown.rb
|
|
@@ -223,10 +218,12 @@ files:
|
|
|
223
218
|
- lib/project_types/extension/models/npm_package.rb
|
|
224
219
|
- lib/project_types/extension/models/product.rb
|
|
225
220
|
- lib/project_types/extension/models/registration.rb
|
|
221
|
+
- lib/project_types/extension/models/server_config/app.rb
|
|
226
222
|
- lib/project_types/extension/models/server_config/base.rb
|
|
227
223
|
- lib/project_types/extension/models/server_config/development.rb
|
|
228
224
|
- lib/project_types/extension/models/server_config/development_entries.rb
|
|
229
225
|
- lib/project_types/extension/models/server_config/development_renderer.rb
|
|
226
|
+
- lib/project_types/extension/models/server_config/development_resource.rb
|
|
230
227
|
- lib/project_types/extension/models/server_config/extension.rb
|
|
231
228
|
- lib/project_types/extension/models/server_config/root.rb
|
|
232
229
|
- lib/project_types/extension/models/server_config/user.rb
|
|
@@ -241,66 +238,45 @@ files:
|
|
|
241
238
|
- lib/project_types/extension/tasks/choose_next_available_port.rb
|
|
242
239
|
- lib/project_types/extension/tasks/configure_features.rb
|
|
243
240
|
- lib/project_types/extension/tasks/configure_options.rb
|
|
241
|
+
- lib/project_types/extension/tasks/convert_server_config.rb
|
|
244
242
|
- lib/project_types/extension/tasks/converters/app_converter.rb
|
|
245
243
|
- lib/project_types/extension/tasks/converters/product_converter.rb
|
|
246
244
|
- lib/project_types/extension/tasks/converters/registration_converter.rb
|
|
247
|
-
- lib/project_types/extension/tasks/converters/server_config_converter.rb
|
|
248
245
|
- lib/project_types/extension/tasks/converters/validation_error_converter.rb
|
|
249
246
|
- lib/project_types/extension/tasks/converters/version_converter.rb
|
|
250
247
|
- lib/project_types/extension/tasks/create_extension.rb
|
|
248
|
+
- lib/project_types/extension/tasks/ensure_resource_url.rb
|
|
251
249
|
- lib/project_types/extension/tasks/fetch_specifications.rb
|
|
252
250
|
- lib/project_types/extension/tasks/find_npm_packages.rb
|
|
251
|
+
- lib/project_types/extension/tasks/find_package_from_json.rb
|
|
253
252
|
- lib/project_types/extension/tasks/get_app.rb
|
|
254
253
|
- lib/project_types/extension/tasks/get_apps.rb
|
|
255
254
|
- lib/project_types/extension/tasks/get_extensions.rb
|
|
256
255
|
- lib/project_types/extension/tasks/get_product.rb
|
|
257
|
-
- lib/project_types/extension/tasks/
|
|
256
|
+
- lib/project_types/extension/tasks/merge_server_config.rb
|
|
258
257
|
- lib/project_types/extension/tasks/run_extension_command.rb
|
|
259
258
|
- lib/project_types/extension/tasks/update_draft.rb
|
|
260
259
|
- lib/project_types/extension/tasks/user_errors.rb
|
|
261
260
|
- lib/project_types/node/cli.rb
|
|
262
|
-
- lib/project_types/node/commands/connect.rb
|
|
263
|
-
- lib/project_types/node/commands/create.rb
|
|
264
|
-
- lib/project_types/node/commands/deploy.rb
|
|
265
|
-
- lib/project_types/node/commands/deploy/heroku.rb
|
|
266
|
-
- lib/project_types/node/commands/generate.rb
|
|
267
|
-
- lib/project_types/node/commands/open.rb
|
|
268
|
-
- lib/project_types/node/commands/serve.rb
|
|
269
|
-
- lib/project_types/node/commands/tunnel.rb
|
|
270
261
|
- lib/project_types/node/forms/create.rb
|
|
271
262
|
- lib/project_types/node/messages/messages.rb
|
|
272
263
|
- lib/project_types/php/cli.rb
|
|
273
|
-
- lib/project_types/php/commands/connect.rb
|
|
274
|
-
- lib/project_types/php/commands/create.rb
|
|
275
|
-
- lib/project_types/php/commands/deploy.rb
|
|
276
|
-
- lib/project_types/php/commands/deploy/heroku.rb
|
|
277
|
-
- lib/project_types/php/commands/open.rb
|
|
278
|
-
- lib/project_types/php/commands/serve.rb
|
|
279
|
-
- lib/project_types/php/commands/tunnel.rb
|
|
280
264
|
- lib/project_types/php/forms/create.rb
|
|
281
265
|
- lib/project_types/php/messages/messages.rb
|
|
282
266
|
- lib/project_types/rails/cli.rb
|
|
283
|
-
- lib/project_types/rails/commands/connect.rb
|
|
284
267
|
- lib/project_types/rails/commands/create.rb
|
|
285
|
-
- lib/project_types/rails/commands/deploy.rb
|
|
286
|
-
- lib/project_types/rails/commands/deploy/heroku.rb
|
|
287
|
-
- lib/project_types/rails/commands/generate.rb
|
|
288
|
-
- lib/project_types/rails/commands/generate/webhook.rb
|
|
289
|
-
- lib/project_types/rails/commands/open.rb
|
|
290
|
-
- lib/project_types/rails/commands/serve.rb
|
|
291
|
-
- lib/project_types/rails/commands/tunnel.rb
|
|
292
268
|
- lib/project_types/rails/forms/create.rb
|
|
293
269
|
- lib/project_types/rails/gem.rb
|
|
294
270
|
- lib/project_types/rails/messages/messages.rb
|
|
295
271
|
- lib/project_types/rails/ruby.rb
|
|
296
272
|
- lib/project_types/script/cli.rb
|
|
297
273
|
- lib/project_types/script/commands/create.rb
|
|
274
|
+
- lib/project_types/script/commands/javy.rb
|
|
298
275
|
- lib/project_types/script/commands/push.rb
|
|
299
276
|
- lib/project_types/script/config/extension_points.yml
|
|
300
277
|
- lib/project_types/script/errors.rb
|
|
301
278
|
- lib/project_types/script/forms/create.rb
|
|
302
279
|
- lib/project_types/script/graphql/app_script_set.graphql
|
|
303
|
-
- lib/project_types/script/graphql/app_script_update_or_create.graphql
|
|
304
280
|
- lib/project_types/script/graphql/get_app_scripts.graphql
|
|
305
281
|
- lib/project_types/script/graphql/module_upload_url_generate.graphql
|
|
306
282
|
- lib/project_types/script/graphql/script_service_proxy.graphql
|
|
@@ -359,9 +335,21 @@ files:
|
|
|
359
335
|
- lib/shopify_cli/app_type_detector.rb
|
|
360
336
|
- lib/shopify_cli/command.rb
|
|
361
337
|
- lib/shopify_cli/command/app_sub_command.rb
|
|
338
|
+
- lib/shopify_cli/command/project_command.rb
|
|
339
|
+
- lib/shopify_cli/command/sub_command.rb
|
|
362
340
|
- lib/shopify_cli/command_options.rb
|
|
363
341
|
- lib/shopify_cli/command_options/command_serve_options.rb
|
|
364
342
|
- lib/shopify_cli/commands.rb
|
|
343
|
+
- lib/shopify_cli/commands/app.rb
|
|
344
|
+
- lib/shopify_cli/commands/app/connect.rb
|
|
345
|
+
- lib/shopify_cli/commands/app/create.rb
|
|
346
|
+
- lib/shopify_cli/commands/app/create/node.rb
|
|
347
|
+
- lib/shopify_cli/commands/app/create/php.rb
|
|
348
|
+
- lib/shopify_cli/commands/app/create/rails.rb
|
|
349
|
+
- lib/shopify_cli/commands/app/deploy.rb
|
|
350
|
+
- lib/shopify_cli/commands/app/open.rb
|
|
351
|
+
- lib/shopify_cli/commands/app/serve.rb
|
|
352
|
+
- lib/shopify_cli/commands/app/tunnel.rb
|
|
365
353
|
- lib/shopify_cli/commands/config.rb
|
|
366
354
|
- lib/shopify_cli/commands/help.rb
|
|
367
355
|
- lib/shopify_cli/commands/login.rb
|
|
@@ -391,6 +379,8 @@ files:
|
|
|
391
379
|
- lib/shopify_cli/feature.rb
|
|
392
380
|
- lib/shopify_cli/form.rb
|
|
393
381
|
- lib/shopify_cli/git.rb
|
|
382
|
+
- lib/shopify_cli/github.rb
|
|
383
|
+
- lib/shopify_cli/github/issue_url_generator.rb
|
|
394
384
|
- lib/shopify_cli/helpers.rb
|
|
395
385
|
- lib/shopify_cli/helpers/haikunator.rb
|
|
396
386
|
- lib/shopify_cli/heroku.rb
|
|
@@ -421,10 +411,23 @@ files:
|
|
|
421
411
|
- lib/shopify_cli/resources/env_file.rb
|
|
422
412
|
- lib/shopify_cli/result.rb
|
|
423
413
|
- lib/shopify_cli/services.rb
|
|
414
|
+
- lib/shopify_cli/services/app/connect_service.rb
|
|
415
|
+
- lib/shopify_cli/services/app/create/node_service.rb
|
|
416
|
+
- lib/shopify_cli/services/app/create/php_service.rb
|
|
417
|
+
- lib/shopify_cli/services/app/create/rails_service.rb
|
|
418
|
+
- lib/shopify_cli/services/app/deploy/heroku/node_service.rb
|
|
419
|
+
- lib/shopify_cli/services/app/deploy/heroku/php_service.rb
|
|
420
|
+
- lib/shopify_cli/services/app/deploy/heroku/rails_service.rb
|
|
421
|
+
- lib/shopify_cli/services/app/open_service.rb
|
|
422
|
+
- lib/shopify_cli/services/app/serve/node_service.rb
|
|
423
|
+
- lib/shopify_cli/services/app/serve/php_service.rb
|
|
424
|
+
- lib/shopify_cli/services/app/serve/rails_service.rb
|
|
425
|
+
- lib/shopify_cli/services/app/tunnel/auth_service.rb
|
|
426
|
+
- lib/shopify_cli/services/app/tunnel/start_service.rb
|
|
427
|
+
- lib/shopify_cli/services/app/tunnel/stop_service.rb
|
|
424
428
|
- lib/shopify_cli/services/base_service.rb
|
|
425
429
|
- lib/shopify_cli/services/reporting_service.rb
|
|
426
430
|
- lib/shopify_cli/shopifolk.rb
|
|
427
|
-
- lib/shopify_cli/sub_command.rb
|
|
428
431
|
- lib/shopify_cli/task.rb
|
|
429
432
|
- lib/shopify_cli/tasks.rb
|
|
430
433
|
- lib/shopify_cli/tasks/confirm_store.rb
|
|
@@ -456,8 +459,8 @@ files:
|
|
|
456
459
|
- lib/shopify_cli/tunnel.rb
|
|
457
460
|
- lib/shopify_cli/version.rb
|
|
458
461
|
- shopify-cli.gemspec
|
|
459
|
-
- shopify
|
|
460
|
-
-
|
|
462
|
+
- shopify-dev
|
|
463
|
+
- utilities/constants.rb
|
|
461
464
|
- utilities/docker.rb
|
|
462
465
|
- utilities/docker/container.rb
|
|
463
466
|
- utilities/utilities.rb
|
data/docs/_config.yml
DELETED
data/docs/app/node/index.md
DELETED
data/docs/app/rails/index.md
DELETED
data/docs/core/index.md
DELETED
data/docs/index.md
DELETED