Why is this important? As a measure to increase site stability and prevent excessive use, the Chocolatey website uses rate limiting on requests for the community repository. Rate limiting was introduced in November 2018. Most folks typically won't hit rate limits unless they are automatically tagged for excessive use. If you do trigger the rate limit, you will see a
(429) Too Many Requests when executing Chocolatey on your agents.
To help prevent triggering rate limiters the ChocolateyForAutomate plugin deploys several new tactics during automation.
#1 The plugin can be scheduled to run automations (Installs and Updates) on a per week or per month bases. Each client can have their own schedule set independently of other clients. This allows you to set when you want automation to attempt the install or update of managed application at the client level.
#2 The plugin can be set to add a delay between individual agents script schedules. This delay is in minutes and can be modified by updating the property value in the Automate database. This feature helps slow the number of agents at one time making requests to the public repositories.
#3 The plugin scripted services has built in a LOOP delay that forces Automate script to sleep after every 5 install or update requests. It repeats this delay until all applications are accounted for. This feature helps prevent a large set of application updates or installs from triggering the Chocolatey' s limiters from a single agents requests. Yo can control the loop delay timer from inside the plugin as a global option.
These three new features should significantly help MSPs throttle their public repository usage allowing for faster completion of installs and updates across the different locations of their managed clients.