Revision f9f6480e
b/htools/Ganeti/HTools/Cluster.hs | ||
---|---|---|
870 | 870 |
-> [Ndx] -- ^ The list of available nodes |
871 | 871 |
-- for allocation |
872 | 872 |
-> Result (Node.List, Instance.List, [OpCodes.OpCode]) |
873 |
nodeEvacInstance _ _ mode (Instance.Instance |
|
874 |
{Instance.diskTemplate = dt@DTDiskless}) _ _ = |
|
875 |
failOnSecondaryChange mode dt >> |
|
876 |
fail "Diskless relocations not implemented yet" |
|
873 |
nodeEvacInstance nl il mode inst@(Instance.Instance |
|
874 |
{Instance.diskTemplate = dt@DTDiskless}) |
|
875 |
gdx avail_nodes = |
|
876 |
failOnSecondaryChange mode dt >> |
|
877 |
evacOneNodeOnly nl il inst gdx avail_nodes |
|
877 | 878 |
|
878 | 879 |
nodeEvacInstance _ _ _ (Instance.Instance |
879 | 880 |
{Instance.diskTemplate = DTPlain}) _ _ = |
... | ... | |
883 | 884 |
{Instance.diskTemplate = DTFile}) _ _ = |
884 | 885 |
fail "Instances of type file cannot be relocated" |
885 | 886 |
|
886 |
nodeEvacInstance _ _ mode (Instance.Instance |
|
887 |
{Instance.diskTemplate = dt@DTSharedFile}) _ _ = |
|
888 |
failOnSecondaryChange mode dt >> |
|
889 |
fail "Shared file relocations not implemented yet" |
|
887 |
nodeEvacInstance nl il mode inst@(Instance.Instance |
|
888 |
{Instance.diskTemplate = dt@DTSharedFile}) |
|
889 |
gdx avail_nodes = |
|
890 |
failOnSecondaryChange mode dt >> |
|
891 |
evacOneNodeOnly nl il inst gdx avail_nodes |
|
890 | 892 |
|
891 |
nodeEvacInstance _ _ mode (Instance.Instance |
|
892 |
{Instance.diskTemplate = dt@DTBlock}) _ _ = |
|
893 |
failOnSecondaryChange mode dt >> |
|
894 |
fail "Block device relocations not implemented yet" |
|
893 |
nodeEvacInstance nl il mode inst@(Instance.Instance |
|
894 |
{Instance.diskTemplate = dt@DTBlock}) |
|
895 |
gdx avail_nodes = |
|
896 |
failOnSecondaryChange mode dt >> |
|
897 |
evacOneNodeOnly nl il inst gdx avail_nodes |
|
895 | 898 |
|
896 |
nodeEvacInstance _ _ mode (Instance.Instance |
|
897 |
{Instance.diskTemplate = dt@DTRbd}) _ _ = |
|
898 |
failOnSecondaryChange mode dt >> |
|
899 |
fail "Rbd relocations not implemented yet" |
|
899 |
nodeEvacInstance nl il mode inst@(Instance.Instance |
|
900 |
{Instance.diskTemplate = dt@DTRbd}) |
|
901 |
gdx avail_nodes = |
|
902 |
failOnSecondaryChange mode dt >> |
|
903 |
evacOneNodeOnly nl il inst gdx avail_nodes |
|
900 | 904 |
|
901 | 905 |
nodeEvacInstance nl il ChangePrimary |
902 | 906 |
inst@(Instance.Instance {Instance.diskTemplate = DTDrbd8}) |
Also available in: Unified diff