DevopsArtFactory / goployer

AWS Deployer with Go
https://goployer.dev
Apache License 2.0
72 stars 13 forks source link

add termination_delay_rate option #128

Closed GwonsooLee closed 3 years ago

GwonsooLee commented 3 years ago

Add termination_delay_rate options for BlueGreen deployment. This is helpful when users want to deploy with BlueGreen strategy but terminate instances gradually in order to keep stateful status.

If instance count is 10 and termination_delay_rate is 20, then first it provisions 10 more instances for Blue status. After all of instances are healthy, then reduce the instance count of Green status. At this time, goployer will reduce only 2 instances ( 20% of 10 instances) and check if those instances are successfully terminated.

codecov[bot] commented 3 years ago

Codecov Report

Merging #128 (e40da80) into main (41d1c46) will increase coverage by 0.06%. The diff coverage is 10.52%.

Impacted file tree graph

@@           Coverage Diff            @@
##            main    #128      +/-   ##
========================================
+ Coverage   4.89%   4.96%   +0.06%     
========================================
  Files         28      28              
  Lines       4594    4630      +36     
========================================
+ Hits         225     230       +5     
- Misses      4357    4388      +31     
  Partials      12      12              
Impacted Files Coverage Δ
pkg/aws/ec2.go 0.00% <ø> (ø)
pkg/deployer/canary.go 1.23% <0.00%> (ø)
pkg/deployer/deployer.go 1.47% <0.00%> (-0.07%) :arrow_down:
pkg/builder/builder.go 47.26% <85.71%> (+0.73%) :arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 41d1c46...e40da80. Read the comment docs.