* In order to support step upgrades, snaps need to be able to specify upgrade paths.
* The method decided upon to specify upgrade paths is an optional "epoch" property. Valid values consist of integers and an asterisk (e.g. 1 is epoch 1, 1* is the upgrade path from 1 to 2, and 2 is epoch 2).
* `snapcraft init` should not specify "epoch" at all.
* The "epoch" property, if specified, should be copied into the resulting `snap.yaml`.
[Test Case]
* Run `snapcraft init`. Make sure "epoch" is not specified.
* Create a valid snapcraft.yaml (without "epoch" property) and run `snapcraft` on it. Make sure the resulting `snap.yaml` doesn't contain "epoch" property.
* Create a valid snapcraft.yaml and include the "epoch" property. Run `snapcraft`. Make sure the resulting `snap.yaml` contains the same "epoch" property.
[Regression Potential]
* snapcraft.yaml validation could be incorrect (required properties may not be required correctly, etc.)
[Impact]
* In order to support step upgrades, snaps need to be able to specify upgrade paths.
* The method decided upon to specify upgrade paths is an optional "epoch" property. Valid values consist of integers and an asterisk (e.g. 1 is epoch 1, 1* is the upgrade path from 1 to 2, and 2 is epoch 2).
* `snapcraft init` should not specify "epoch" at all.
* The "epoch" property, if specified, should be copied into the resulting `snap.yaml`.
[Test Case]
* Run `snapcraft init`. Make sure "epoch" is not specified.
* Create a valid snapcraft.yaml (without "epoch" property) and run `snapcraft` on it. Make sure the resulting `snap.yaml` doesn't contain "epoch" property.
* Create a valid snapcraft.yaml and include the "epoch" property. Run `snapcraft`. Make sure the resulting `snap.yaml` contains the same "epoch" property.
[Regression Potential]
* snapcraft.yaml validation could be incorrect (required properties may not be required correctly, etc.)