ソースを参照

parse redis addon from porter.yaml (#4117)

ianedwards 2 年 前
コミット
3f12d88ac7
5 ファイル変更22 行追加5 行削除
  1. 1 1
      dashboard/tsconfig.json
  2. 1 1
      dashboard/webpack.config.js
  3. 1 1
      go.mod
  4. 2 2
      go.sum
  5. 17 0
      internal/porter_app/v2/addons.go

+ 1 - 1
dashboard/tsconfig.json

@@ -11,7 +11,7 @@
     "allowJs": true,
     "allowSyntheticDefaultImports": true,
     "removeComments": true,
-    "moduleResolution": "node",
+    "moduleResolution": "Bundler",
     "strict": true,
     "skipLibCheck": true
   },

+ 1 - 1
dashboard/webpack.config.js

@@ -88,7 +88,7 @@ module.exports = () => {
           ],
         },
         {
-          test: /\.mjs/,
+          test: /\.(mjs|js)$/,
           include: /node_modules/,
           type: "javascript/auto",
         },

+ 1 - 1
go.mod

@@ -83,7 +83,7 @@ require (
 	github.com/matryer/is v1.4.0
 	github.com/nats-io/nats.go v1.24.0
 	github.com/open-policy-agent/opa v0.44.0
-	github.com/porter-dev/api-contracts v0.2.78
+	github.com/porter-dev/api-contracts v0.2.80
 	github.com/riandyrn/otelchi v0.5.1
 	github.com/santhosh-tekuri/jsonschema/v5 v5.0.1
 	github.com/stefanmcshane/helm v0.0.0-20221213002717-88a4a2c6e77d

+ 2 - 2
go.sum

@@ -1520,8 +1520,8 @@ github.com/pmezard/go-difflib v0.0.0-20151028094244-d8ed2627bdf0/go.mod h1:iKH77
 github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
 github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
 github.com/polyfloyd/go-errorlint v0.0.0-20210722154253-910bb7978349/go.mod h1:wi9BfjxjF/bwiZ701TzmfKu6UKC357IOAtNr0Td0Lvw=
-github.com/porter-dev/api-contracts v0.2.78 h1:Iyp1DL33mPxJZQSjH8W/ylv5Ch8i30eJJx9mvhZmhTU=
-github.com/porter-dev/api-contracts v0.2.78/go.mod h1:fX6JmP5QuzxDLvqP3evFOTXjI4dHxsG0+VKNTjImZU8=
+github.com/porter-dev/api-contracts v0.2.80 h1:Ufa0d64kO+XhrZcANje2vltCbgn7WzsIafo3p3cu+jE=
+github.com/porter-dev/api-contracts v0.2.80/go.mod h1:fX6JmP5QuzxDLvqP3evFOTXjI4dHxsG0+VKNTjImZU8=
 github.com/porter-dev/switchboard v0.0.3 h1:dBuYkiVLa5Ce7059d6qTe9a1C2XEORFEanhbtV92R+M=
 github.com/porter-dev/switchboard v0.0.3/go.mod h1:xSPzqSFMQ6OSbp42fhCi4AbGbQbsm6nRvOkrblFeXU4=
 github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI=

+ 17 - 0
internal/porter_app/v2/addons.go

@@ -29,6 +29,13 @@ func ProtoFromAddon(ctx context.Context, addon Addon) (*porterv1.Addon, error) {
 		addonProto.Config = &porterv1.Addon_Postgres{
 			Postgres: postgres,
 		}
+	case porterv1.AddonType_ADDON_TYPE_REDIS:
+		addonProto.Type = addonType
+		redis := redisConfigProtoFromAddon(addon)
+
+		addonProto.Config = &porterv1.Addon_Redis{
+			Redis: redis,
+		}
 	default:
 		return addonProto, telemetry.Error(ctx, span, nil, "specified addon type not supported")
 	}
@@ -56,6 +63,8 @@ func addonEnumProtoFromType(ctx context.Context, addonType string) (porterv1.Add
 	switch addonType {
 	case "postgres":
 		addonTypeEnum = porterv1.AddonType_ADDON_TYPE_POSTGRES
+	case "redis":
+		addonTypeEnum = porterv1.AddonType_ADDON_TYPE_REDIS
 	default:
 		return addonTypeEnum, telemetry.Error(ctx, span, nil, "invalid addon type")
 	}
@@ -70,3 +79,11 @@ func postgresConfigProtoFromAddon(addon Addon) *porterv1.Postgres {
 		StorageGigabytes: int32(addon.StorageGigabytes),
 	}
 }
+
+func redisConfigProtoFromAddon(addon Addon) *porterv1.Redis {
+	return &porterv1.Redis{
+		RamMegabytes:     int32(addon.RamMegabytes),
+		CpuCores:         addon.CpuCores,
+		StorageGigabytes: int32(addon.StorageGigabytes),
+	}
+}