diff --git a/runner/internal/executor/executor.go b/runner/internal/executor/executor.go index d893754c60..9901b32a6e 100644 --- a/runner/internal/executor/executor.go +++ b/runner/internal/executor/executor.go @@ -196,16 +196,6 @@ func (ex *RunExecutor) Run(ctx context.Context) (err error) { ex.setJobCredentials(ctx) - if err := ex.prepareJobWorkingDir(ctx); err != nil { - ex.SetJobStateWithTerminationReason( - ctx, - types.JobStateFailed, - types.TerminationReasonExecutorError, - fmt.Sprintf("Failed to set up the working dir (%s)", err), - ) - return fmt.Errorf("prepare job working dir: %w", err) - } - if err := ex.setupRepo(ctx); err != nil { ex.SetJobStateWithTerminationReason( ctx, @@ -226,6 +216,16 @@ func (ex *RunExecutor) Run(ctx context.Context) (err error) { return fmt.Errorf("setup files: %w", err) } + if err := ex.prepareJobWorkingDir(ctx); err != nil { + ex.SetJobStateWithTerminationReason( + ctx, + types.JobStateFailed, + types.TerminationReasonExecutorError, + fmt.Sprintf("Failed to set up the working dir (%s)", err), + ) + return fmt.Errorf("prepare job working dir: %w", err) + } + cleanupCredentials, err := ex.setupCredentials(ctx) if err != nil { ex.SetJobState(ctx, types.JobStateFailed) diff --git a/runner/internal/executor/files.go b/runner/internal/executor/files.go index b866ce2d83..b19f3ffbd9 100644 --- a/runner/internal/executor/files.go +++ b/runner/internal/executor/files.go @@ -32,7 +32,6 @@ func (ex *RunExecutor) AddFileArchive(id string, src io.Reader) error { } // setupFiles must be called from Run -// ex.jobWorkingDir must be already created func (ex *RunExecutor) setupFiles(ctx context.Context) error { for _, fa := range ex.jobSpec.FileArchives { archivePath := path.Join(ex.archiveDir, fa.Id)