Try   HackMD

Why do we need systematic and automated CICD flow

To reduce human mistakes in the CD process. (And make our lives easier)
Humans do make mistakes, machines don't
E.g. Humans may update the wrong version or forgot to update some regions.
With a systematic and automated CICD flow , those things will never happen.

What CICD tools will we use

Release branch Pattern

How to use our CICD template
Release branch format: {Enviroment}/{Control panel}/{Swimlane}@{Cluster}
@{Cluster} is optional. If not specific, will deploy to all clusters(exclude oth)
e.g,

  • Deploy to us git push origin feat-your_feature:prod/us/prod
  • Deploy to maliva sandbox cluster git push origin feat-your_feature:prod/us/prod@sendbox
  • Deploy to testAsia git push origin {YourBranch}:test/testAsia/prod
    Argument
  • {Enviroment}: test/prod
  • {region}: asia/europe/us/ALL
  • {Swimlane}: prod/ others
  • {Cluster}: default/ others
    Notification
  • Join this group to receive the notification about deploy status

I want a shorter command !

Add this alias to boost the process

vi ~/.gitconfig

[alias]
    cibr = "!export BR=`git rev-parse --abbrev-ref HEAD` && git push -f origin ${BR}:$1 && :"

After switching to the branch you want to update to, enter:
git cibr test/testAsia/prod
It will push your current branch to the given branch.
cibr = CI BRanch