LimitRangeTest.java 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. package nju.seec.SEECdemo.service.api;
  2. import io.kubernetes.client.apis.CoreV1Api;
  3. import io.kubernetes.client.models.V1LimitRange;
  4. import nju.seec.SEECdemo.logic.api.k8s.LimitRangeApi;
  5. import nju.seec.SEECdemo.logic.api.k8s.exception.K8sApiException;
  6. import org.junit.Test;
  7. import org.junit.runner.RunWith;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.boot.test.context.SpringBootTest;
  10. import org.springframework.test.context.junit4.SpringRunner;
  11. import java.util.HashMap;
  12. import java.util.Map;
  13. @RunWith(SpringRunner.class)
  14. @SpringBootTest
  15. public class LimitRangeTest {
  16. @Autowired
  17. private CoreV1Api coreV1Api;
  18. @Autowired
  19. private LimitRangeApi limitRangeApi;
  20. @Test
  21. public void limitRangeTest() {
  22. /*V1LimitRangeItem v1LimitRangeItem = new V1LimitRangeItem();
  23. Map<String, Quantity> defualt = new HashMap<>();
  24. defualt.put("cpu", new CpuQuantity(100).toQuantity());
  25. defualt.put("memory", new StorageQuantity(1024).toQuantity());
  26. Map<String, Quantity> defualtRequest = new HashMap<>();
  27. defualtRequest.put("cpu", new CpuQuantity(50).toQuantity());
  28. defualtRequest.put("memory", new StorageQuantity(256).toQuantity());
  29. Map<String, Quantity> max = new HashMap<>();
  30. max.put("cpu", new CpuQuantity(100).toQuantity());
  31. max.put("memory", new StorageQuantity(1024, StorageQuantity.Unit.GB).toQuantity());
  32. Map<String, Quantity> min = new HashMap<>();
  33. min.put("cpu", new CpuQuantity(50).toQuantity());
  34. min.put("memory", new StorageQuantity(256).toQuantity());
  35. String type = "Container";
  36. String apiVersion = "v1";
  37. v1LimitRangeItem = v1LimitRangeItem
  38. ._default(defualt)
  39. .defaultRequest(defualtRequest)
  40. .max(max)
  41. .min(min)
  42. .type(type);
  43. V1ObjectMeta meta = new V1ObjectMeta().name("limit-range-test2").namespace("mjj-test2");
  44. String kind = "LimitRangeVO";
  45. V1LimitRange body = new V1LimitRange()
  46. .apiVersion(apiVersion)
  47. .kind(kind)
  48. .metadata(meta)
  49. .spec(new V1LimitRangeSpec().addLimitsItem(v1LimitRangeItem));
  50. String namespace = "mjj-test2";*/
  51. /*try {
  52. coreV1Api.createNamespacedLimitRange(namespace, body, "OK");
  53. } catch (ApiException e) {
  54. System.out.println(e.getResponseBody());
  55. }*/
  56. //Test update
  57. //LimitRangeVO Not Found 404
  58. /*try {
  59. String body1 = "{ \"defualt\" : {\"cpu\" : 1, \"memory\": 1024Mi}}";
  60. coreV1Api.patchNamespacedLimitRange("limit-range-test2", "mjj-test2", body1, "OK");
  61. } catch (ApiException e) {
  62. System.out.println(e.getResponseBody());
  63. }*/
  64. //Test createLimitRange
  65. /*String name2 = "limit-range-test3";
  66. Map<String, Integer> _default = new HashMap<>();
  67. _default.put("cpu", 100);
  68. _default.put("memory", 1024);
  69. Map<String, Integer> defaultrequest = new HashMap<>();
  70. defaultrequest.put("cpu", 50);
  71. defaultrequest.put("memory", 512);
  72. Map<String, Integer> max1 = new HashMap<>();
  73. max1.put("cpu", 200);
  74. max1.put("memory", 1024);
  75. Map<String, Integer> min1 = new HashMap<>();
  76. min1.put("cpu", 50);
  77. min1.put("memory", 512);
  78. String namespace2 = "mjj-test3";
  79. try {
  80. limitRangeApi.createLimitRange(namespace, name2, _default, defaultrequest, max1, min1);
  81. } catch (K8sApiException e) {
  82. System.out.println(e.getDescription());
  83. }*/
  84. //Test delete limitRange
  85. /*String namespace = "mjj-test2";
  86. String name = "limit-range-test3";
  87. try {
  88. limitRangeApi.deleteLimitRange(namespace, name);
  89. } catch (K8sApiException e) {
  90. e.getDescription();
  91. }*/
  92. //Test get LimitRangeVO
  93. /*String namespace = "mjj-test2";
  94. String name = "limit-range-test2";
  95. try {
  96. V1LimitRange v1LimitRange = limitRangeApi.getLimitRangeByName(namespace, name);
  97. System.out.println(v1LimitRange.getMetadata().getName());
  98. } catch (K8sApiException e) {
  99. e.printStackTrace();
  100. }*/
  101. //Test update LimitRangeVO
  102. String namespace = "mjj-test2";
  103. String name = "limit-range-test2";
  104. Map<String, Integer> _default = new HashMap<>();
  105. _default.put("cpu", 100);
  106. _default.put("memory", 1024);
  107. Map<String, Integer> defaultrequest = new HashMap<>();
  108. defaultrequest.put("cpu", 50);
  109. defaultrequest.put("memory", 512);
  110. Map<String, Integer> max1 = new HashMap<>();
  111. max1.put("cpu", 200);
  112. max1.put("memory", 1024);
  113. Map<String, Integer> min1 = new HashMap<>();
  114. min1.put("cpu", 50);
  115. min1.put("memory", 512);
  116. V1LimitRange body = limitRangeApi.toLimitRange(namespace, name, _default, defaultrequest, max1, min1);
  117. try {
  118. limitRangeApi.updateLimitRange(namespace, name, body);
  119. } catch (K8sApiException e) {
  120. e.printStackTrace();
  121. }
  122. }
  123. @Test
  124. public void testCreateLimitRange() {
  125. Map<String, Integer> _default = new HashMap<>();
  126. _default.put("cpu", 100);
  127. _default.put("memory", 1024);
  128. V1LimitRange v1LimitRange = limitRangeApi.toLimitRange("demo", "demo", _default, _default, null, null);
  129. limitRangeApi.createLimitRange("demo", v1LimitRange);
  130. }
  131. }