Description
The rollback command should support alias rollbacks.
The semantics here is quite difficult, because multiple aliases could be deployed currently. There are a variety of different cases that can appear:
-
Rollback everything (all aliases) to the selected timestamp
To enable this functionality, the plugin has to store the status (CF templates) of every alias on every deploy to S3. Then these files can be used to reconstruct the whole stage to the state as it was. -
Rollback only one alias to the selected timestamp
This is more difficult as resources might have been changed over time and it could be possible that the old alias state does not match the state of the other aliases (most importantly the master alias) anymore. In the worst case a rollback of a single alias is only possible through to a timestamp that is newer than the requested one.
I would favor 1 as the initial implementation and discuss 2 further to find the best solution for that case.