Shopify / themekit

Shopify theme development command line tool.
https://shopify.dev/tools/theme-kit
MIT License
1.2k stars 375 forks source link

Error downloading config/settings_data.json #964

Open slauzinho opened 2 years ago

slauzinho commented 2 years ago

Describe the bug Themekit gives an error when trying to download config/settings_data.json

 Errors encountered: 
        [production] error downloading config/settings_data.json: request failed after 5 retries with error: Get https:/XXXXXXXXX.myshopify.com/admin/api/unstable/themes/XXXXXXXXX/assets.json?asset%5Bkey%5D=config%2Fsettings_data.json: net/http: request canceled (Client.Timeout exceeded while awaiting headers)

To Reproduce Steps to reproduce the behavior:

  1. run command 'theme download --password=mypassword --store=store.myshopify.com --name=theme'

Expected behavior I expected to download all the theme files, including the settings_data

Environment (please complete the following information):

production:
  password: XXXXXXXXXXXXXXXXXXXXXXXXX
  theme_id: XXXXXXXXXXXXXXXXXXXXX
  timeout: 4000s
  store: XXXXXXXXXXX.myshopify.com
  ignores: -themekit.ignores

Additional context This was working fine 2 weeks ago and suddenly it stopped working. Issue seems to be happening for every developer on the team, so it's not a user issue. I also tried adjusting the timeout value with no success.

basic-steve commented 2 years ago

Same exact issue here

andrewheins commented 2 years ago

@slauzinho I may have a solution for you here. I had a similar dial tcp: i/o timeout using themekit, and it was resolved on my machine by providing access to Google's DNS servers.

In this instance, System Preferences > Network > [your internet connection] > Advanced > DNS, and then adding 8.8.8.8 as a DNS Server got me around this issue.

I'm not sure why Go, which is what ThemeKit is built on, isn't finding the DNS servers that every other service on my machine does, but this did get me past the issue I was hitting. Might help you too.

slauzinho commented 2 years ago

@andrewheins So I actually use googles dns: image

But that, unfortunately, doesn't seem to fix the issue for me