马佳君 7 лет назад
Родитель
Сommit
e86b2c6b47

+ 10 - 0
src/main/java/nju/seec/SEECdemo/logic/api/k8s/SecretApi.java

@@ -20,6 +20,16 @@ public interface SecretApi {
      */
     ApiResult createGenericSecret(String namespace, String name, Map<String, byte[]> data);
 
+    /**
+     * 创建通用密钥,如数据库的用户名,密码
+     * @param namespace
+     * @param name
+     * @param data
+     * @param type
+     * @return ApiResult
+     */
+    ApiResult createGenericSecret(String namespace, String name, Map<String, byte[]> data, String type);
+
     /**
      * 在namespace下生成私有仓库server的密钥
      * 密钥名称将自动生成

+ 11 - 2
src/main/java/nju/seec/SEECdemo/logic/api/k8s/impl/SecretApiImpl.java

@@ -31,6 +31,12 @@ public class SecretApiImpl implements SecretApi {
 
     @Override
     public ApiResult createGenericSecret(String namespace, String name, Map<String, byte[]> data) {
+        String type = "Opaque";
+        return createGenericSecret(namespace, name, data, type);
+    }
+
+    @Override
+    public ApiResult createGenericSecret(String namespace, String name, Map<String, byte[]> data, String type) {
 
         //Secret默认创建的Type为Opaque,base64编码格式的Secret,用来储存密码、密钥等。
 
@@ -42,6 +48,7 @@ public class SecretApiImpl implements SecretApi {
         v1Secret.setData(data);
         v1Secret.setKind("Secret");
         v1Secret.setMetadata(meta);
+        v1Secret.setType(type);
 
         try {
             V1Secret createdSecret = coreV1Api.createNamespacedSecret("mjj-test", v1Secret, "OK");
@@ -67,9 +74,11 @@ public class SecretApiImpl implements SecretApi {
         data.put(".dockerconfigjson", dockerConfigJson.getBytes());
 
         //dockerSecret 统一的名称
-        String name = "dockerRegistrySecret";
+        String name = "docker-registry-secret";
+
+        String tpye = "kubernetes.io/dockerconfigjson";
 
-        return createGenericSecret(namespace, name, data);
+        return createGenericSecret(namespace, name, data, tpye);
 
     }