shopify-cli 2.2.0 → 2.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/.github/CODEOWNERS +1 -0
- data/.github/ISSUE_TEMPLATE.md +0 -4
- data/.github/workflows/shopify.yml +106 -0
- data/.gitignore +2 -0
- data/CHANGELOG.md +23 -0
- data/CONTRIBUTING.md +23 -0
- data/Dockerfile +19 -0
- data/Gemfile +1 -0
- data/Gemfile.lock +50 -13
- data/Rakefile +66 -0
- data/dev.yml +11 -1
- data/ext/shopify-extensions/extconf.rb +21 -0
- data/ext/shopify-extensions/shopify_extensions.rb +152 -0
- data/ext/shopify-extensions/version +1 -0
- data/lib/project_types/extension/cli.rb +14 -0
- data/lib/project_types/extension/commands/build.rb +30 -2
- data/lib/project_types/extension/commands/create.rb +25 -0
- data/lib/project_types/extension/commands/push.rb +0 -1
- data/lib/project_types/extension/features/argo.rb +1 -11
- data/lib/project_types/extension/forms/create.rb +4 -1
- data/lib/project_types/extension/forms/questions/ask_template.rb +44 -0
- data/lib/project_types/extension/messages/messages.rb +3 -0
- data/lib/project_types/extension/models/development_server.rb +35 -0
- data/lib/project_types/extension/models/development_server_requirements.rb +17 -0
- data/lib/project_types/extension/models/server_config/base.rb +31 -0
- data/lib/project_types/extension/models/server_config/development.rb +23 -0
- data/lib/project_types/extension/models/server_config/development_entries.rb +38 -0
- data/lib/project_types/extension/models/server_config/development_renderer.rb +30 -0
- data/lib/project_types/extension/models/server_config/extension.rb +35 -0
- data/lib/project_types/extension/models/server_config/root.rb +18 -0
- data/lib/project_types/extension/models/server_config/user.rb +10 -0
- data/lib/project_types/extension/models/specification_handlers/checkout_post_purchase.rb +10 -0
- data/lib/project_types/extension/models/specification_handlers/checkout_ui_extension.rb +1 -1
- data/lib/project_types/extension/tasks/choose_next_available_port.rb +1 -1
- data/lib/project_types/extension/tasks/run_extension_command.rb +58 -0
- data/lib/project_types/node/commands/create.rb +1 -5
- data/lib/project_types/rails/commands/create.rb +1 -5
- data/lib/project_types/script/cli.rb +2 -0
- data/lib/project_types/script/graphql/app_script_set.graphql +40 -0
- data/lib/project_types/script/graphql/app_script_update_or_create.graphql +0 -44
- data/lib/project_types/script/graphql/module_upload_url_generate.graphql +9 -0
- data/lib/project_types/script/layers/application/push_script.rb +10 -1
- data/lib/project_types/script/layers/domain/push_package.rb +1 -14
- data/lib/project_types/script/layers/infrastructure/api_clients.rb +89 -0
- data/lib/project_types/script/layers/infrastructure/errors.rb +2 -0
- data/lib/project_types/script/layers/infrastructure/languages/assemblyscript_project_creator.rb +1 -1
- data/lib/project_types/script/layers/infrastructure/push_package_repository.rb +0 -1
- data/lib/project_types/script/layers/infrastructure/script_service.rb +29 -94
- data/lib/project_types/script/layers/infrastructure/script_uploader.rb +27 -0
- data/lib/project_types/script/messages/messages.rb +3 -0
- data/lib/project_types/script/tasks/ensure_env.rb +2 -2
- data/lib/project_types/script/ui/error_handler.rb +6 -1
- data/lib/project_types/theme/commands/pull.rb +6 -0
- data/lib/project_types/theme/commands/push.rb +6 -0
- data/lib/shopify-cli/constants.rb +26 -0
- data/lib/shopify-cli/environment.rb +60 -0
- data/lib/shopify-cli/git.rb +2 -2
- data/lib/shopify-cli/identity_auth.rb +16 -23
- data/lib/shopify-cli/partners_api.rb +3 -27
- data/lib/shopify-cli/process_supervision.rb +14 -14
- data/lib/shopify-cli/theme/dev_server/header_hash.rb +4 -0
- data/lib/shopify-cli/theme/dev_server/hot_reload.rb +4 -5
- data/lib/shopify-cli/theme/dev_server/proxy.rb +13 -1
- data/lib/shopify-cli/theme/development_theme.rb +16 -2
- data/lib/shopify-cli/theme/file.rb +11 -3
- data/lib/shopify-cli/theme/ignore_filter.rb +7 -0
- data/lib/shopify-cli/theme/syncer.rb +1 -1
- data/lib/shopify-cli/version.rb +1 -1
- data/lib/shopify_cli.rb +4 -2
- data/shopify-cli.gemspec +3 -3
- metadata +31 -9
- data/.github/workflows/build.yml +0 -28
@@ -8,16 +8,6 @@ module ShopifyCli
|
|
8
8
|
class PartnersAPI < API
|
9
9
|
autoload :Organizations, "shopify-cli/partners_api/organizations"
|
10
10
|
|
11
|
-
# Defines the environment variable that this API looks for to operate on local
|
12
|
-
# services. If you set this environment variable in your shell then the partners
|
13
|
-
# API will operate on your local instance
|
14
|
-
#
|
15
|
-
# #### Example
|
16
|
-
#
|
17
|
-
# SHOPIFY_APP_CLI_LOCAL_PARTNERS=1 shopify create
|
18
|
-
#
|
19
|
-
LOCAL_DEBUG = "SHOPIFY_APP_CLI_LOCAL_PARTNERS"
|
20
|
-
|
21
11
|
class << self
|
22
12
|
##
|
23
13
|
# issues a graphql query or mutation to the Shopify Partners Dashboard CLI Schema.
|
@@ -59,11 +49,11 @@ module ShopifyCli
|
|
59
49
|
ctx.puts(ctx.message("core.partners_api.error.account_not_found", ShopifyCli::TOOL_NAME))
|
60
50
|
end
|
61
51
|
|
62
|
-
def partners_url_for(organization_id, api_client_id
|
52
|
+
def partners_url_for(organization_id, api_client_id)
|
63
53
|
if ShopifyCli::Shopifolk.acting_as_shopify_organization?
|
64
54
|
organization_id = "internal"
|
65
55
|
end
|
66
|
-
"
|
56
|
+
"https://#{Environment.partners_domain}/#{organization_id}/apps/#{api_client_id}"
|
67
57
|
end
|
68
58
|
|
69
59
|
private
|
@@ -72,7 +62,7 @@ module ShopifyCli
|
|
72
62
|
new(
|
73
63
|
ctx: ctx,
|
74
64
|
token: access_token(ctx),
|
75
|
-
url: "
|
65
|
+
url: "https://#{Environment.partners_domain}/api/cli/graphql",
|
76
66
|
)
|
77
67
|
end
|
78
68
|
|
@@ -83,20 +73,6 @@ module ShopifyCli
|
|
83
73
|
end
|
84
74
|
end
|
85
75
|
|
86
|
-
def endpoint
|
87
|
-
return "https://partners.shopify.com" if ENV[LOCAL_DEBUG].nil?
|
88
|
-
"https://partners.myshopify.io/"
|
89
|
-
end
|
90
|
-
|
91
|
-
def partners_endpoint(local_debug)
|
92
|
-
domain = if local_debug
|
93
|
-
"partners.myshopify.io"
|
94
|
-
else
|
95
|
-
"partners.shopify.com"
|
96
|
-
end
|
97
|
-
"https://#{domain}"
|
98
|
-
end
|
99
|
-
|
100
76
|
def auth_failure_info(ctx, error)
|
101
77
|
if error.response
|
102
78
|
headers = %w(www-authenticate x-request-id)
|
@@ -59,10 +59,20 @@ module ShopifyCli
|
|
59
59
|
def start(identifier, args)
|
60
60
|
return for_ident(identifier) if running?(identifier)
|
61
61
|
|
62
|
-
#
|
63
|
-
# that means that it dies along with the original process if it is interrupted.
|
64
|
-
# that it doesn't have to be restarted on every run.
|
65
|
-
if
|
62
|
+
# Some systems don't support forking process without extra gems, so we resort to spawning a new child process -
|
63
|
+
# that means that it dies along with the original process if it is interrupted. If possible, we fork the process
|
64
|
+
# so that it doesn't have to be restarted on every run.
|
65
|
+
if Process.respond_to?(:fork)
|
66
|
+
fork do
|
67
|
+
pid_file = new(identifier, pid: Process.pid)
|
68
|
+
pid_file.write
|
69
|
+
STDOUT.reopen(pid_file.log_path, "w")
|
70
|
+
STDERR.reopen(pid_file.log_path, "w")
|
71
|
+
STDIN.reopen("/dev/null", "r")
|
72
|
+
Process.setsid
|
73
|
+
exec(*args)
|
74
|
+
end
|
75
|
+
else
|
66
76
|
pid_file = new(identifier)
|
67
77
|
|
68
78
|
# Make sure the file exists and is empty, otherwise Windows fails
|
@@ -77,16 +87,6 @@ module ShopifyCli
|
|
77
87
|
pid_file.write
|
78
88
|
|
79
89
|
Process.detach(pid)
|
80
|
-
else
|
81
|
-
fork do
|
82
|
-
pid_file = new(identifier, pid: Process.pid)
|
83
|
-
pid_file.write
|
84
|
-
STDOUT.reopen(pid_file.log_path, "w")
|
85
|
-
STDERR.reopen(pid_file.log_path, "w")
|
86
|
-
STDIN.reopen("/dev/null", "r")
|
87
|
-
Process.setsid
|
88
|
-
exec(*args)
|
89
|
-
end
|
90
90
|
end
|
91
91
|
|
92
92
|
sleep(0.1)
|
@@ -47,6 +47,10 @@ module ShopifyCli
|
|
47
47
|
super(k) || super(@names[k.downcase])
|
48
48
|
end
|
49
49
|
|
50
|
+
def fetch(k, default = nil)
|
51
|
+
self[k] || super(@names[k.downcase], default)
|
52
|
+
end
|
53
|
+
|
50
54
|
def []=(k, v)
|
51
55
|
canonical = k.downcase.freeze
|
52
56
|
# .delete is expensive, don't invoke it unless necessary
|
@@ -34,11 +34,10 @@ module ShopifyCli
|
|
34
34
|
files = (modified + added).reject { |file| @ignore_filter&.ignore?(file) }
|
35
35
|
.map { |file| @theme[file].relative_path }
|
36
36
|
|
37
|
-
|
38
|
-
modified: files
|
39
|
-
|
40
|
-
|
41
|
-
@ctx.debug("[HotReload] Modified #{files.join(", ")}")
|
37
|
+
unless files.empty?
|
38
|
+
@streams.broadcast(JSON.generate(modified: files))
|
39
|
+
@ctx.debug("[HotReload] Modified #{files.join(", ")}")
|
40
|
+
end
|
42
41
|
end
|
43
42
|
|
44
43
|
private
|
@@ -155,11 +155,16 @@ module ShopifyCli
|
|
155
155
|
Time.now - @last_session_cookie_refresh >= SESSION_COOKIE_MAX_AGE
|
156
156
|
end
|
157
157
|
|
158
|
+
def extract_secure_session_id_from_response_headers(headers)
|
159
|
+
return unless headers["set-cookie"]
|
160
|
+
headers["set-cookie"][SESSION_COOKIE_REGEXP, 1]
|
161
|
+
end
|
162
|
+
|
158
163
|
def secure_session_id
|
159
164
|
if secure_session_id_expired?
|
160
165
|
@ctx.debug("Refreshing preview _secure_session_id cookie")
|
161
166
|
response = request("HEAD", "/", query: { preview_theme_id: @theme.id })
|
162
|
-
@secure_session_id = response
|
167
|
+
@secure_session_id = extract_secure_session_id_from_response_headers(response)
|
163
168
|
@last_session_cookie_refresh = Time.now
|
164
169
|
end
|
165
170
|
|
@@ -179,6 +184,13 @@ module ShopifyCli
|
|
179
184
|
response_headers["location"].gsub!(%r{(https://#{@theme.shop})}, "http://127.0.0.1:9292")
|
180
185
|
end
|
181
186
|
|
187
|
+
new_session_id = extract_secure_session_id_from_response_headers(response_headers)
|
188
|
+
if new_session_id
|
189
|
+
@ctx.debug("New _secure_session_id cookie from response")
|
190
|
+
@secure_session_id = new_session_id
|
191
|
+
@last_session_cookie_refresh = Time.now
|
192
|
+
end
|
193
|
+
|
182
194
|
response_headers
|
183
195
|
end
|
184
196
|
|
@@ -6,13 +6,24 @@ require "securerandom"
|
|
6
6
|
|
7
7
|
module ShopifyCli
|
8
8
|
module Theme
|
9
|
+
API_NAME_LIMIT = 50
|
10
|
+
|
9
11
|
class DevelopmentTheme < Theme
|
10
12
|
def id
|
11
13
|
ShopifyCli::DB.get(:development_theme_id)
|
12
14
|
end
|
13
15
|
|
14
16
|
def name
|
15
|
-
ShopifyCli::DB.get(:development_theme_name)
|
17
|
+
existing_name = ShopifyCli::DB.get(:development_theme_name)
|
18
|
+
# Up to version 2.3.0 (included) generated names stored locally
|
19
|
+
# could have more than 50 characters and the API rejected them.
|
20
|
+
# This code ensures we update the name for those users to ensure
|
21
|
+
# the name stays under the limit.
|
22
|
+
if existing_name.nil? || existing_name.length > API_NAME_LIMIT
|
23
|
+
generate_theme_name
|
24
|
+
else
|
25
|
+
existing_name
|
26
|
+
end
|
16
27
|
end
|
17
28
|
|
18
29
|
def role
|
@@ -58,7 +69,10 @@ module ShopifyCli
|
|
58
69
|
hostname = Socket.gethostname.split(".").shift
|
59
70
|
hash = SecureRandom.hex(3)
|
60
71
|
|
61
|
-
theme_name = "Development (
|
72
|
+
theme_name = "Development ()"
|
73
|
+
hostname_character_limit = API_NAME_LIMIT - theme_name.length - hash.length - 1
|
74
|
+
identifier = "#{hash}-#{hostname[0, hostname_character_limit]}"
|
75
|
+
theme_name = "Development (#{identifier})"
|
62
76
|
|
63
77
|
ShopifyCli::DB.set(development_theme_name: theme_name)
|
64
78
|
|
@@ -17,12 +17,20 @@ module ShopifyCli
|
|
17
17
|
end
|
18
18
|
|
19
19
|
def read
|
20
|
-
|
20
|
+
if text?
|
21
|
+
path.read
|
22
|
+
else
|
23
|
+
path.read(mode: "rb")
|
24
|
+
end
|
21
25
|
end
|
22
26
|
|
23
|
-
def write(
|
27
|
+
def write(content)
|
24
28
|
path.parent.mkpath unless path.parent.directory?
|
25
|
-
|
29
|
+
if text?
|
30
|
+
path.write(content)
|
31
|
+
else
|
32
|
+
path.write(content, 0, mode: "wb")
|
33
|
+
end
|
26
34
|
end
|
27
35
|
|
28
36
|
def delete
|
@@ -256,7 +256,7 @@ module ShopifyCli
|
|
256
256
|
|
257
257
|
attachment = body.dig("asset", "attachment")
|
258
258
|
value = if attachment
|
259
|
-
file.write(Base64.decode64(attachment)
|
259
|
+
file.write(Base64.decode64(attachment))
|
260
260
|
else
|
261
261
|
file.write(body.dig("asset", "value"))
|
262
262
|
end
|
data/lib/shopify-cli/version.rb
CHANGED
data/lib/shopify_cli.rb
CHANGED
@@ -94,6 +94,8 @@ module ShopifyCli
|
|
94
94
|
)
|
95
95
|
end
|
96
96
|
|
97
|
+
autoload :Constants, "shopify-cli/constants"
|
98
|
+
autoload :Environment, "shopify-cli/environment"
|
97
99
|
autoload :AdminAPI, "shopify-cli/admin_api"
|
98
100
|
autoload :API, "shopify-cli/api"
|
99
101
|
autoload :Command, "shopify-cli/command"
|
@@ -132,7 +134,7 @@ module ShopifyCli
|
|
132
134
|
Context.load_messages(ShopifyCli::Messages::MESSAGES)
|
133
135
|
|
134
136
|
def self.cache_dir
|
135
|
-
cache_dir = if
|
137
|
+
cache_dir = if Environment.running_tests?
|
136
138
|
TEMP_DIR
|
137
139
|
elsif ENV["LOCALAPPDATA"].nil?
|
138
140
|
File.join(File.expand_path(ENV.fetch("XDG_CACHE_HOME", "~/.cache")), TOOL_NAME)
|
@@ -147,7 +149,7 @@ module ShopifyCli
|
|
147
149
|
end
|
148
150
|
|
149
151
|
def self.tool_config_path
|
150
|
-
if
|
152
|
+
if Environment.running_tests?
|
151
153
|
TEMP_DIR
|
152
154
|
elsif ENV["APPDATA"].nil?
|
153
155
|
File.join(File.expand_path(ENV.fetch("XDG_CONFIG_HOME", "~/.config")), TOOL_NAME)
|
data/shopify-cli.gemspec
CHANGED
@@ -39,10 +39,10 @@ Gem::Specification.new do |spec|
|
|
39
39
|
# `/usr/local/bin/shopify` to that script, in order to "lock" the Ruby used to
|
40
40
|
# a single Ruby (useful for debugging in multi-Ruby environments)
|
41
41
|
|
42
|
-
spec.add_development_dependency("bundler", "~> 2.
|
42
|
+
spec.add_development_dependency("bundler", "~> 2.2.2")
|
43
43
|
spec.add_development_dependency("rake", "~> 12.3", ">= 12.3.3")
|
44
44
|
spec.add_development_dependency("minitest", "~> 5.0")
|
45
45
|
|
46
|
-
spec.add_dependency("listen", "~> 3.
|
47
|
-
spec.add_dependency("theme-check", "~> 1.
|
46
|
+
spec.add_dependency("listen", "~> 3.7.0")
|
47
|
+
spec.add_dependency("theme-check", "~> 1.4.0")
|
48
48
|
end
|
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.4.0
|
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-09-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.
|
19
|
+
version: 2.2.2
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 2.
|
26
|
+
version: 2.2.2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -64,28 +64,28 @@ dependencies:
|
|
64
64
|
requirements:
|
65
65
|
- - "~>"
|
66
66
|
- !ruby/object:Gem::Version
|
67
|
-
version:
|
67
|
+
version: 3.7.0
|
68
68
|
type: :runtime
|
69
69
|
prerelease: false
|
70
70
|
version_requirements: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
72
|
- - "~>"
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version:
|
74
|
+
version: 3.7.0
|
75
75
|
- !ruby/object:Gem::Dependency
|
76
76
|
name: theme-check
|
77
77
|
requirement: !ruby/object:Gem::Requirement
|
78
78
|
requirements:
|
79
79
|
- - "~>"
|
80
80
|
- !ruby/object:Gem::Version
|
81
|
-
version:
|
81
|
+
version: 1.4.0
|
82
82
|
type: :runtime
|
83
83
|
prerelease: false
|
84
84
|
version_requirements: !ruby/object:Gem::Requirement
|
85
85
|
requirements:
|
86
86
|
- - "~>"
|
87
87
|
- !ruby/object:Gem::Version
|
88
|
-
version:
|
88
|
+
version: 1.4.0
|
89
89
|
description: |
|
90
90
|
Shopify CLI helps you build Shopify apps faster. It quickly scaffolds Node.js
|
91
91
|
and Ruby on Rails embedded apps. It also automates many common tasks in the
|
@@ -105,7 +105,7 @@ files:
|
|
105
105
|
- ".github/ISSUE_TEMPLATE.md"
|
106
106
|
- ".github/PULL_REQUEST_TEMPLATE.md"
|
107
107
|
- ".github/probots.yml"
|
108
|
-
- ".github/workflows/
|
108
|
+
- ".github/workflows/shopify.yml"
|
109
109
|
- ".github/workflows/triage.yml"
|
110
110
|
- ".gitignore"
|
111
111
|
- ".rubocop.yml"
|
@@ -114,6 +114,8 @@ files:
|
|
114
114
|
- ".tmp/.gitkeep"
|
115
115
|
- ".tmp/sv/.gitkeep"
|
116
116
|
- CHANGELOG.md
|
117
|
+
- CONTRIBUTING.md
|
118
|
+
- Dockerfile
|
117
119
|
- Gemfile
|
118
120
|
- Gemfile.lock
|
119
121
|
- LICENSE
|
@@ -139,6 +141,9 @@ files:
|
|
139
141
|
- docs/help/start-app/index.md
|
140
142
|
- docs/index.md
|
141
143
|
- ext/shopify-cli/extconf.rb
|
144
|
+
- ext/shopify-extensions/extconf.rb
|
145
|
+
- ext/shopify-extensions/shopify_extensions.rb
|
146
|
+
- ext/shopify-extensions/version
|
142
147
|
- install.sh
|
143
148
|
- lib/docgen/class_template.md.erb
|
144
149
|
- lib/docgen/index_template.md.erb
|
@@ -192,14 +197,24 @@ files:
|
|
192
197
|
- lib/project_types/extension/forms/questions/ask_app.rb
|
193
198
|
- lib/project_types/extension/forms/questions/ask_name.rb
|
194
199
|
- lib/project_types/extension/forms/questions/ask_registration.rb
|
200
|
+
- lib/project_types/extension/forms/questions/ask_template.rb
|
195
201
|
- lib/project_types/extension/forms/questions/ask_type.rb
|
196
202
|
- lib/project_types/extension/messages/message_loading.rb
|
197
203
|
- lib/project_types/extension/messages/messages.rb
|
198
204
|
- lib/project_types/extension/models/app.rb
|
205
|
+
- lib/project_types/extension/models/development_server.rb
|
206
|
+
- lib/project_types/extension/models/development_server_requirements.rb
|
199
207
|
- lib/project_types/extension/models/lazy_specification_handler.rb
|
200
208
|
- lib/project_types/extension/models/npm_package.rb
|
201
209
|
- lib/project_types/extension/models/product.rb
|
202
210
|
- lib/project_types/extension/models/registration.rb
|
211
|
+
- lib/project_types/extension/models/server_config/base.rb
|
212
|
+
- lib/project_types/extension/models/server_config/development.rb
|
213
|
+
- lib/project_types/extension/models/server_config/development_entries.rb
|
214
|
+
- lib/project_types/extension/models/server_config/development_renderer.rb
|
215
|
+
- lib/project_types/extension/models/server_config/extension.rb
|
216
|
+
- lib/project_types/extension/models/server_config/root.rb
|
217
|
+
- lib/project_types/extension/models/server_config/user.rb
|
203
218
|
- lib/project_types/extension/models/specification.rb
|
204
219
|
- lib/project_types/extension/models/specification_handlers/checkout_post_purchase.rb
|
205
220
|
- lib/project_types/extension/models/specification_handlers/checkout_ui_extension.rb
|
@@ -223,6 +238,7 @@ files:
|
|
223
238
|
- lib/project_types/extension/tasks/get_apps.rb
|
224
239
|
- lib/project_types/extension/tasks/get_extensions.rb
|
225
240
|
- lib/project_types/extension/tasks/get_product.rb
|
241
|
+
- lib/project_types/extension/tasks/run_extension_command.rb
|
226
242
|
- lib/project_types/extension/tasks/update_draft.rb
|
227
243
|
- lib/project_types/extension/tasks/user_errors.rb
|
228
244
|
- lib/project_types/node/cli.rb
|
@@ -256,8 +272,10 @@ files:
|
|
256
272
|
- lib/project_types/script/config/extension_points.yml
|
257
273
|
- lib/project_types/script/errors.rb
|
258
274
|
- lib/project_types/script/forms/create.rb
|
275
|
+
- lib/project_types/script/graphql/app_script_set.graphql
|
259
276
|
- lib/project_types/script/graphql/app_script_update_or_create.graphql
|
260
277
|
- lib/project_types/script/graphql/get_app_scripts.graphql
|
278
|
+
- lib/project_types/script/graphql/module_upload_url_generate.graphql
|
261
279
|
- lib/project_types/script/graphql/script_service_proxy.graphql
|
262
280
|
- lib/project_types/script/layers/application/build_script.rb
|
263
281
|
- lib/project_types/script/layers/application/create_script.rb
|
@@ -270,6 +288,7 @@ files:
|
|
270
288
|
- lib/project_types/script/layers/domain/push_package.rb
|
271
289
|
- lib/project_types/script/layers/domain/script_json.rb
|
272
290
|
- lib/project_types/script/layers/domain/script_project.rb
|
291
|
+
- lib/project_types/script/layers/infrastructure/api_clients.rb
|
273
292
|
- lib/project_types/script/layers/infrastructure/command_runner.rb
|
274
293
|
- lib/project_types/script/layers/infrastructure/errors.rb
|
275
294
|
- lib/project_types/script/layers/infrastructure/extension_point_repository.rb
|
@@ -282,6 +301,7 @@ files:
|
|
282
301
|
- lib/project_types/script/layers/infrastructure/push_package_repository.rb
|
283
302
|
- lib/project_types/script/layers/infrastructure/script_project_repository.rb
|
284
303
|
- lib/project_types/script/layers/infrastructure/script_service.rb
|
304
|
+
- lib/project_types/script/layers/infrastructure/script_uploader.rb
|
285
305
|
- lib/project_types/script/messages/messages.rb
|
286
306
|
- lib/project_types/script/tasks/ensure_env.rb
|
287
307
|
- lib/project_types/script/ui/error_handler.rb
|
@@ -322,6 +342,7 @@ files:
|
|
322
342
|
- lib/shopify-cli/commands/version.rb
|
323
343
|
- lib/shopify-cli/commands/whoami.rb
|
324
344
|
- lib/shopify-cli/connect.rb
|
345
|
+
- lib/shopify-cli/constants.rb
|
325
346
|
- lib/shopify-cli/context.rb
|
326
347
|
- lib/shopify-cli/core.rb
|
327
348
|
- lib/shopify-cli/core/entry_point.rb
|
@@ -330,6 +351,7 @@ files:
|
|
330
351
|
- lib/shopify-cli/core/help_resolver.rb
|
331
352
|
- lib/shopify-cli/core/monorail.rb
|
332
353
|
- lib/shopify-cli/db.rb
|
354
|
+
- lib/shopify-cli/environment.rb
|
333
355
|
- lib/shopify-cli/feature.rb
|
334
356
|
- lib/shopify-cli/form.rb
|
335
357
|
- lib/shopify-cli/git.rb
|
data/.github/workflows/build.yml
DELETED
@@ -1,28 +0,0 @@
|
|
1
|
-
name: CI
|
2
|
-
|
3
|
-
on: [push, pull_request]
|
4
|
-
|
5
|
-
jobs:
|
6
|
-
build:
|
7
|
-
name: Ruby ${{ matrix.version }}
|
8
|
-
runs-on: macos-latest
|
9
|
-
strategy:
|
10
|
-
matrix:
|
11
|
-
version:
|
12
|
-
- 3.0.0
|
13
|
-
- 2.6.6
|
14
|
-
- 2.7.1
|
15
|
-
steps:
|
16
|
-
- uses: actions/checkout@v2
|
17
|
-
|
18
|
-
- name: Set up Ruby ${{ matrix.version }}
|
19
|
-
uses: ruby/setup-ruby@v1
|
20
|
-
with:
|
21
|
-
ruby-version: ${{ matrix.version }}
|
22
|
-
bundler-cache: true
|
23
|
-
|
24
|
-
- name: Install Dependencies
|
25
|
-
run: bundle install
|
26
|
-
|
27
|
-
- name: Run Tests
|
28
|
-
run: bundle exec rake
|