# Google Kubernetes Engine (GKE)

## Example Usage

***

{% tabs %}
{% tab title="Terraform" %}
{% code title="gcp-gke-integration.tf" %}

```tf
resource "apono_integration" "gcp-gke-integration" {
  name                     = "Google Kubernetes Engine (GKE)"
  type                     = "gcp-gke"
  connector_id             = "apono-connector-id"
  connected_resource_types = ["gcp-gke-cluster"]
  metadata = {
    server_url = "<Server URL>"
    certificate_authority = "<Certificate Authority>"
    project_id = "<Project ID>"
    region = "<Region>"
    cluster_name = "<Cluster Name>"
  }
  gcp_secret = {
    project    = "project_template_value"
    secret_id  = "gcp_secret_id_template_value"
  }
}
```

{% endcode %}
{% endtab %}

{% tab title="Terraform V2" %}
{% code title="gcp-gke-integration.tf" %}

```tf
resource "apono_resource_integration" "gcp-gke-integration" {
  name                     = "Google Kubernetes Engine (GKE)"
  type                     = "gcp-gke"
  connector_id             = "apono-connector-id"
  connected_resource_types = ["gcp-gke-cluster"]
  integration_config = {
    server_url = "<Server URL>"
    certificate_authority = "<Certificate Authority>"
    project_id = "<Project ID>"
    region = "<Region>"
    cluster_name = "<Cluster Name>"
  }
  secret_store_config = {
    gcp = {
      project    = "project_template_value"
      secret_id  = "gcp_secret_id_template_value"
    }
}
```

{% endcode %}
{% endtab %}

{% tab title="Public API" %}
{% code title="gcp-gke-integration.json" %}

```json
{
    "gcp-gke-integration": {
        "name": "Google Kubernetes Engine (GKE)",
        "type": "gcp-gke",
        "connector_id": "apono-connector-id",
        "connected_resource_types": [
            "gcp-gke-cluster"
        ],
        "integration_config": {
            "server_url": "<Server URL>",
            "certificate_authority": "<Certificate Authority>",
            "project_id": "<Project ID>",
            "region": "<Region>",
            "cluster_name": "<Cluster Name>",
        },
	"secret_store_config": {
    	    "project": "project_template_value",
    	    "secret_id": "gcp_secret_id_template_value"
  	    }
    }
}
```

{% endcode %}
{% endtab %}
{% endtabs %}

## Schema

***

* `type` gcp-gke
* `connected_resource_types` List of resource types to sync.

<details>

<summary>Available resource types you can use</summary>

* gcp-gke-cluster
* gcp-gke-namespace
* gcp-gke-secret
* gcp-gke-configmap
* gcp-gke-deployment
* gcp-gke-statefulset
* gcp-gke-ingress
* gcp-gke-cronjob
* gcp-gke-job
* gcp-gke-daemonset

</details>

### Integration Config

***

* `server_url` (Optional | String) Server URL
* `certificate_authority` (Optional | String) Certificate Authority
* `project_id` (Optional | String) Project ID
* `region` (Optional | String) Region
* `cluster_name` (Optional | String) Cluster Name
