@@ -802,6 +802,100 @@ export const VM_ACTIONS = {
802
802
UPDATE_CONF : 'update_configuration' ,
803
803
}
804
804
805
+ export const DEFAULT_VM_ACTIONS_BY_STATE = {
806
+ [ VM_ACTIONS . DEPLOY ] : [
807
+ STATES . PENDING ,
808
+ STATES . HOLD ,
809
+ STATES . STOPPED ,
810
+ STATES . UNDEPLOYED ,
811
+ STATES . UNKNOWN ,
812
+ ] ,
813
+ [ VM_ACTIONS . HOLD ] : [ STATES . PENDING ] ,
814
+ [ VM_ACTIONS . RECOVER ] : [
815
+ STATES . INIT ,
816
+ STATES . PENDING ,
817
+ STATES . HOLD ,
818
+ STATES . ACTIVE ,
819
+ STATES . STOPPED ,
820
+ STATES . SUSPENDED ,
821
+ STATES . POWEROFF ,
822
+ STATES . UNDEPLOYED ,
823
+ STATES . CLONING ,
824
+ STATES . CLONING_FAILURE ,
825
+ ] ,
826
+ [ VM_ACTIONS . TERMINATE_HARD ] : [
827
+ STATES . INIT ,
828
+ STATES . PENDING ,
829
+ STATES . HOLD ,
830
+ STATES . STOPPED ,
831
+ STATES . SUSPENDED ,
832
+ STATES . POWEROFF ,
833
+ STATES . UNDEPLOYED ,
834
+ STATES . CLONING ,
835
+ STATES . CLONING_FAILURE ,
836
+ STATES . RUNNING ,
837
+ STATES . UNKNOWN ,
838
+ ] ,
839
+ [ VM_ACTIONS . LOCK ] : [ ] ,
840
+ [ VM_ACTIONS . UNLOCK ] : [ ] ,
841
+ // INFORMATION
842
+ [ VM_ACTIONS . RENAME ] : [ ] ,
843
+ [ VM_ACTIONS . CHANGE_MODE ] : [ ] ,
844
+ [ VM_ACTIONS . CHANGE_OWNER ] : [ ] ,
845
+ [ VM_ACTIONS . CHANGE_GROUP ] : [ ] ,
846
+ // SCHEDULING ACTION
847
+ [ VM_ACTIONS . SCHED_ACTION_CREATE ] : [ ] ,
848
+ [ VM_ACTIONS . SCHED_ACTION_UPDATE ] : [ ] ,
849
+ [ VM_ACTIONS . SCHED_ACTION_DELETE ] : [ ] ,
850
+ [ VM_ACTIONS . CHARTER_CREATE ] : [ ] ,
851
+ [ VM_ACTIONS . RELEASE ] : [ STATES . HOLD ] ,
852
+ // CAPACITY
853
+ [ VM_ACTIONS . RESIZE_CAPACITY ] : [
854
+ STATES . INIT ,
855
+ STATES . PENDING ,
856
+ STATES . HOLD ,
857
+ STATES . ACTIVE ,
858
+ STATES . POWEROFF ,
859
+ STATES . UNDEPLOYED ,
860
+ STATES . CLONING ,
861
+ STATES . CLONING_FAILURE ,
862
+ ] ,
863
+ [ VM_ACTIONS . SNAPSHOT_DISK_RENAME ] : [ ] ,
864
+ // CONFIGURATION
865
+ [ VM_ACTIONS . UPDATE_CONF ] : [
866
+ STATES . PENDING ,
867
+ STATES . HOLD ,
868
+ STATES . ACTIVE ,
869
+ STATES . POWEROFF ,
870
+ STATES . UNDEPLOYED ,
871
+ STATES . CLONING ,
872
+ STATES . CLONING_FAILURE ,
873
+ STATES . PROLOG ,
874
+ STATES . EPILOG ,
875
+ STATES . SHUTDOWN ,
876
+ STATES . CLEANUP_RESUBMIT ,
877
+ STATES . SHUTDOWN_POWEROFF ,
878
+ STATES . CLEANUP_DELETE ,
879
+ STATES . HOTPLUG_SAVEAS_POWEROFF ,
880
+ STATES . SHUTDOWN_UNDEPLOY ,
881
+ STATES . EPILOG_UNDEPLOY ,
882
+ STATES . PROLOG_UNDEPLOY ,
883
+ STATES . HOTPLUG_PROLOG_POWEROFF ,
884
+ STATES . HOTPLUG_EPILOG_POWEROFF ,
885
+ STATES . BOOT_FAILURE ,
886
+ STATES . PROLOG_FAILURE ,
887
+ STATES . EPILOG_FAILURE ,
888
+ STATES . EPILOG_UNDEPLOY_FAILURE ,
889
+ STATES . PROLOG_MIGRATE_POWEROFF ,
890
+ STATES . PROLOG_MIGRATE_POWEROFF_FAILURE ,
891
+ STATES . BOOT_UNDEPLOY_FAILURE ,
892
+ STATES . PROLOG_UNDEPLOY_FAILURE ,
893
+ STATES . DISK_SNAPSHOT_POWEROFF ,
894
+ STATES . DISK_SNAPSHOT_REVERT_POWEROFF ,
895
+ STATES . DISK_SNAPSHOT_DELETE_POWEROFF ,
896
+ ] ,
897
+ }
898
+
805
899
/** @enum {string} DUMMY Virtual machine actions by state */
806
900
export const DUMMY_VM_ACTIONS_BY_STATE = {
807
901
[ VM_ACTIONS . BACKUP ] : [ STATES . POWEROFF , STATES . RUNNING ] ,
@@ -1722,6 +1816,7 @@ export const HYPERVISORS = {
1722
1816
1723
1817
/** @enum {string} Virtual machine actions by state */
1724
1818
export const VM_ACTIONS_BY_STATE = {
1819
+ undefined : DEFAULT_VM_ACTIONS_BY_STATE ,
1725
1820
[ HYPERVISORS . dummy ] : DUMMY_VM_ACTIONS_BY_STATE ,
1726
1821
[ HYPERVISORS . kvm ] : KVM_VM_ACTIONS_BY_STATE ,
1727
1822
[ HYPERVISORS . vcenter ] : VCENTER_VM_ACTIONS_BY_STATE ,
0 commit comments