diff --git a/README-ENTERPRISE.md b/README-ENTERPRISE.md index 5d7b616..010d635 100644 --- a/README-ENTERPRISE.md +++ b/README-ENTERPRISE.md @@ -76,13 +76,18 @@ production-ready set of values except for the `secrets` portion. | `services.icc.secrets.control_plane_keys` | TODO | "" | Yes | | `services.icc.secrets.user_manager_session` | TODO | "" | Yes | -#### Elasticache +#### AWS Managed Services + +These managed services are only accessible through IRSA which means ICC must be +running in AWS-managed Kubernetes. As well, [`cloud` must be set to `aws`](#common-parameters). | Name | Description | Default Value | Required | | --- | --- | --- | --- | -| `services.icc.elasticache.role_arn` | The role ARN | "" | No | -| `services.icc.elasticache.region` | Region the cluster is in | "" | No | -| `services.icc.elasticache.cluster_name` | Name of the Elasticache cluster | "" | No | +| `services.icc.aws.role_arn` | The role ARN | "" | No | +| `services.icc.aws.elasticache.region` | Region the cluster is in | "" | No | +| `services.icc.aws.elasticache.cluster_name` | Name of the Elasticache cluster | "" | No | +| `services.icc.aws.amp.region` | Region for AMP is in | "" | No | +| `services.icc.aws.amp.workspace_id` | AMP workspace | "" | No | #### Features diff --git a/README.md b/README.md index 5ca5544..bc3d700 100644 --- a/README.md +++ b/README.md @@ -77,13 +77,18 @@ production-ready set of values except for the `secrets` portion. | `services.icc.secrets.control_plane_keys` | Random value to secure sessions | "" | Yes | | `services.icc.secrets.user_manager_session` | Random value to secure sessions | "" | Yes | -#### Elasticache +#### AWS Managed Services + +These managed services are only accessible through IRSA which means ICC must be +running in AWS-managed Kubernetes. As well, [`cloud` must be set to `aws`](#common-parameters). | Name | Description | Default Value | Required | | --- | --- | --- | --- | -| `services.icc.elasticache.role_arn` | The role ARN | "" | No | -| `services.icc.elasticache.region` | Region the cluster is in | "" | No | -| `services.icc.elasticache.cluster_name` | Name of the Elasticache cluster | "" | No | +| `services.icc.aws.role_arn` | The role ARN | "" | No | +| `services.icc.aws.elasticache.region` | Region the cluster is in | "" | No | +| `services.icc.aws.elasticache.cluster_name` | Name of the Elasticache cluster | "" | No | +| `services.icc.aws.amp.region` | Region for AMP is in | "" | No | +| `services.icc.aws.amp.workspace_id` | AMP workspace | "" | No | #### Features diff --git a/chart/Chart.yaml b/chart/Chart.yaml index 53a3869..c3dfb69 100644 --- a/chart/Chart.yaml +++ b/chart/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v2 name: helm -version: 4.0.2-alpha3 +version: 4.1.0 kubeVersion: ">= 1.30.0-0" description: Platformatic microservices type: application diff --git a/chart/templates/deployment/_icc.yaml b/chart/templates/deployment/_icc.yaml index 4d5f74c..a757067 100644 --- a/chart/templates/deployment/_icc.yaml +++ b/chart/templates/deployment/_icc.yaml @@ -161,6 +161,17 @@ spec: - name: PLT_SCALER_POD_MAX_DEFAULT_VALUE value: "{{ $.Values.watt.scaling.labels.maximum_pods.default_value }}" + {{- with .aws }} + {{- with .amp }} + - name: PLT_METRICS_PROMETHEUS_USE_AMP + value: "true" + - name: PLT_METRICS_AMP_REGION + value: {{ .region }} + - name: PLT_METRICS_AMP_WORKSPACE_ID + value: {{ .workspace_id }} + {{- end }} + {{- end }} + # Compliance - name: PLT_COMPLIANCE_RULES_DIR value: "./rules" @@ -242,6 +253,9 @@ spec: key: "{{ . }}" {{- end }} + {{- with .aws }} + - name: PLT_AWS_SA_ROLE_ARN + value: {{ .role_arn }} {{- with .elasticache }} - name: PLT_APPLICATIONS_CACHE_PROVIDER value: elasticache @@ -252,6 +266,7 @@ spec: - name: PLT_APPLICATIONS_ELASTICACHE_CLUSTERID_PREFIX value: {{ .cluster_name }} {{- end}} + {{- end}} {{- with .env }} {{- toYaml . | nindent 12 }} diff --git a/chart/templates/serviceaccount.yaml b/chart/templates/serviceaccount.yaml index 9f589e2..90b6d7d 100644 --- a/chart/templates/serviceaccount.yaml +++ b/chart/templates/serviceaccount.yaml @@ -7,7 +7,7 @@ metadata: namespace: {{ include "install.namespace" $ }} {{- if eq .Values.cloud "aws"}} annotations: - {{- with .Values.services.icc.elasticache}} + {{- with .Values.services.icc.aws}} eks.amazonaws.com/role-arn: {{ .role_arn }} {{- end}} {{- end}} diff --git a/chart/values.yaml b/chart/values.yaml index dd85d3b..1d32f4c 100644 --- a/chart/values.yaml +++ b/chart/values.yaml @@ -56,12 +56,16 @@ services: monitor: enable: true - # Configure elasticache - # See - #elasticache: + # Configure AWS features + #aws: + # # The role must have policies for all enabled AWS features # role_arn: "" - # region: "" - # cluster_name: "" + # elasticache: + # region: "" + # cluster_name: "" + # amp: + # region: "" + # workspace_id: "" # We have a changelog available at: image: