2 ms·
We use https://gocd.io/ https://gocd.io/ for our build + deployment pipelines. A rollback is just re-running the deployment stage of the last known-good version
by perlgeek 7y ago
We use https://gocd.io/ https://gocd.io/ for our build + deployment pipelines. A rollback is just re-running the deployment stage of the last known-good version.
Since the question of database migrations came up: We take care to break up backwards incompatible changes into multiple smaller ones.
For example, instead of introducing a new NOT NULL column, we first introduce it a NULLable, wait until we are confident that we don't want to roll back to a software version that leaves the column empty, and only then changing it to NOT NULL.
It requires more manual tracking than I would like, but so far, it seems to work quite well.