@@ -174,12 +174,15 @@ type DiggerExecutor struct {
174174 configDigger * DiggerConfig
175175}
176176
177+ func (d DiggerExecutor ) LockId () string {
178+ return d .repoName + "#" + d .projectName
179+ }
180+
177181func (d DiggerExecutor ) Plan (prNumber int ) {
178- lockId := d .repoName + "#" + d .projectName
179182
180183 terraformExecutor := terraform.Terraform {WorkingDir : path .Join (d .workingDir , d .projectDir )}
181184
182- res , err := d .lock .Lock (lockId , prNumber )
185+ res , err := d .lock .Lock (d . LockId () , prNumber )
183186 if err != nil {
184187 log .Fatalf ("Error locking project: %v" , err )
185188 }
@@ -190,37 +193,33 @@ func (d DiggerExecutor) Plan(prNumber int) {
190193 log .Fatalf ("Error executing plan: %v" , err )
191194 }
192195 plan := cleanupTerraformPlan (isNonEmptyPlan , err , stdout , stderr )
193- comment := "Plan for **" + lockId + "**\n " + plan
196+ comment := "Plan for **" + d . LockId () + "**\n " + plan
194197 d .prManager .PublishComment (prNumber , comment )
195198 }
196199
197200}
198201
199202func (d DiggerExecutor ) Apply (prNumber int ) {
200- projectName := d .projectName
201- lockId := d .repoName + "#" + projectName
202203 terraformExecutor := terraform.Terraform {WorkingDir : path .Join (d .workingDir , d .projectDir )}
203- if res , _ := d .lock .Lock (lockId , prNumber ); res {
204+ if res , _ := d .lock .Lock (d . LockId () , prNumber ); res {
204205 stdout , stderr , err := terraformExecutor .Apply ()
205206 applyOutput := cleanupTerraformApply (true , err , stdout , stderr )
206- comment := "Apply for **" + lockId + "**\n " + applyOutput
207+ comment := "Apply for **" + d . LockId () + "**\n " + applyOutput
207208 d .prManager .PublishComment (prNumber , comment )
208- d .lock .Unlock (lockId , prNumber )
209+ d .lock .Unlock (d . LockId () , prNumber )
209210 }
210211
211212}
212213
213214func (d DiggerExecutor ) Unlock (prNumber int ) {
214- lockId := d .repoName + "#" + d .projectName
215- d .lock .ForceUnlock (lockId , prNumber )
215+ d .lock .ForceUnlock (d .LockId (), prNumber )
216216
217217}
218218
219219func (d DiggerExecutor ) Lock (prNumber int ) bool {
220- lockId := d .repoName + "#" + d .projectName
221- isLocked , err := d .lock .Lock (lockId , prNumber )
220+ isLocked , err := d .lock .Lock (d .LockId (), prNumber )
222221 if err != nil {
223- log .Fatalf ("Failed to aquire lock: " + lockId )
222+ log .Fatalf ("Failed to aquire lock: " + d . LockId () )
224223 }
225224 return isLocked
226225}
0 commit comments