-
Notifications
You must be signed in to change notification settings - Fork 254
Modernize codebase: Fix linting issues, update CI/CD workflow, and improve test categorization #549
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👍 Small comment about the go version being used which is no longer stable. I believe we would need to bump it in our go.mod file too however it can be addressed in another PR too.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👍
Supercedes #455
PCI review checklist
I have documented a clear reason for, and description of, the change I am making.
If applicable, I've documented a plan to revert these changes if they require more than reverting the pull request.
If applicable, I've documented the impact of any changes to security controls.
Examples of changes to security controls include using new access control methods, adding or removing logging pipelines, etc.
Overview
This PR comprehensively modernizes the go-getter codebase by addressing linting warnings, updating CI/CD workflows for better security and performance, and implementing idiomatic Go patterns.
Key Changes
CI/CD Workflow Improvements
Code Modernization & Linting Fixes
io/ioutil
: Replaced all usages with modernos
package functionsioutil.ReadFile
→os.ReadFile
ioutil.TempDir
→os.MkdirTemp
ioutil.TempFile
→os.CreateTemp
interface{}
→any
for improved readabilityslices.Contains()
instead of manual loops for better performancerange
over integers for cleaner iterationAWS SDK Modernization
WithEndpointResolverWithOptions
to modernBaseEndpoint
configuration inNewFromConfig
optionsImproved Test Architecture
-v
flag to see exactly which tests run in validationBenefits
Testing
go test -short
This modernization brings the codebase up to current Go standards while significantly improving the developer experience and CI/CD security posture.