@@ -109,8 +109,8 @@ func acquireLock(ctx context.Context, b *bundle.Bundle, svc *tmpdms.DeploymentMe
109109 return "" , "" , err
110110 }
111111
112- // Only create the deployment record for fresh deployments.
113112 if isNew {
113+ // Fresh deployment: create the record and start at version 1.
114114 _ , createErr := svc .CreateDeployment (ctx , tmpdms.CreateDeploymentRequest {
115115 DeploymentID : deploymentID ,
116116 Deployment : & tmpdms.Deployment {
@@ -120,19 +120,15 @@ func acquireLock(ctx context.Context, b *bundle.Bundle, svc *tmpdms.DeploymentMe
120120 if createErr != nil {
121121 return "" , "" , fmt .Errorf ("failed to create deployment: %w" , createErr )
122122 }
123- }
124-
125- // Get the deployment to determine the next version ID.
126- dep , getErr := svc .GetDeployment (ctx , tmpdms.GetDeploymentRequest {
127- DeploymentID : deploymentID ,
128- })
129- if getErr != nil {
130- return "" , "" , fmt .Errorf ("failed to get deployment: %w" , getErr )
131- }
132-
133- if dep .LastVersionID == "" {
134123 versionID = "1"
135124 } else {
125+ // Existing deployment: get the last version ID to determine the next one.
126+ dep , getErr := svc .GetDeployment (ctx , tmpdms.GetDeploymentRequest {
127+ DeploymentID : deploymentID ,
128+ })
129+ if getErr != nil {
130+ return "" , "" , fmt .Errorf ("failed to get deployment: %w" , getErr )
131+ }
136132 lastVersion , parseErr := strconv .ParseInt (dep .LastVersionID , 10 , 64 )
137133 if parseErr != nil {
138134 return "" , "" , fmt .Errorf ("failed to parse last_version_id %q: %w" , dep .LastVersionID , parseErr )
0 commit comments