-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add client retry or throttling/backoff #39
Comments
Any news? I have encountered the same issue and am currently looking into replacing the neocities-cli with WebDAV or switching away from neocities entirely because I'm fed up having to fix this every few months. |
I was having the same issue, so I forked the repo and added a Here's that changed bit: https://github.com/stefan-burke/neocities-ruby/blob/master/lib/neocities/client.rb#L73 |
Saw this too late. I have since switched to nsc within a small alpine/curl container and so far it seems to work nicely. And as a bonus on top without artificial delays and with a way smaller footprint (sh+curl). Edit: here's corresponding the GitLab pipeline script, if anybody is interested:
|
Hey there!
Thank you for creating this tool! I've noticed when I use a hosted CI service like CircleCI that uploads a Jekyll site that sometimes it fails, and the client gets disconnected. When it does this, it looks like the push is screaming through (like >30 uploads in a second) and the client might be getting cut off and rate limited.
Example deploy command:
Error coming out, and retries seem to fail the same way after about 30 uploads that went through really fast:
I haven't been able to replicate this issue from my laptop, where uploads of individual files are uploaded slower. If it is server-side rate limiting, it'd be nice if the client could jive with it. This doesn't fail every time with CI services. If things are a bit slower uploading from a CI service, it will sometimes work.
Steps to replicate
NEOCITIES_API_KEY
with your API key.circleci/config.yml
that looks something like this (assumes static assets are in a directory called_site
like with Jekyll):With failed tasks, you can retry with SSH to log in with CircleCI to manually run the deploy command and experiment.
The text was updated successfully, but these errors were encountered: