1. A method for creating a virtual image, the method comprising: receiving a selection of at least one composable software bundle, wherein the at least one composable software bundle comprises a first set of metadata and a first set of artifacts comprising a first set of executable instructions associated with a first set of operations; receiving a selection of a virtual image asset, wherein the virtual image asset comprises one or more virtual image disks, a second set of metadata, and a second set of artifacts comprising a second set of executable instructions associated with a second set of operations; and creating a new virtual image asset based on the at least one composable software bundle and the virtual image asset, the new virtual image asset comprising a third set of metadata that is based on the first set of metadata from the at least one composable software bundle and the second set of metadata from the virtual image asset, the new virtual image asset further comprising a third set of artifacts comprising a third set of executable instructions associated with a third set of operations that is based on the first set of artifacts from the at least one composable software bundle and the second set of artifacts from the virtual image asset, and wherein each operation in at least the third set of operations is associated with a virtual image life-cycle phase in a set of virtual image life-cycle phases, wherein each executable instruction in the third set of executable instructions being executed at the virtual image life-cycle phase associated with an operation in the third set of operations that is associated with the each executable instruction in the third set of executable instructions.