Skip to content

fix: implemented timeouts and retries for the go compiler and goreleaser binaries#116

Draft
david-montano-circleci wants to merge 1 commit intomasterfrom
fix/install-timeouts-and-retries
Draft

fix: implemented timeouts and retries for the go compiler and goreleaser binaries#116
david-montano-circleci wants to merge 1 commit intomasterfrom
fix/install-timeouts-and-retries

Conversation

@david-montano-circleci
Copy link
Contributor

@david-montano-circleci david-montano-circleci commented Mar 12, 2026

Description

Introduced a centralized retry function in install.sh and install-goreleaser.sh to wrap network-dependent commands. This function manages multiple attempts with a configurable delay and adds explicit timeouts to curl and wget calls.

Reasons

  • Network Resilience: Build environments often experience transient "blips" or timeouts when connecting to external package mirrors (like go.dev or github.com).
  • Reliable CI/CD: By implementing a 3-attempt retry loop with a 5-second delay, we significantly reduce the frequency of pipeline failures caused by intermittent download errors.
  • Fail-fast Timeouts: Added --connect-timeout and --max-time parameters to ensure that hanging connections are terminated quickly rather than stalling the build process indefinitely.

Checklist

Please check through the following before opening your PR. Thank you!

  • I have not made any manual changes to automatically generated files
  • My PR follows best practices as described in the contributing guidelines
  • (Optional, but recommended) My commits are signed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant