@@ -459,33 +459,6 @@ func DeployStack(
459
459
return fmt .Errorf ("%s: %w" , errMsg , err )
460
460
}
461
461
462
- hasChangedFiles , err := ProjectFilesHaveChanges (changedFiles , project )
463
- if err != nil {
464
- errMsg := "failed to check for changed project files"
465
- stackLog .Error (errMsg , logger .ErrAttr (err ), slog .Group ("compose_files" , slog .Any ("files" , deployConfig .ComposeFiles )))
466
-
467
- return fmt .Errorf ("%s: %w" , errMsg , err )
468
- }
469
-
470
- hasChangedCompose , err := HasChangedComposeFiles (changedFiles , project )
471
- if err != nil {
472
- errMsg := "failed to check for changed compose files"
473
- stackLog .Error (errMsg , logger .ErrAttr (err ), slog .Group ("compose_files" , slog .Any ("files" , deployConfig .ComposeFiles )))
474
-
475
- return fmt .Errorf ("%s: %w" , errMsg , err )
476
- }
477
-
478
- switch {
479
- case hasChangedFiles || (hasChangedCompose && triggerEvent == "poll" ):
480
- deployConfig .ForceRecreate = true
481
-
482
- stackLog .Debug ("changed mounted files detected, forcing recreate of all services" )
483
- case hasChangedCompose :
484
- stackLog .Debug ("changed compose files detected, continue normal deployment" )
485
- }
486
-
487
- stackLog .Info ("deploying stack" , slog .Bool ("forced" , deployConfig .ForceRecreate ))
488
-
489
462
done := make (chan struct {})
490
463
defer close (done )
491
464
@@ -518,6 +491,8 @@ func DeployStack(
518
491
}
519
492
}
520
493
494
+ stackLog .Info ("deploying swarm stack" )
495
+
521
496
err = DeploySwarmStack (* ctx , * dockerCli , project , deployConfig , * payload , externalWorkingDir , latestCommit , appVersion )
522
497
if err != nil {
523
498
prometheus .DeploymentErrorsTotal .WithLabelValues (deployConfig .Name ).Inc ()
@@ -551,6 +526,33 @@ func DeployStack(
551
526
return fmt .Errorf ("%s: %w" , errMsg , err )
552
527
}
553
528
} else {
529
+ hasChangedFiles , err := ProjectFilesHaveChanges (changedFiles , project )
530
+ if err != nil {
531
+ errMsg := "failed to check for changed project files"
532
+ stackLog .Error (errMsg , logger .ErrAttr (err ), slog .Group ("compose_files" , slog .Any ("files" , deployConfig .ComposeFiles )))
533
+
534
+ return fmt .Errorf ("%s: %w" , errMsg , err )
535
+ }
536
+
537
+ hasChangedCompose , err := HasChangedComposeFiles (changedFiles , project )
538
+ if err != nil {
539
+ errMsg := "failed to check for changed compose files"
540
+ stackLog .Error (errMsg , logger .ErrAttr (err ), slog .Group ("compose_files" , slog .Any ("files" , deployConfig .ComposeFiles )))
541
+
542
+ return fmt .Errorf ("%s: %w" , errMsg , err )
543
+ }
544
+
545
+ switch {
546
+ case hasChangedFiles || (hasChangedCompose && triggerEvent == "poll" ):
547
+ deployConfig .ForceRecreate = true
548
+
549
+ stackLog .Debug ("changed mounted files detected, forcing recreate of all services" )
550
+ case hasChangedCompose :
551
+ stackLog .Debug ("changed compose files detected, continue normal deployment" )
552
+ }
553
+
554
+ stackLog .Info ("deploying stack" , slog .Bool ("forced" , deployConfig .ForceRecreate ))
555
+
554
556
err = deployCompose (* ctx , * dockerCli , project , deployConfig , * payload , externalWorkingDir , latestCommit , appVersion , forceDeploy )
555
557
if err != nil {
556
558
prometheus .DeploymentErrorsTotal .WithLabelValues (deployConfig .Name ).Inc ()
0 commit comments