From aed41792d2114fb9059896d859433527dd2892ce Mon Sep 17 00:00:00 2001 From: Ruslan Semagin Date: Wed, 19 Feb 2025 13:55:17 +0300 Subject: [PATCH] refactor: rename stage struct Signed-off-by: Ruslan Semagin --- internal/fs.go | 12 ++++++------ internal/helpers.go | 14 ++++++++++++-- internal/module.go | 4 ++-- internal/module_builder.go | 10 +++++----- internal/validators.go | 10 ---------- 5 files changed, 25 insertions(+), 25 deletions(-) diff --git a/internal/fs.go b/internal/fs.go index 81af84d..d84fd26 100644 --- a/internal/fs.go +++ b/internal/fs.go @@ -24,7 +24,7 @@ func copyFromPath( ) { defer wg.Done() - if err := CheckContextActivity(ctx); err != nil { + if err := CheckContext(ctx); err != nil { errCh <- err return } @@ -51,7 +51,7 @@ func walk( jobs := make(chan struct{}, 10) err := filepath.Walk(from, func(path string, info os.FileInfo, err error) error { - if ctxErr := CheckContextActivity(ctx); ctxErr != nil { + if ctxErr := CheckContext(ctx); ctxErr != nil { errCh <- ctxErr return ctxErr } @@ -117,7 +117,7 @@ func copyFile( ) { defer wg.Done() - if err := CheckContextActivity(ctx); err != nil { + if err := CheckContext(ctx); err != nil { errCh <- err return } @@ -153,7 +153,7 @@ func copyFile( } }(in) - if err := CheckContextActivity(ctx); err != nil { + if err := CheckContext(ctx); err != nil { errCh <- err return } @@ -185,7 +185,7 @@ func copyFile( } }(out) - if err := CheckContextActivity(ctx); err != nil { + if err := CheckContext(ctx); err != nil { errCh <- err return } @@ -196,7 +196,7 @@ func copyFile( return } - if err := CheckContextActivity(ctx); err != nil { + if err := CheckContext(ctx); err != nil { errCh <- err return } diff --git a/internal/helpers.go b/internal/helpers.go index 91fb343..c7dc5d2 100644 --- a/internal/helpers.go +++ b/internal/helpers.go @@ -2,6 +2,7 @@ package internal import ( "bytes" + "context" "errors" "fmt" "log" @@ -237,7 +238,7 @@ func CheckStages(module *Module) error { for _, item := range module.Stages { wg.Add(1) - go func(wg *sync.WaitGroup, item Item) { + go func(wg *sync.WaitGroup, item Stage) { defer wg.Done() checkPaths(item, errCh) }(&wg, item) @@ -258,7 +259,16 @@ func CheckStages(module *Module) error { return nil } -func checkPaths(item Item, ch chan<- error) { +func CheckContext(ctx context.Context) error { + select { + case <-ctx.Done(): + return fmt.Errorf("context canceled: %w", ctx.Err()) + default: + return nil + } +} + +func checkPaths(item Stage, ch chan<- error) { for _, path := range item.From { err := CheckPath(path) if err != nil { diff --git a/internal/module.go b/internal/module.go index 472f028..c3d6898 100644 --- a/internal/module.go +++ b/internal/module.go @@ -14,7 +14,7 @@ const ( ReplaceIfNewer FileExistsAction = "replace_if_newer" ) -type Item struct { +type Stage struct { Name string `yaml:"name"` To string `yaml:"to"` ActionIfFileExists FileExistsAction `yaml:"actionIfFileExists"` @@ -29,7 +29,7 @@ type Module struct { Repository string `yaml:"repository,omitempty"` BuildDirectory string `yaml:"buildDirectory,omitempty"` LogDirectory string `yaml:"logDirectory,omitempty"` - Stages []Item `yaml:"stages"` + Stages []Stage `yaml:"stages"` Ignore []string `yaml:"ignore"` } diff --git a/internal/module_builder.go b/internal/module_builder.go index 701f1d3..280e9ef 100644 --- a/internal/module_builder.go +++ b/internal/module_builder.go @@ -12,7 +12,7 @@ import ( ) func (m *Module) Build() error { - if err := CheckContextActivity(m.Ctx); err != nil { + if err := CheckContext(m.Ctx); err != nil { return err } @@ -154,7 +154,7 @@ func (m *Module) Collect(log *zerolog.Logger) error { errCh := make(chan error, len(m.Stages)) for _, item := range m.Stages { - if err := CheckContextActivity(m.Ctx); err != nil { + if err := CheckContext(m.Ctx); err != nil { return err } @@ -193,12 +193,12 @@ func handleItem( wg *sync.WaitGroup, errCh chan<- error, ignore *[]string, - item Item, + item Stage, buildDirectory string, ) { defer wg.Done() - if err := CheckContextActivity(ctx); err != nil { + if err := CheckContext(ctx); err != nil { errCh <- err return } @@ -210,7 +210,7 @@ func handleItem( } for _, from := range item.From { - if err := CheckContextActivity(ctx); err != nil { + if err := CheckContext(ctx); err != nil { errCh <- err return } diff --git a/internal/validators.go b/internal/validators.go index b74ae47..425cd81 100644 --- a/internal/validators.go +++ b/internal/validators.go @@ -1,7 +1,6 @@ package internal import ( - "context" "errors" "fmt" "os" @@ -39,12 +38,3 @@ func ValidateVersion(version string) error { return fmt.Errorf("invalid module version %s", version) } - -func CheckContextActivity(ctx context.Context) error { - select { - case <-ctx.Done(): - return fmt.Errorf("context canceled: %w", ctx.Err()) - default: - return nil - } -}