From b8a360d0d1f63fd2ccb5dfb6639445aa0657672c Mon Sep 17 00:00:00 2001 From: Bill Kable Date: Wed, 4 Jun 2025 22:06:50 -0500 Subject: [PATCH] add terraform quickstart blog --- .../index.md | 367 ++++++++++++ static/asciinemas/terraform-apply.cast | 481 +++++++++++++++ static/asciinemas/terraform-destroy.cast | 546 ++++++++++++++++++ static/asciinemas/terraform-init.cast | 99 ++++ static/asciinemas/terraform-plan.cast | 294 ++++++++++ .../asciinemas/terraform-verify-k8s-pods.cast | 56 ++ 6 files changed, 1843 insertions(+) create mode 100644 blog/2025-06-04-terraform-now-supported/index.md create mode 100644 static/asciinemas/terraform-apply.cast create mode 100644 static/asciinemas/terraform-destroy.cast create mode 100644 static/asciinemas/terraform-init.cast create mode 100644 static/asciinemas/terraform-plan.cast create mode 100644 static/asciinemas/terraform-verify-k8s-pods.cast diff --git a/blog/2025-06-04-terraform-now-supported/index.md b/blog/2025-06-04-terraform-now-supported/index.md new file mode 100644 index 0000000..9b47403 --- /dev/null +++ b/blog/2025-06-04-terraform-now-supported/index.md @@ -0,0 +1,367 @@ +--- +slug: terraform-quickstart +title: Terraform deployment quickstart +authors: [bill] +tags: [educates, terraform] +--- + +Hi all, we are happy to announce we are now sharing the [Educates Terraform Modules project](https://github.com/educates/educates-terraform-modules) that provides support for deploying Educates on Amazon and Google Cloud providers. + +Its [release versions](https://github.com/educates/educates-terraform-modules/releases) are independent from the [Educates Training Platform releases](https://github.com/educates/educates-training-platform/releases); +however, it is currently tested and verified to work on Educates 3.2.x and 3.3.x on Kubernetes version 1.32. + +We've provided the quick start here so you can experiment with it and give feedback. + + + +--- + +## Why? + +If you read the [*Installing Educates on a cloud provider* article](/blog/install-educates-cloud-cli) and/or watched the accompanying [video](https://www.youtube.com/watch?v=C6vCd6Nhf5M), +you would notice that Educates requires a preliminary setup of a Kubernetes cluster before you can install Educates. + +You *could* install Kubernetes (K8s) yourself, +especially if are a Certified Kubernetes Administrator (CKA). +But really it is more convenient to automate the K8s cluster provisioning as much as possible. + +We selected [Terraform](https://developer.hashicorp.com/terraform) given its widespread use in DevOps and Platform Engineering domains. + +--- + +## What is provided and supported? + +The [Educates Terraform Modules project](https://github.com/educates/educates-terraform-modules) include several modules: + +1. **Infrastructure modules**: deploy K8s cluster + - [EKS cluster for Educates](https://github.com/educates/educates-terraform-modules/tree/main/infrastructure/eks-for-educates): Deploy K8s on Amazon EKS + - [GKE cluster for Educates](https://github.com/educates/educates-terraform-modules/tree/main/infrastructure/gke-for-educates): Deploy K8s on Google GKE + - [Kubeconfig generation support](https://github.com/educates/educates-terraform-modules/tree/main/infrastructure/token-sa-kubeconfig): Create a service account and secret for kubeconfig access + +1. **Platform** + - [Educates](https://github.com/educates/educates-terraform-modules/tree/main/platform/educates): Deploy Educates Ingress related prerequisites, Lookup Service, and Educates Training Platform + +1. **Root Modules**: Reference implementations for installing Educates using Infrastructure and Platform modules + - [Educates on EKS](https://github.com/educates/educates-terraform-modules/tree/main/root-modules/educates-on-eks) + - [Educates on GKE](https://github.com/educates/educates-terraform-modules/tree/main/root-modules/educates-on-gke) + +The [Educates Terraform Module project](https://github.com/educates/educates-terraform-modules) is released independently from the [Educates Training Platform](https://github.com/educates/educates-training-platform); +however, is currently tested and verified to work on Educates 3.2.x and 3.3.x. + +You can see the project releases [here](https://github.com/educates/educates-terraform-modules/releases). + +:::note + +Consider the **Root Modules** reference implementation only. +You should build your own using the infrastructure and platform modules, +using the reference implementations as inspiration. + +We'll discuss limitations later in this article. + +::: +--- + +## Quick start + +Getting started is easy. + +In this example, we'll walk through deploying Educates on GKE using Terraform, +from your development workstation. + +You'll need some set up first. + +### What you should know before running it? + +We expect that you have a basic understanding of the following: + +- Kubernetes (K8s) + +- Your Cloud Provider (Amazon or Google): You should understand how to manage network, + compute, storage, IAM users, policies and roles, K8s, and basic billing concepts + +- Terraform + +- Educates installation process - we recommend you have already reviewed the following: + - [How the installer works](/blog/how-installer-works-part-1) + - Installing Educates on a cloud provider parts [one](/blog/install-educates-cloud-cli) and [two](/blog/verify-educates-cloud-install). + +### How much will running this cost? + +If you've followed the instructions in the [Configure Terraform variables](#configure-terraform-variables) section, +and use the `main.tfvars.example` template, +your cluster and compute costs will be low. + +You should be able to setup, test, and tear down your Educates cluster within a 24 hour period, +and stay within a $5-10 USD range. + +### Prerequisites + +You'll need the following before you start: + +1. **Amazon or Google Cloud IAM account**: + With sufficient privileges to create/update/delete (for this example we use Google): + - VPC/Network resources + - K8s cluster + - Compute and Storage + - DNS Zones + +2. **Educates Cluster Ingress DNS Zone configuration**: + You'll need DNS configuration for your Educates cluster. + You can read more about configuring that: + - [Prerequisites](/blog/install-educates-cloud-cli#prerequisites) + - [Cloud DNS Prerequisites](/blog/install-educates-cloud-cli#example-using-google-cloud) + +3. **Developer workstation**: + - Mac OSX + - Linux distribution + - Windows Subsystem for Linux (WSL) + +4. **Cloud provider CLI**: + For this example, [install and use `gcloud`](https://cloud.google.com/sdk/docs/install). + You will also need to authenticate via an IAMS per #1 interactively, + and also for the sdk: + + ```bash + gcloud auth login + ... # auth interactively + gcloud auth application-default login + ... # auth interactively + ``` + +5. **Terraform CLI**: + You can install or manage specific versions of terraform with [`tfenv`](https://github.com/tfutils/tfenv). + + The following installs, sets and verifies the version of terraform we are using in the quick start: + + ```bash + tfenv install 1.12.1 + tfenv use 1.12.1 + terraform version + ``` + + You should see Terraform version successfully installed: + + ```no-highlight + Terraform v1.12.1 + on {platform} + ``` + +6. [`kubectl`](https://kubernetes.io/docs/tasks/tools/#kubectl): + We'll need access to the cluster after deployment. + +7. **Educates CLI**: + We'll need to deploy/manage a workshop to verify the cluster by either method: + - Download the [Educates CLI directly](https://github.com/educates/educates-training-platform/releases/tag/3.3.2), + - Use the [Educatesenv tool to manage the installation of Educates](/blog/managing-multiple-versions-of-educates-cli). + Here we will deploy Educates 3.3.2. + +### Root Module Reference implementations + +We'll use the GKE reference implementation Terraform plan [here](https://github.com/educates/educates-terraform-modules/tree/main/root-modules/educates-on-gke). +You can read how to run it [here](https://github.com/educates/educates-terraform-modules/blob/main/root-modules/educates-on-gke/README.md). + +Alternatively, you could use the one for Amazon Elastic Kubernetes Service (EKS) [here](https://github.com/educates/educates-terraform-modules/tree/main/root-modules/educates-on-eks). + +To prepare for running the quick start, +do the following: + +1. Open a bash or zsh terminal. + +1. Set up a project directory of your choice on your developer workstation, + and change your current directory to it. + + For example: + + ```bash + mkdir ~/workspace + cd ~/workspace + ``` + +1. Fork/clone the Educates Terraform modules repo: + + ```bash + git clone https://github.com/educates/educates-terraform-modules.git + ``` + +1. Change your working directory to the GKE root module directory + (from where we will run the terraform plan): + + ```bash + cd educates-terraform-modules/root-modules/educates-on-gke + ``` + +### Configure Terraform variables + +Review the [Configuration examples](https://github.com/educates/educates-terraform-modules/tree/main?tab=readme-ov-file#configuration-examples). + +For this example, +we'll use the [`main.tfvars.example`](https://github.com/educates/educates-terraform-modules/blob/main/root-modules/educates-on-gke/examples/main.tfvars.example) as a template from which to build the `main.tfvars`. + +1. Copy the example template to `main.tfvars` file: + + ```bash + cp ./examples/main.tfvars.example ./main.tfvars + ``` + +1. Configure the placeholder variables in the `main.tfvars` file: + - `gcp_project_id`: your Google Cloud project id where you will deploy the cluster + - `gcp_region`: Google Cloud region where you will deploy the cluster + - `cluster_name`: Pick a name for your cluster (should be between 6-12 characters) + - `educates_ingress_domain`: the domain associated with the DNS zone configured for your Educates cluster + +1. Notice the `deploy_educates` configuration flag. + By default, the root modules assume you want to deploy Educates using the [Educates Platform module](https://github.com/educates/educates-terraform-modules/tree/main/platform/educates). + It uses the [Carvel *Kapp Controller*](https://carvel.dev/kapp-controller/) for reconciliation of Educates components into the cluster. + + If you prefer to install Educates via the CLI as in [Installing Educates on a cloud provider article](/blog/install-educates-cloud-cli), + set the `deploy_educates` flag to `false`. + The Educates module will not be deployed. + +### Prepare and run the plan to deploy cluster + +1. Initialize terraform in your development workspace: + + ```bash + terraform init + ``` + + You can see a similar output: + + + +1. Run the plan (this step is optional, but useful if you need to cache the plan in a CI/CD workflow): + + ```bash + terraform plan -var-file ./main.tfvars + ``` + + You can see a similar output: + + + +1. Apply the plan: + + ```bash + terraform apply -var-file ./main.tfvars + ``` + + Depending on your network connection speed/bandwidth, + as well as Google's resource constraints, + the plan may take 15-20 minutes to apply. + + You can see a similar output: + + + +:::warning +Note that when running `terraform` cli commands, +you will be caching state of the plan in the working directory on your workstation into the following +directories/files: + +- `.terraform` +- `.terraform.lock.hcl` +- `terraform.state` +- `terraform.state.backup` + +State of the terraform plan and the associated cluster deployment workflow is not automatically saved elsewhere, +so if you were to modify or delete these resources, +you would not be able to update or destroy your cluster using Terraform. + +This is one of the reasons these are just example reference implementations, +and it's up to you to know what you're doing. +You should use the released modules in your own plans, +taking inspiration from these reference implementations, +but guaranteeing to properly save the state of your plan executions. + +::: + +### Setup K8s access + +The terraform plan will generate a kubeconfig file for you, +with a naming pattern of `kubeconfig-${cluster_name}-token.yaml`. +We'll verify K8s access here: + + +1. Set KUBECONFIG to point to it in your terminal session: + + ```bash + export KUBECONFIG=./kubeconfig-YOUR_CLUSTER_NAME-token.yaml + ``` + +1. Verify you can access cluster pods using your existing Google Cloud IAM session + and provided `kubeconfig` access: + + ```bash + kubectl get pods -A + ``` + + You can see a similar output: + + + +### Deploy a workshop and verify + +You can verify the platform installation per the [Installing Educates on a cloud provider (Part 2 - Verification) article](/blog/verify-educates-cloud-install) + +### Tear down cluster + +When you are done with the cluster, +tear it down as follows: + +```bash +terraform destroy -var-file ./main.tfvars +``` + +Given we are not using `-auto-approve`, +you will be prompted to review the plan. + +Confirm with "yes". + +You can see a similar output: + + + + +:::warning + +If you removed your terraform state files, +you will not be able to run the `terraform destroy` command. + +You would need to clean up your cluster resources manually in the following order: + +- Educates portals and lookup service configuration resources +- Educates deployment +- Node pools +- GKE cluster +- Volumes +- VPC resources +- Custom policies/roles + +::: + +--- + +## Limitations + +Note the following limitations of the provided [Educates Terraform root modules](https://github.com/educates/educates-terraform-modules/tree/main/root-modules): + +1. Terraform state is not handled explicitly - it relies on the user to handle externally. +1. Continuous integration or continuous delivery pipelines are currently not supported. +1. They have not yet been tested in either commercial, enterprise, or large scale implementations. +1. They are currently considered reference implementation only. +1. Currently only Amazon EKS and Google GKE providers are supported. + +We encourage you to give feedback through issues or pull requests so we can improve the deployment automation +experience. + +--- + +## Conclusion + +In this article, +we walked through provisioning Educates using Terraform on Google Cloud. + +If you are an Amazon user, we encourage you to walk through the EKS root module provisioning. + +Hopefully we've shown you the value of using Terraform to streamline your Educates deployment +workflow. diff --git a/static/asciinemas/terraform-apply.cast b/static/asciinemas/terraform-apply.cast new file mode 100644 index 0000000..7bf44ed --- /dev/null +++ b/static/asciinemas/terraform-apply.cast @@ -0,0 +1,481 @@ +{"version": 2, "width": 117, "height": 17, "timestamp": 1749132498, "env": {"SHELL": "/bin/zsh", "TERM": "xterm-256color"}} +[0.19064, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"] +[0.195533, "o", "\u001b]2;bkable@Mac:~/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u0007\u001b]1;..ucates-on-gke\u0007"] +[0.19755, "o", "\u001b]7;file://Mac.lan/Users/bkable/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u001b\\"] +[0.198131, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[K"] +[0.198253, "o", "\u001b[?1h\u001b=\u001b[?2004h"] +[0.221829, "o", "\r\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[01;34mgit:(\u001b[31mfix-example-node-pool-scale-factor\u001b[34m) \u001b[33m✗\u001b[00m \u001b[K"] +[1.745547, "o", "t"] +[1.93421, "o", "e"] +[2.16325, "o", "r"] +[2.315982, "o", "r"] +[2.461018, "o", "a"] +[2.552534, "o", "f"] +[2.656339, "o", "o"] +[2.764214, "o", "r"] +[2.825557, "o", "m"] +[2.91235, "o", " "] +[3.140744, "o", "a"] +[3.254228, "o", "p"] +[3.382989, "o", "p"] +[3.584166, "o", "l"] +[3.827685, "o", "y"] +[4.097161, "o", " "] +[4.578188, "o", "-"] +[4.682576, "o", "v"] +[4.827779, "o", "a"] +[4.978699, "o", "r"] +[5.657338, "o", "-"] +[6.055691, "o", "f"] +[6.12823, "o", "i"] +[6.316406, "o", "l"] +[6.429409, "o", "e"] +[7.786486, "o", " "] +[11.782026, "o", "./main.tfvars\u001b[1m \u001b[0m"] +[13.448865, "o", "\b\u001b[0m -"] +[13.581647, "o", "-"] +[13.946034, "o", "\b \b"] +[14.224225, "o", "a"] +[14.311977, "o", "u"] +[14.453447, "o", "t"] +[14.549225, "o", "o"] +[14.794689, "o", "-"] +[15.258579, "o", "a"] +[15.401133, "o", "p"] +[15.532331, "o", "p"] +[15.677866, "o", "r"] +[15.780488, "o", "o"] +[15.999486, "o", "v"] +[16.371469, "o", "e"] +[16.963097, "o", "\u001b[?1l\u001b>"] +[16.963166, "o", "\u001b[?2004l"] +[16.963177, "o", "\r\r\n"] +[16.966294, "o", "\u001b]2;terraform apply -var-file ./main.tfvars -auto-approve\u0007"] +[16.966432, "o", "\u001b]1;terraform\u0007"] +[22.711797, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke_auth.data.google_client_config.provider: Reading...\u001b[0m\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_client_config.default: Reading...\u001b[0m\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_compute_zones.this: Reading...\u001b[0m\u001b[0m\r\n"] +[22.712044, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_container_engine_versions.gke_versions: Reading...\u001b[0m\u001b[0m\r\n"] +[22.833215, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_client_config.default: Read complete after 0s [id=projects//regions//zones/]\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke_auth.data.google_client_config.provider: Read complete after 0s [id=projects//regions//zones/]\u001b[0m\r\n"] +[23.202999, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_container_engine_versions.gke_versions: Read complete after 1s [id=2025-06-05 14:08:41.859104 +0000 UTC]\u001b[0m\r\n"] +[23.360665, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_compute_zones.this: Read complete after 1s [id=projects/educates-testing/regions/us-central1]\u001b[0m\r\n"] +[23.363904, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.data.google_container_engine_versions.region: Reading...\u001b[0m\u001b[0m\r\n"] +[23.365584, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.data.google_container_engine_versions.zone: Reading...\u001b[0m\u001b[0m\r\n"] +[23.555442, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.data.google_container_engine_versions.region: Read complete after 0s [id=2025-06-05 14:08:42.20823 +0000 UTC]\u001b[0m\r\n"] +[23.654152, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.data.google_container_engine_versions.zone: Read complete after 0s [id=2025-06-05 14:08:42.307568 +0000 UTC]\u001b[0m\r\n"] +[23.826054, "o", "\u001b[0m\u001b[1mmodule.educates[0].data.kubectl_file_documents.docs: Reading...\u001b[0m\u001b[0m\r\n"] +[23.843791, "o", "\u001b[0m\u001b[1mmodule.educates[0].data.kubectl_file_documents.docs: Read complete after 1s [id=3c9aab3defcb809a8b5de871a63a65a19e10c86ff7da30132924bd87456f0d80]\u001b[0m\r\n"] +[24.06662, "o", "\r\nTerraform used the selected providers to generate the following execution plan. Resource actions are indicated with\r\nthe following symbols:\r\n \u001b[32m+\u001b[0m create\u001b[0m\r\n \u001b[36m<=\u001b[0m read (data resources)\u001b[0m\r\n\r\nTerraform will perform the following actions:\r\n"] +[24.066717, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.clusterrolebinding_app_installs\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"clusterrolebinding_app_installs\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = true\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ClusterRoleBinding\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b"] +[24.066776, "o", "[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRoleBinding\r\n metadata:\r\n name: package-installs\r\n roleRef:\r\n apiGroup: rbac.authorization.k8s.io\r\n kind: ClusterRole\r\n name: cluster-admin\r\n subjects:\r\n - kind: ServiceAccount\r\n name: package-installs\r\n namespace: package-installs\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.066844, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.educates_app\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"educates_app\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"kappctrl.k14s.io/v1alpha1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"App\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"educates\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wai"] +[24.066872, "o", "t = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: kappctrl.k14s.io/v1alpha1\r\n kind: App\r\n metadata:\r\n name: educates\r\n namespace: package-installs\r\n spec:\r\n deploy:\r\n - kapp:\r\n rawOptions:\r\n - --app-changes-max-to-keep=5\r\n - --diff-changes=false\r\n - --wait-timeout=5m\r\n fetch:\r\n - imgpkgBundle:\r\n image: ghcr.io/educates/educates-installer:3.3.2\r\n path: bundle\r\n - inline:\r\n paths:\r\n disable-kapp-controller.yaml: |\r\n clusterPackages:\r\n kapp-controller:\r\n enabled: false\r\n path: values\r\n se"] +[24.066889, "o", "rviceAccountName: package-installs\r\n syncPeriod: 8760h0m0s\r\n template:\r\n - ytt:\r\n paths:\r\n - bundle/kbld/kbld-bundle.yaml\r\n - bundle/config/kapp\r\n - bundle/config/ytt\r\n valuesFrom:\r\n - path: bundle/kbld/kbld-images.yaml\r\n - secretRef:\r\n name: package-installs\r\n - path: values/disable-kapp-controller.yaml\r\n - kbld:\r\n paths:\r\n - bundle/.imgpkg/images.yml\r\n - '-'\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for {\r\n \u001b[32m+\u001b[0m\u001b[0m field {\r\n \u001b[32m+\u001b[0m\u001b[0m key = \"status.conditions.[0].type\"\r\n \u001b[32m+\u001b[0m\u001b[0m value = \"ReconcileSucceeded\"\r\n \u001b[32m+\u001b[0m\u001b[0m value_type = \"eq\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m field {\r\n \u001b[32m"] +[24.066911, "o", "+\u001b[0m\u001b[0m key = \"status.conditions.[0].status\"\r\n \u001b[32m+\u001b[0m\u001b[0m value = \"True\"\r\n \u001b[32m+\u001b[0m\u001b[0m value_type = \"eq\"\r\n }\r\n }\r\n }\r\n"] +[24.067005, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.educates_app_secret\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"educates_app_secret\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"Secret\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m w"] +[24.067054, "o", "ait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n data: (sensitive value)\r\n kind: Secret\r\n metadata:\r\n name: package-installs\r\n namespace: package-installs\r\n type: Opaque\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.067087, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"Namespace\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema "] +[24.067127, "o", " = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: Namespace\r\n metadata:\r\n name: kapp-controller\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.06716, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller-packaging-global\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"Namespace\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller-packaging-global\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b["] +[24.067184, "o", "32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: Namespace\r\n metadata:\r\n name: kapp-controller-packaging-global\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.067215, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/serviceaccounts/kapp-controller-sa\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ServiceAccount\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller-sa\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kapp-controller\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n "] +[24.067229, "o", " \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: ServiceAccount\r\n metadata:\r\n name: kapp-controller-sa\r\n namespace: kapp-controller\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.067311, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/services/packaging-api\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"Service\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"packaging-api\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kapp-controller\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m vali"] +[24.067331, "o", "date_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: Service\r\n metadata:\r\n name: packaging-api\r\n namespace: kapp-controller\r\n spec:\r\n ports:\r\n - name: main\r\n port: 443\r\n protocol: TCP\r\n targetPort: api\r\n - name: metrics\r\n port: 8080\r\n protocol: TCP\r\n targetPort: metrics\r\n selector:\r\n app: kapp-controller\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.067459, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/apps.kappctrl.k14s.io\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"apps.kappctrl.k14s.io\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid "] +[24.067482, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n name: apps.kappctrl.k14s.io\r\n spec:\r\n group: kappctrl.k14s.io\r\n names:\r\n categories:\r\n - carvel\r\n kind: App\r\n listKind: AppList\r\n plural: apps\r\n singular: app\r\n scope: Namespaced\r\n versions:\r\n - additionalPrinterColumns:\r\n - description: Friendly description\r\n jsonPath: .status.friendlyDescription\r\n name: Description\r\n type: string\r\n - description: Last time app started bein"] +[24.067526, "o", "g deployed. Does not mean anything was\r\n changed.\r\n jsonPath: .status.deploy.startedAt\r\n name: Since-Deploy\r\n type: date\r\n - description: Time since creation\r\n jsonPath: .metadata.creationTimestamp\r\n name: Age\r\n type: date\r\n name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n description: 'An App is a set of Kubernetes resources. These resources could\r\n span any number of namespaces or could be cluster-wide (e.g. CRDs). An App\r\n is represented in kapp-controller using a App CR. The App CR comprises of\r\n three main sections: spec.fetch – declare source for fetching configuration\r\n and OCI images spec.template – declare templating tool and values spec.deploy\r\n – declare deployment tool and any deploy specific "] +[24.067546, "o", "configuration'\r\n properties:\r\n apiVersion:\r\n description: 'APIVersion defines the versioned schema of this representation\r\n of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers may infer this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: obj"] +[24.067572, "o", "ect\r\n spec:\r\n properties:\r\n canceled:\r\n description: Cancels current and future reconciliations (optional;\r\n default=false)\r\n type: boolean\r\n cluster:\r\n description: Specifies that app should be deployed to destination\r\n cluster; by default, cluster is same as where this resource resides\r\n (optional; v0.5.0+)\r\n properties:\r\n kubeconfigSecretRef:\r\n description: Specifies secret containing kubeconfig (required)\r\n properties:\r\n key:\r\n description: Specifies key that contains kubeconfig (optional)\r\n type: string\r\n "] +[24.067611, "o", " name:\r\n description: Specifies secret name within app's namespace\r\n (required)\r\n type: string\r\n type: object\r\n namespace:\r\n description: Specifies namespace in destination cluster (optional)\r\n type: string\r\n type: object\r\n defaultNamespace:\r\n description: Specifies the default namespace to install the App resources,\r\n by default this is same as the App's namespace (optional; v0.48.0+)\r\n type: string\r\n deploy:\r\n items:\r\n properties:\r\n kapp:\r\n description: Use kapp to deploy resources\r\n "] +[24.06764, "o", " properties:\r\n delete:\r\n description: Configuration for delete command (optional)\r\n properties:\r\n rawOptions:\r\n description: Pass through options to kapp delete (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n inspect:\r\n description: 'Configuration for inspect command (optional)\r\n as of kapp-controller v0.31.0, inspect is disabled by\r\n default add rawOptions or use an empty inspect config\r\n like `inspect: {}` to enable'\r\n "] +[24.06767, "o", " properties:\r\n rawOptions:\r\n description: Pass through options to kapp inspect (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n intoNs:\r\n description: Override namespace for all resources (optional)\r\n type: string\r\n mapNs:\r\n description: Provide custom namespace override mapping (optional)\r\n items:\r\n type: string\r\n type: array\r\n rawOptions:\r\n description: Pass through options to kapp de"] +[24.067689, "o", "ploy (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: array\r\n fetch:\r\n items:\r\n properties:\r\n git:\r\n description: Uses git to clone repository\r\n properties:\r\n depth:\r\n description: depth of commits to fetch; 1 (default) means\r\n only latest commit, 0 means everything (optional)\r\n format: int64\r\n type: integer\r\n forceHTTPBasicAuth:\r\n description: Fo"] +[24.067738, "o", "rce the usage of HTTP Basic Auth when Basic\r\n Auth is provided (optional)\r\n type: boolean\r\n lfsSkipSmudge:\r\n description: Skip lfs download (optional)\r\n type: boolean\r\n ref:\r\n description: Branch, tag, commit; origin is the name of\r\n the remote (optional)\r\n type: string\r\n refSelection:\r\n description: Specifies a strategy to resolve to an explicit\r\n ref (optional; v0.24.0+)\r\n properties:\r\n semver:\r\n properties:\r\n cons"] +[24.067762, "o", "traints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n secretRef:\r\n description: 'Secret with auth details. allowed keys: ssh-privatekey,\r\n ssh-knownhosts, username, password (optional) (if ssh-knownhosts\r\n is not specified, git will not perform strict host checking)'\r\n properties:\r\n "] +[24.06778, "o", " name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of repository (optional)\r\n type: string\r\n url:\r\n description: http or ssh urls are supported (required)\r\n type: string\r\n type: object\r\n helmChart:\r\n description: Uses helm fetch to fetch specified chart\r\n properties:\r\n name:\r\n description: 'Example: stable/redis'\r\n typ"] +[24.067833, "o", "e: string\r\n repository:\r\n properties:\r\n secretRef:\r\n properties:\r\n name:\r\n description: Object is expected to be within same\r\n namespace\r\n type: string\r\n type: object\r\n url:\r\n description: Repository url; scheme of oci:// will fetch\r\n experimental helm oci chart (v0.19.0+) (required)\r\n type: string\r\n type: object\r\n version:\r\n type: string\r\n ty"] +[24.067853, "o", "pe: object\r\n http:\r\n description: Uses http library to fetch file\r\n properties:\r\n secretRef:\r\n description: 'Secret to provide auth details (optional)\r\n Secret may include one or more keys: username, password'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n sha256:\r\n description: Checksum to verify after download (optional)\r\n type: string\r\n subPath:\r\n description: Grab "] +[24.067884, "o", "only portion of download (optional)\r\n type: string\r\n url:\r\n description: 'URL can point to one of following formats:\r\n text, tgz, zip http and https url are supported; plain\r\n file, tgz and tar types are supported (required)'\r\n type: string\r\n type: object\r\n image:\r\n description: Pulls content from Docker/OCI registry\r\n properties:\r\n secretRef:\r\n description: 'Secret may include one or more keys: username,\r\n password, token. By default anonymous access is used for\r\n authentication.'\r\n "] +[24.067908, "o", " properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of image (optional)\r\n type: string\r\n tagSelection:\r\n description: Specifies a strategy to choose a tag (optional;\r\n v0.24.0+) if specified, do not include a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n "] +[24.067924, "o", " prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n url:\r\n description: 'Docker image url; unqualified, tagged, or\r\n digest references supported (required) Example: username/app1-config:v0.1.0'\r\n type: string\r\n type: object\r\n imgpkgBundle:\r\n description: Pulls imgpkg bundle from Docker/OCI registry (v0.17.0+)\r\n "] +[24.067949, "o", " properties:\r\n image:\r\n description: Docker image url; unqualified, tagged, or digest\r\n references supported (required)\r\n type: string\r\n secretRef:\r\n description: 'Secret may include one or more keys: username,\r\n password, token. By default anonymous access is used for\r\n authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n tagSelection:\r\n description: Specifies a st"] +[24.067988, "o", "rategy to choose a tag (optional;\r\n v0.24.0+) if specified, do not include a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n type: object\r\n inlin"] +[24.068009, "o", "e:\r\n description: Pulls content from within this resource; or other\r\n resources in the cluster\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their content;\r\n not recommended for sensitive values as CR is not encrypted\r\n (optional)\r\n type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and config maps;\r\n data values are recommended to be placed in secrets (optional)\r\n items:\r\n properties:\r\n "] +[24.068029, "o", " configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files found\r\n in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files found\r\n in secret (optional)\r\n type: string\r\n "] +[24.068042, "o", " name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n description: Relative path to place the fetched artifacts\r\n type: string\r\n type: object\r\n type: array\r\n noopDelete:\r\n description: Deletion requests for the App will result in the App\r\n CR being deleted, but its associated resources will not be deleted\r\n (optional; default=false; v0.18.0+)\r\n type: boolean\r\n paused:\r\n description: Pauses _future_ reconciliation; does _not_ affect cur"] +[24.068079, "o", "rently\r\n running reconciliation (optional; default=false)\r\n type: boolean\r\n serviceAccountName:\r\n description: Specifies that app should be deployed authenticated via\r\n given service account, found in this namespace (optional; v0.6.0+)\r\n type: string\r\n syncPeriod:\r\n description: Specifies the length of time to wait, in time + unit\r\n format, before reconciling. Always >= 30s. If value below 30s is\r\n specified, 30s will be used. (optional; v0.9.0+; default=30s)\r\n type: string\r\n template:\r\n items:\r\n properties:\r\n cue:\r\n properties:\r\n inputE"] +[24.068117, "o", "xpression:\r\n description: Cue expression for single path component, can\r\n be used to unify ValuesFrom into a given field (optional)\r\n type: string\r\n outputExpression:\r\n description: Cue expression to output, default will export\r\n all visible fields (optional)\r\n type: string\r\n paths:\r\n description: Explicit list of files/directories (optional)\r\n items:\r\n type: string\r\n type: array\r\n valuesFrom:\r\n description: Provide values (optional)\r\n items:\r\n "] +[24.06814, "o", " properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n properties:\r\n fieldPath:\r\n description: 'Required: Selects a field\r\n of the app: only annotations, labels,\r\n uid, name and namespace are supported.'\r\n type: string\r\n"] +[24.068161, "o", " kappControllerVersion:\r\n description: 'Optional: Get running KappController\r\n version, defaults (empty) to retrieving\r\n the current running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running KubernetesAPIs\r\n from cluster, defaults (empty) to retrieving\r\n "] +[24.06819, "o", " the APIs from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running Kubernetes\r\n version from cluster, defaults (empty)\r\n to retrieving the vers"] +[24.068214, "o", "ion from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: s"] +[24.068232, "o", "tring\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n helmTemplate:\r\n description: Use helm template command to render helm chart\r\n properties:\r\n kubernetesAPIs:\r\n description: 'Optional: Use kubernetes group/versions resources\r\n available in the live cluster'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n "] +[24.068273, "o", " description: 'Optional: Get Kubernetes version, defaults\r\n (empty) to retrieving the version from the cluster. Can\r\n be manually overridden to a value instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n description: Set name explicitly, default is App CR's name\r\n (optional; v0.13.0+)\r\n type: string\r\n namespace:\r\n description: Set namespace explicitly, default is App CR's\r\n namespace (optional; v0.13.0+)\r\n type: string\r\n "] +[24.0683, "o", " path:\r\n description: Path to chart (optional; v0.13.0+)\r\n type: string\r\n valuesFrom:\r\n description: One or more secrets, config maps, paths that\r\n provide values (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n "] +[24.068334, "o", " properties:\r\n fieldPath:\r\n description: 'Required: Selects a field\r\n of the app: only annotations, labels,\r\n uid, name and namespace are supported.'\r\n type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running KappController\r\n version, defaults (empty) to retrieving\r\n the current running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n vers"] +[24.068353, "o", "ion:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running KubernetesAPIs\r\n from cluster, defaults (empty) to retrieving\r\n the APIs from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n "] +[24.068377, "o", " type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running Kubernetes\r\n version from cluster, defaults (empty)\r\n to retrieving the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n type: object\r\n "] +[24.068423, "o", " type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n jsonnet:\r\n description: TODO implement jsonnet\r\n type: object\r\n kbld:\r\n description: Use kbld to resolve image references to use digests\r\n properties:\r\n "] +[24.068445, "o", " paths:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kustomize:\r\n description: TODO implement kustomize\r\n type: object\r\n sops:\r\n description: Use sops to decrypt *.sops.yml files (optional;\r\n v0.11.0+)\r\n properties:\r\n age:\r\n properties:\r\n privateKeysSecretRef:\r\n description: Secret with private armored PGP private\r\n keys (required)\r\n properties:\r\n "] +[24.068471, "o", " name:\r\n type: string\r\n type: object\r\n type: object\r\n paths:\r\n description: Lists paths to decrypt explicitly (optional;\r\n v0.13.0+)\r\n items:\r\n type: string\r\n type: array\r\n pgp:\r\n description: Use PGP to decrypt files (required)\r\n properties:\r\n privateKeysSecretRef:\r\n description: Secret with private armored PGP private\r\n keys (required)\r\n properties:\r\n n"] +[24.068504, "o", "ame:\r\n type: string\r\n type: object\r\n type: object\r\n type: object\r\n ytt:\r\n description: Use ytt to template configuration\r\n properties:\r\n fileMarks:\r\n description: Control metadata about input files passed to\r\n ytt (optional; v0.18.0+) see https://carvel.dev/ytt/docs/latest/file-marks/\r\n for more details\r\n items:\r\n type: string\r\n type: array\r\n ignoreUnknownComments:\r\n description: Ignores comments that ytt doesn't recognize\r\n "] +[24.068518, "o", " (optional; default=false)\r\n type: boolean\r\n inline:\r\n description: Specify additional files, including data values\r\n (optional)\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their content;\r\n not recommended for sensitive values as CR is not\r\n encrypted (optional)\r\n type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and config\r\n "] +[24.068548, "o", " maps; data values are recommended to be placed in\r\n secrets (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files\r\n found in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n properties:\r\n "] +[24.068592, "o", " directoryPath:\r\n description: Specifies where to place files\r\n found in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n paths:\r\n description: Lists paths to provide to ytt explicitly (optional)\r\n items:\r\n type: string\r\n type: array\r\n strict:\r\n description: Forces strict m"] +[24.06861, "o", "ode https://github.com/k14s/ytt/blob/develop/docs/strict.md\r\n (optional; default=false)\r\n type: boolean\r\n valuesFrom:\r\n description: Provide values via ytt's --data-values-file\r\n (optional; v0.19.0-alpha.9)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n "] +[24.06866, "o", " properties:\r\n fieldPath:\r\n description: 'Required: Selects a field\r\n of the app: only annotations, labels,\r\n uid, name and namespace are supported.'\r\n type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running KappController\r\n version, defaults (empty) to retrieving\r\n the current running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n "] +[24.068682, "o", " version:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running KubernetesAPIs\r\n from cluster, defaults (empty) to retrieving\r\n the APIs from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n "] +[24.068703, "o", " type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running Kubernetes\r\n version from cluster, defaults (empty)\r\n to retrieving the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n "] +[24.068728, "o", " type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n status:\r\n properties:\r\n conditions:\r\n items:\r\n properties:\r\n mes"] +[24.068758, "o", "sage:\r\n description: Human-readable message indicating details about\r\n last transition.\r\n type: string\r\n reason:\r\n description: Unique, this should be a short, machine understandable\r\n string that gives the reason for condition's last transition.\r\n If it reports \"ResizeStarted\" that means the underlying persistent\r\n volume is being resized.\r\n type: string\r\n status:\r\n type: string\r\n type:\r\n description: ConditionType represents reconciler state\r\n type: string\r\n required:\r\n - status\r\n "] +[24.068787, "o", " - type\r\n type: object\r\n type: array\r\n consecutiveReconcileFailures:\r\n type: integer\r\n consecutiveReconcileSuccesses:\r\n type: integer\r\n deploy:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n finished:\r\n type: boolean\r\n kapp:\r\n description: KappDeployStatus contains the associated AppCR deployed\r\n resources\r\n properties:\r\n associatedResources:\r\n description: AssociatedResources contains the associated A"] +[24.068812, "o", "pp\r\n label, namespaces and GKs\r\n properties:\r\n groupKinds:\r\n items:\r\n description: GroupKind specifies a Group and a Kind,\r\n but does not force a version. This is useful for\r\n identifying concepts during lookup stages without\r\n having partially valid types\r\n properties:\r\n group:\r\n type: string\r\n kind:\r\n type: string\r\n required:\r\n - group\r\n - kind\r\n "] +[24.068837, "o", " type: object\r\n type: array\r\n label:\r\n type: string\r\n namespaces:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n startedAt:\r\n format: date-time\r\n type: string\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n fetch:\r\n "] +[24.068861, "o", " properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n startedAt:\r\n format: date-time\r\n type: string\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n friendlyDescription:\r\n type: string\r\n inspect:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n "] +[24.068886, "o", " type: integer\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n managedAppName:\r\n type: string\r\n observedGeneration:\r\n description: Populated based on metadata.generation when controller\r\n observes a change to the resource; if this value is out of data,\r\n other status fields do not reflect latest state\r\n format: int64\r\n type: integer\r\n template:\r\n properties:\r\n error:\r\n type: string\r\n "] +[24.068919, "o", " exitCode:\r\n type: integer\r\n stderr:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n usefulErrorMessage:\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n served: true\r\n storage: true\r\n subresources:\r\n status: {}\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.068971, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackagemetadatas.internal.packaging.carvel.dev\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"internalpackagemetadatas.internal.packaging.carvel.dev\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b"] +[24.06899, "o", "[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n name: internalpackagemetadatas.internal.packaging.carvel.dev\r\n spec:\r\n group: internal.packaging.carvel.dev\r\n names:\r\n kind: InternalPackageMetadata\r\n listKind: InternalPackageMetadataList\r\n plural: internalpackagemetadatas\r\n singular: internalpackagemetadata\r\n scope: Namespaced\r\n versions:\r\n - name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n properties:\r\n "] +[24.069014, "o", " apiVersion:\r\n description: 'APIVersion defines the versioned schema of this representation\r\n of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers may infer this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: object\r\n spec:\r\n propert"] +[24.069039, "o", "ies:\r\n categories:\r\n description: Classifiers of the package (optional; Array of strings)\r\n items:\r\n type: string\r\n type: array\r\n displayName:\r\n description: Human friendly name of the package (optional; string)\r\n type: string\r\n iconSVGBase64:\r\n description: Base64 encoded icon (optional; string)\r\n type: string\r\n longDescription:\r\n description: Long description of the package (optional; string)\r\n type: string\r\n maintainers:\r\n description: List of maintainer info for the package. Currently only\r\n supports the name key. (optional; array of maintner info)\r\n "] +[24.06908, "o", " items:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n providerName:\r\n description: Name of the entity distributing the package (optional;\r\n string)\r\n type: string\r\n shortDescription:\r\n description: Short desription of the package (optional; string)\r\n type: string\r\n supportDescription:\r\n description: Description of the support available for the package\r\n (optional; string)\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n serv"] +[24.069108, "o", "ed: true\r\n storage: true\r\n subresources:\r\n status: {}\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.06919, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackages.internal.packaging.carvel.dev\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"internalpackages.internal.packaging.carvel.dev\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_s"] +[24.069199, "o", "ide_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n name: internalpackages.internal.packaging.carvel.dev\r\n spec:\r\n group: internal.packaging.carvel.dev\r\n names:\r\n kind: InternalPackage\r\n listKind: InternalPackageList\r\n plural: internalpackages\r\n singular: internalpackage\r\n scope: Namespaced\r\n versions:\r\n - name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n properties:\r\n apiVersion:\r\n description: "] +[24.069244, "o", "'APIVersion defines the versioned schema of this representation\r\n of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers may infer this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: object\r\n spec:\r\n properties:\r\n capacityRequirementsDesc"] +[24.069261, "o", "ription:\r\n description: 'System requirements needed to install the package. Note:\r\n these requirements will not be verified by kapp-controller on installation.\r\n (optional; string)'\r\n type: string\r\n includedSoftware:\r\n description: IncludedSoftware can be used to show the software contents\r\n of a Package. This is especially useful if the underlying versions\r\n do not match the Package version\r\n items:\r\n description: IncludedSoftware contains the underlying Software Contents\r\n of a Package\r\n properties:\r\n description:\r\n type: string\r\n displayName:\r\n type"] +[24.069287, "o", ": string\r\n version:\r\n type: string\r\n type: object\r\n type: array\r\n kappControllerVersionSelection:\r\n description: KappControllerVersionSelection specifies the versions\r\n of kapp-controller which can install this package\r\n properties:\r\n constraints:\r\n type: string\r\n type: object\r\n kubernetesVersionSelection:\r\n description: KubernetesVersionSelection specifies the versions of\r\n k8s which this package can be installed on\r\n properties:\r\n constraints:\r\n type: string\r\n type: object\r\n license"] +[24.069313, "o", "s:\r\n description: Description of the licenses that apply to the package\r\n software (optional; Array of strings)\r\n items:\r\n type: string\r\n type: array\r\n refName:\r\n description: The name of the PackageMetadata associated with this\r\n version Must be a valid PackageMetadata name (see PackageMetadata\r\n CR for details) Cannot be empty\r\n type: string\r\n releaseNotes:\r\n description: Version release notes (optional; string)\r\n type: string\r\n releasedAt:\r\n description: Timestamp of release (iso8601 formatted string; optional)\r\n format: date-time\r\n nullable: true\r\n "] +[24.06933, "o", " type: string\r\n template:\r\n properties:\r\n spec:\r\n properties:\r\n canceled:\r\n description: Cancels current and future reconciliations (optional;\r\n default=false)\r\n type: boolean\r\n cluster:\r\n description: Specifies that app should be deployed to destination\r\n cluster; by default, cluster is same as where this resource\r\n resides (optional; v0.5.0+)\r\n properties:\r\n kubeconfigSecretRef:\r\n description: Specifies secret containing kubeconfig (required)\r\n propert"] +[24.069352, "o", "ies:\r\n key:\r\n description: Specifies key that contains kubeconfig\r\n (optional)\r\n type: string\r\n name:\r\n description: Specifies secret name within app's namespace\r\n (required)\r\n type: string\r\n type: object\r\n namespace:\r\n description: Specifies namespace in destination cluster\r\n (optional)\r\n type: string\r\n type: object\r\n defaultNamespace:\r\n description: Specifies the default namesp"] +[24.069384, "o", "ace to install the\r\n App resources, by default this is same as the App's namespace\r\n (optional; v0.48.0+)\r\n type: string\r\n deploy:\r\n items:\r\n properties:\r\n kapp:\r\n description: Use kapp to deploy resources\r\n properties:\r\n delete:\r\n description: Configuration for delete command (optional)\r\n properties:\r\n rawOptions:\r\n description: Pass through options to kapp delete\r\n (optional)\r\n "] +[24.069407, "o", " items:\r\n type: string\r\n type: array\r\n type: object\r\n inspect:\r\n description: 'Configuration for inspect command\r\n (optional) as of kapp-controller v0.31.0, inspect\r\n is disabled by default add rawOptions or use an\r\n empty inspect config like `inspect: {}` to enable'\r\n properties:\r\n rawOptions:\r\n description: Pass through options to kapp inspect\r\n (optional)\r\n items:\r\n "] +[24.069432, "o", " type: string\r\n type: array\r\n type: object\r\n intoNs:\r\n description: Override namespace for all resources\r\n (optional)\r\n type: string\r\n mapNs:\r\n description: Provide custom namespace override mapping\r\n (optional)\r\n items:\r\n type: string\r\n type: array\r\n rawOptions:\r\n description: Pass through options to kapp deploy\r\n "] +[24.069453, "o", " (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: array\r\n fetch:\r\n items:\r\n properties:\r\n git:\r\n description: Uses git to clone repository\r\n properties:\r\n depth:\r\n description: depth of commits to fetch; 1 (default)\r\n means only latest commit, 0 means everything (optional)\r\n format: int64\r\n "] +[24.069469, "o", " type: integer\r\n forceHTTPBasicAuth:\r\n description: Force the usage of HTTP Basic Auth\r\n when Basic Auth is provided (optional)\r\n type: boolean\r\n lfsSkipSmudge:\r\n description: Skip lfs download (optional)\r\n type: boolean\r\n ref:\r\n description: Branch, tag, commit; origin is the\r\n name of the remote (optional)\r\n type: string\r\n refSelection:\r\n description: Specifies a strategy to resolve to\r\n "] +[24.06949, "o", " an explicit ref (optional; v0.24.0+)\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n secretRef:\r\n"] +[24.06951, "o", " description: 'Secret with auth details. allowed\r\n keys: ssh-privatekey, ssh-knownhosts, username,\r\n password (optional) (if ssh-knownhosts is not\r\n specified, git will not perform strict host checking)'\r\n properties:\r\n name:\r\n description: Object is expected to be within\r\n same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of repository (optional)\r\n type: string\r\n "] +[24.069535, "o", " url:\r\n description: http or ssh urls are supported (required)\r\n type: string\r\n type: object\r\n helmChart:\r\n description: Uses helm fetch to fetch specified chart\r\n properties:\r\n name:\r\n description: 'Example: stable/redis'\r\n type: string\r\n repository:\r\n properties:\r\n secretRef:\r\n properties:\r\n name:\r\n description: Object"] +[24.069553, "o", " is expected to be within\r\n same namespace\r\n type: string\r\n type: object\r\n url:\r\n description: Repository url; scheme of oci://\r\n will fetch experimental helm oci chart (v0.19.0+)\r\n (required)\r\n type: string\r\n type: object\r\n version:\r\n type: string\r\n type: object\r\n http:\r\n description: Uses http library to fetch file\r\n prop"] +[24.069616, "o", "erties:\r\n secretRef:\r\n description: 'Secret to provide auth details (optional)\r\n Secret may include one or more keys: username,\r\n password'\r\n properties:\r\n name:\r\n description: Object is expected to be within\r\n same namespace\r\n type: string\r\n type: object\r\n sha256:\r\n description: Checksum to verify after download (optional)\r\n type: string\r\n subPath:\r\n "] +[24.069649, "o", " description: Grab only portion of download (optional)\r\n type: string\r\n url:\r\n description: 'URL can point to one of following\r\n formats: text, tgz, zip http and https url are\r\n supported; plain file, tgz and tar types are supported\r\n (required)'\r\n type: string\r\n type: object\r\n image:\r\n description: Pulls content from Docker/OCI registry\r\n properties:\r\n secretRef:\r\n description: 'Secret may include one or more keys:\r\n "] +[24.06967, "o", " username, password, token. By default anonymous\r\n access is used for authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within\r\n same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of image (optional)\r\n type: string\r\n tagSelection:\r\n description: Specifies a strategy to choose a tag\r\n (optional; v0.24.0+) if specified, do no"] +[24.069691, "o", "t include\r\n a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n "] +[24.069704, "o", " url:\r\n description: 'Docker image url; unqualified, tagged,\r\n or digest references supported (required) Example:\r\n username/app1-config:v0.1.0'\r\n type: string\r\n type: object\r\n imgpkgBundle:\r\n description: Pulls imgpkg bundle from Docker/OCI registry\r\n (v0.17.0+)\r\n properties:\r\n image:\r\n description: Docker image url; unqualified, tagged,\r\n or digest references supported (required)\r\n type: string\r\n "] +[24.069714, "o", " secretRef:\r\n description: 'Secret may include one or more keys:\r\n username, password, token. By default anonymous\r\n access is used for authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within\r\n same namespace\r\n type: string\r\n type: object\r\n tagSelection:\r\n description: Specifies a strategy to choose a tag\r\n (optional; v0.24.0+) if specified, do not include\r\n a tag in url key\r\n "] +[24.069743, "o", " properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n type: object\r\n inline:\r\n "] +[24.06978, "o", " description: Pulls content from within this resource;\r\n or other resources in the cluster\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their\r\n content; not recommended for sensitive values\r\n as CR is not encrypted (optional)\r\n type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and config\r\n maps; data values are recommended to be placed\r\n "] +[24.069797, "o", " in secrets (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place\r\n files found in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n properties:\r\n directoryPath:\r\n "] +[24.06982, "o", " description: Specifies where to place\r\n files found in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n description: Relative path to place the fetched artifacts\r\n type: string\r\n type: object\r\n type: array\r\n noopDelete:\r\n description: Deleti"] +[24.069845, "o", "on requests for the App will result in\r\n the App CR being deleted, but its associated resources will\r\n not be deleted (optional; default=false; v0.18.0+)\r\n type: boolean\r\n paused:\r\n description: Pauses _future_ reconciliation; does _not_ affect\r\n currently running reconciliation (optional; default=false)\r\n type: boolean\r\n serviceAccountName:\r\n description: Specifies that app should be deployed authenticated\r\n via given service account, found in this namespace (optional;\r\n v0.6.0+)\r\n type: string\r\n syncPeriod:\r\n description: "] +[24.069943, "o", "Specifies the length of time to wait, in time\r\n + unit format, before reconciling. Always >= 30s. If value\r\n below 30s is specified, 30s will be used. (optional; v0.9.0+;\r\n default=30s)\r\n type: string\r\n template:\r\n items:\r\n properties:\r\n cue:\r\n properties:\r\n inputExpression:\r\n description: Cue expression for single path component,\r\n can be used to unify ValuesFrom into a given field\r\n (optional)\r\n type: string\r\n outputE"] +[24.087882, "o", "xpression:\r\n description: Cue expression to output, default will\r\n export all visible fields (optional)\r\n type: string\r\n paths:\r\n description: Explicit list of files/directories\r\n (optional)\r\n items:\r\n type: string\r\n type: array\r\n valuesFrom:\r\n description: Provide values (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties"] +[24.088198, "o", ":\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n properties:\r\n fieldPath:\r\n description: 'Required: Selects\r\n a field of the app: only annotations,\r\n labels, uid, name and namespace\r\n are supported.'\r\n "] +[24.08856, "o", " type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running\r\n KappController version, defaults\r\n (empty) to retrieving the current\r\n running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n "] +[24.09092, "o", " description: 'Optional: Get running\r\n KubernetesAPIs from cluster, defaults\r\n (empty) to retrieving the APIs\r\n from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n "] +[24.09135, "o", " kubernetesVersion:\r\n description: 'Optional: Get running\r\n Kubernetes version from cluster,\r\n defaults (empty) to retrieving\r\n the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n "] +[24.091493, "o", " type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n helmTemplate:\r\n description: Use helm template command to render helm\r\n chart\r\n "] +[24.091778, "o", " properties:\r\n kubernetesAPIs:\r\n description: 'Optional: Use kubernetes group/versions\r\n resources available in the live cluster'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get Kubernetes version,\r\n defaults (empty) to retrieving the version from\r\n the cluster. Can be manually overridden to a value\r\n "] +[24.091883, "o", " instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n description: Set name explicitly, default is App\r\n CR's name (optional; v0.13.0+)\r\n type: string\r\n namespace:\r\n description: Set namespace explicitly, default is\r\n App CR's namespace (optional; v0.13.0+)\r\n type: string\r\n path:\r\n description: Path to chart (optional; v0.13.0+)\r\n "] +[24.091908, "o", " type: string\r\n valuesFrom:\r\n description: One or more secrets, config maps, paths\r\n that provide values (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n "] +[24.092054, "o", " properties:\r\n fieldPath:\r\n description: 'Required: Selects\r\n a field of the app: only annotations,\r\n labels, uid, name and namespace\r\n are supported.'\r\n type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running\r\n KappController version, defaults\r\n (empty) to retrieving the current\r\n running version.."] +[24.092091, "o", " Can be manually\r\n supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running\r\n KubernetesAPIs from cluster, defaults\r\n (empty) to retrieving the APIs\r\n from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n "] +[24.092722, "o", " \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running\r\n Kubernetes version from cluster,\r\n defaults (empty) to retrieving\r\n the version from the cluster.\r\n "] +[24.09403, "o", " Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n "] +[24.094062, "o", " type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n jsonnet:\r\n description: TODO implement jsonnet\r\n type: object\r\n kbld:\r\n description: Use kbld to resolve image references to\r\n use digests\r\n properties:\r\n paths:\r\n items:\r\n type: string\r\n type: array\r\n typ"] +[24.094122, "o", "e: object\r\n kustomize:\r\n description: TODO implement kustomize\r\n type: object\r\n sops:\r\n description: Use sops to decrypt *.sops.yml files (optional;\r\n v0.11.0+)\r\n properties:\r\n age:\r\n properties:\r\n privateKeysSecretRef:\r\n description: Secret with private armored PGP\r\n private keys (required)\r\n properties:\r\n name:\r\n type: string\r\n "] +[24.094224, "o", " type: object\r\n type: object\r\n paths:\r\n description: Lists paths to decrypt explicitly (optional;\r\n v0.13.0+)\r\n items:\r\n type: string\r\n type: array\r\n pgp:\r\n description: Use PGP to decrypt files (required)\r\n properties:\r\n privateKeysSecretRef:\r\n description: Secret with private armored PGP\r\n private keys (required)\r\n properties:\r\n "] +[24.094343, "o", " name:\r\n type: string\r\n type: object\r\n type: object\r\n type: object\r\n ytt:\r\n description: Use ytt to template configuration\r\n properties:\r\n fileMarks:\r\n description: Control metadata about input files\r\n passed to ytt (optional; v0.18.0+) see https://carvel.dev/ytt/docs/latest/file-marks/\r\n for more details\r\n items:\r\n type: string\r\n type: array\r\n "] +[24.094466, "o", " ignoreUnknownComments:\r\n description: Ignores comments that ytt doesn't recognize\r\n (optional; default=false)\r\n type: boolean\r\n inline:\r\n description: Specify additional files, including\r\n data values (optional)\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their\r\n content; not recommended for sensitive values\r\n as CR "] +[24.094561, "o", "is not encrypted (optional)\r\n type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and\r\n config maps; data values are recommended to\r\n be placed in secrets (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place\r\n files found in secret (optional)\r\n t"] +[24.094661, "o", "ype: string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place\r\n files found in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n "] +[24.094817, "o", " type: array\r\n type: object\r\n paths:\r\n description: Lists paths to provide to ytt explicitly\r\n (optional)\r\n items:\r\n type: string\r\n type: array\r\n strict:\r\n description: Forces strict mode https://github.com/k14s/ytt/blob/develop/docs/strict.md\r\n (optional; default=false)\r\n type: boolean\r\n valuesFrom:\r\n description: Provide values via ytt's --data-values-file\r\n (optional; v0.19.0-alpha.9)\r\n"] +[24.094888, "o", " items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n properties:\r\n fieldPath:\r\n description: 'Required: Selects\r\n a field of the app: only "] +[24.09494, "o", "annotations,\r\n labels, uid, name and namespace\r\n are supported.'\r\n type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running\r\n KappController version, defaults\r\n (empty) to retrieving the current\r\n running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n version:\r\n "] +[24.095006, "o", " type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running\r\n KubernetesAPIs from cluster, defaults\r\n (empty) to retrieving the APIs\r\n from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n "] +[24.09502, "o", " type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running\r\n Kubernetes version from cluster,\r\n defaults (empty) to retrieving\r\n the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n "] +[24.09517, "o", " type: object\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n "] +[24.095277, "o", " type: object\r\n type: object\r\n type: array\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n valuesSchema:\r\n description: valuesSchema can be used to show template values that\r\n can be configured by users when a Package is installed in an OpenAPI\r\n schema format.\r\n properties:\r\n openAPIv3:\r\n nullable: true\r\n type: object\r\n x-kubernetes-preserve-unknown-fields: true\r\n type: object\r\n version:\r\n description: Package version; Referenced by PackageInstall; Must be\r\n va"] +[24.095472, "o", "lid semver (required) Cannot be empty\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n served: true\r\n storage: true\r\n subresources:\r\n status: {}\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.095572, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packageinstalls.packaging.carvel.dev\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"packageinstalls.packaging.carvel.dev\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = fa"] +[24.095619, "o", "lse\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n name: packageinstalls.packaging.carvel.dev\r\n spec:\r\n group: packaging.carvel.dev\r\n names:\r\n categories:\r\n - carvel\r\n kind: PackageInstall\r\n listKind: PackageInstallList\r\n plural: packageinstalls\r\n shortNames:\r\n - pkgi\r\n singular: packageinstall\r\n scope: Namespaced\r\n versions:\r\n - additionalPrinterColumns:\r\n - description: PackageMetadata name\r\n jsonPath: .spec.pac"] +[24.095657, "o", "kageRef.refName\r\n name: Package name\r\n type: string\r\n - description: PackageMetadata version\r\n jsonPath: .status.version\r\n name: Package version\r\n type: string\r\n - description: Friendly description\r\n jsonPath: .status.friendlyDescription\r\n name: Description\r\n type: string\r\n - description: Time since creation\r\n jsonPath: .metadata.creationTimestamp\r\n name: Age\r\n type: date\r\n name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n description: A Package Install is an actual installation of a package and\r\n its underlying resources on a Kubernetes cluster. It is represented in kapp-controller\r\n by a PackageInstall CR. A PackageInstall CR must reference a Package CR.\r\n pr"] +[24.095731, "o", "operties:\r\n apiVersion:\r\n description: 'APIVersion defines the versioned schema of this representation\r\n of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers may infer this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: object\r\n spec:\r\n "] +[24.095785, "o", " properties:\r\n canceled:\r\n description: Canceled when set to true will stop all active changes\r\n type: boolean\r\n cluster:\r\n description: Specifies that Package should be deployed to destination\r\n cluster; by default, cluster is same as where this resource resides\r\n (optional)\r\n properties:\r\n kubeconfigSecretRef:\r\n description: Specifies secret containing kubeconfig (required)\r\n properties:\r\n key:\r\n description: Specifies key that contains kubeconfig (optional)\r\n type: string\r\n name:\r\n description: Specifies secret name wi"] +[24.095802, "o", "thin app's namespace\r\n (required)\r\n type: string\r\n type: object\r\n namespace:\r\n description: Specifies namespace in destination cluster (optional)\r\n type: string\r\n type: object\r\n defaultNamespace:\r\n description: Specifies the default namespace to install the Package\r\n resources, by default this is same as the PackageInstall namespace\r\n (optional; v0.48.0+)\r\n type: string\r\n noopDelete:\r\n description: When NoopDelete set to true, PackageInstall deletion\r\n should delete PackageInstall/App CR but preserve App's associated\r\n resources.\r\n "] +[24.095845, "o", " type: boolean\r\n packageRef:\r\n description: Specifies the name of the package to install (required)\r\n properties:\r\n refName:\r\n type: string\r\n versionSelection:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n paused:\r\n description: Paused when set to true "] +[24.095899, "o", "will ignore all pending changes,\r\n once it set back to false, pending changes will be applied\r\n type: boolean\r\n serviceAccountName:\r\n description: Specifies service account that will be used to install\r\n underlying package contents\r\n type: string\r\n syncPeriod:\r\n description: Controls frequency of App reconciliation in time + unit\r\n format. Always >= 30s. If value below 30s is specified, 30s will\r\n be used.\r\n type: string\r\n values:\r\n description: Values to be included in package's templating step (currently\r\n only included in the first templating step) (optional)\r\n items:\r\n proper"] +[24.095943, "o", "ties:\r\n secretRef:\r\n properties:\r\n key:\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n status:\r\n properties:\r\n conditions:\r\n items:\r\n properties:\r\n message:\r\n description: Human-readable message indicating details about\r\n last transition.\r\n type: string\r\n reason:\r\n description: Unique, this should be a short, machine understandab"] +[24.095982, "o", "le\r\n string that gives the reason for condition's last transition.\r\n If it reports \"ResizeStarted\" that means the underlying persistent\r\n volume is being resized.\r\n type: string\r\n status:\r\n type: string\r\n type:\r\n description: ConditionType represents reconciler state\r\n type: string\r\n required:\r\n - status\r\n - type\r\n type: object\r\n type: array\r\n friendlyDescription:\r\n type: string\r\n lastAttemptedVersion:\r\n description: LastAttemptedVersion specifies what version was last\r\n "] +[24.096026, "o", " attempted to be installed. It does _not_ indicate it was successfully\r\n installed.\r\n type: string\r\n observedGeneration:\r\n description: Populated based on metadata.generation when controller\r\n observes a change to the resource; if this value is out of data,\r\n other status fields do not reflect latest state\r\n format: int64\r\n type: integer\r\n usefulErrorMessage:\r\n type: string\r\n version:\r\n description: TODO this is desired resolved version (not actually deployed)\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n served: true\r\n "] +[24.096041, "o", " storage: true\r\n subresources:\r\n status: {}\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.096149, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packagerepositories.packaging.carvel.dev\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"packagerepositories.packaging.carvel.dev\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply "] +[24.096193, "o", " = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n annotations:\r\n packaging.carvel.dev/global-namespace: kapp-controller-packaging-global\r\n name: packagerepositories.packaging.carvel.dev\r\n spec:\r\n group: packaging.carvel.dev\r\n names:\r\n categories:\r\n - carvel\r\n kind: PackageRepository\r\n listKind: PackageRepositoryList\r\n plural: packagerepositories\r\n shortNames:\r\n - pkgr\r\n singular: packagerepository\r\n scope: Namespaced\r\n ve"] +[24.096235, "o", "rsions:\r\n - additionalPrinterColumns:\r\n - description: Time since creation\r\n jsonPath: .metadata.creationTimestamp\r\n name: Age\r\n type: date\r\n - description: Friendly description\r\n jsonPath: .status.friendlyDescription\r\n name: Description\r\n type: string\r\n name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n description: A package repository is a collection of packages and their metadata.\r\n Similar to a maven repository or a rpm repository, adding a package repository\r\n to a cluster gives users of that cluster the ability to install any of the\r\n packages from that repository.\r\n properties:\r\n apiVersion:\r\n description: 'APIVersion defines the versioned schema of this representation\r\n "] +[24.096279, "o", " of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers may infer this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: object\r\n spec:\r\n properties:\r\n fetch:\r\n properties:\r\n git:\r\n "] +[24.096292, "o", " description: Uses git to clone repository containing package list\r\n properties:\r\n depth:\r\n description: depth of commits to fetch; 1 (default) means\r\n only latest commit, 0 means everything (optional)\r\n format: int64\r\n type: integer\r\n forceHTTPBasicAuth:\r\n description: Force the usage of HTTP Basic Auth when Basic\r\n Auth is provided (optional)\r\n type: boolean\r\n lfsSkipSmudge:\r\n description: Skip lfs download (optional)\r\n type: boolean\r\n ref:\r\n description: Branch, tag, commit; or"] +[24.09633, "o", "igin is the name of the\r\n remote (optional)\r\n type: string\r\n refSelection:\r\n description: Specifies a strategy to resolve to an explicit\r\n ref (optional; v0.24.0+)\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n "] +[24.096349, "o", " type: object\r\n type: object\r\n secretRef:\r\n description: 'Secret with auth details. allowed keys: ssh-privatekey,\r\n ssh-knownhosts, username, password (optional) (if ssh-knownhosts\r\n is not specified, git will not perform strict host checking)'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of repository (optional)\r\n type: string\r\n url:\r\n descrip"] +[24.096378, "o", "tion: http or ssh urls are supported (required)\r\n type: string\r\n type: object\r\n http:\r\n description: Uses http library to fetch file containing packages\r\n properties:\r\n secretRef:\r\n description: 'Secret to provide auth details (optional) Secret\r\n may include one or more keys: username, password'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n sha256:\r\n description: Checksum to verify after download (optional)\r\n "] +[24.096406, "o", " type: string\r\n subPath:\r\n description: Grab only portion of download (optional)\r\n type: string\r\n url:\r\n description: 'URL can point to one of following formats: text,\r\n tgz, zip http and https url are supported; plain file, tgz\r\n and tar types are supported (required)'\r\n type: string\r\n type: object\r\n image:\r\n description: Image url; unqualified, tagged, or digest references\r\n supported (required)\r\n properties:\r\n secretRef:\r\n description: 'Secret may include one or more keys: username,\r\n "] +[24.096427, "o", " password, token. By default anonymous access is used for\r\n authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of image (optional)\r\n type: string\r\n tagSelection:\r\n description: Specifies a strategy to choose a tag (optional;\r\n v0.24.0+) if specified, do not include a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n "] +[24.096468, "o", " constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n url:\r\n description: 'Docker image url; unqualified, tagged, or digest\r\n references supported (required) Example: username/app1-config:v0.1.0'\r\n type: string\r\n type: object\r\n imgpkgBundle:\r\n "] +[24.096503, "o", " description: Pulls imgpkg bundle from Docker/OCI registry\r\n properties:\r\n image:\r\n description: Docker image url; unqualified, tagged, or digest\r\n references supported (required)\r\n type: string\r\n secretRef:\r\n description: 'Secret may include one or more keys: username,\r\n password, token. By default anonymous access is used for\r\n authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n tagSelection:\r\n "] +[24.09651, "o", " description: Specifies a strategy to choose a tag (optional;\r\n v0.24.0+) if specified, do not include a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n type: object\r\n "] +[24.096542, "o", " inline:\r\n description: Pull content from within this resource; or other\r\n resources in the cluster\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their content;\r\n not recommended for sensitive values as CR is not encrypted\r\n (optional)\r\n type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and config maps;\r\n data values are recommended to be placed in secrets (optional)\r\n items:\r\n properties:\r\n "] +[24.096573, "o", " configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files found\r\n in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files found\r\n in secret (optional)\r\n type: string\r\n name:\r\n "] +[24.096605, "o", " type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n type: object\r\n paused:\r\n description: Paused when set to true will ignore all pending changes,\r\n once it set back to false, pending changes will be applied\r\n type: boolean\r\n syncPeriod:\r\n description: Controls frequency of PackageRepository reconciliation\r\n type: string\r\n required:\r\n - fetch\r\n type: object\r\n status:\r\n properties:\r\n conditions:\r\n items:\r\n properties:\r\n "] +[24.096634, "o", " message:\r\n description: Human-readable message indicating details about\r\n last transition.\r\n type: string\r\n reason:\r\n description: Unique, this should be a short, machine understandable\r\n string that gives the reason for condition's last transition.\r\n If it reports \"ResizeStarted\" that means the underlying persistent\r\n volume is being resized.\r\n type: string\r\n status:\r\n type: string\r\n type:\r\n description: ConditionType represents reconciler state\r\n type: string\r\n required:\r\n "] +[24.096676, "o", " - status\r\n - type\r\n type: object\r\n type: array\r\n consecutiveReconcileFailures:\r\n type: integer\r\n consecutiveReconcileSuccesses:\r\n type: integer\r\n deploy:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n finished:\r\n type: boolean\r\n kapp:\r\n description: KappDeployStatus contains the associated AppCR deployed\r\n resources\r\n properties:\r\n associatedResources:\r\n description: AssociatedResource"] +[24.09672, "o", "s contains the associated App\r\n label, namespaces and GKs\r\n properties:\r\n groupKinds:\r\n items:\r\n description: GroupKind specifies a Group and a Kind,\r\n but does not force a version. This is useful for\r\n identifying concepts during lookup stages without\r\n having partially valid types\r\n properties:\r\n group:\r\n type: string\r\n kind:\r\n type: string\r\n required:\r\n - group\r\n "] +[24.096752, "o", " - kind\r\n type: object\r\n type: array\r\n label:\r\n type: string\r\n namespaces:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n startedAt:\r\n format: date-time\r\n type: string\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n "] +[24.096786, "o", " fetch:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n startedAt:\r\n format: date-time\r\n type: string\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n friendlyDescription:\r\n type: string\r\n observedGeneration:\r\n description: Populated based on metadata.generation when controller\r\n observes a change to the resourc"] +[24.096822, "o", "e; if this value is out of data,\r\n other status fields do not reflect latest state\r\n format: int64\r\n type: integer\r\n template:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n stderr:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n usefulErrorMessage:\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n served: true\r\n storage: true\r\n subresources"] +[24.096847, "o", ":\r\n status: {}\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.096898, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiregistration.k8s.io/v1/apiservices/v1alpha1.data.packaging.carvel.dev\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apiregistration.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"APIService\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"v1alpha1.data.packaging.carvel.dev\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m ui"] +[24.096907, "o", "d = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiregistration.k8s.io/v1\r\n kind: APIService\r\n metadata:\r\n name: v1alpha1.data.packaging.carvel.dev\r\n spec:\r\n group: data.packaging.carvel.dev\r\n groupPriorityMinimum: 100\r\n service:\r\n name: packaging-api\r\n namespace: kapp-controller\r\n version: v1alpha1\r\n versionPriority: 100\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.096989, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apps/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"Deployment\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kapp-controller\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n "] +[24.097596, "o", " \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apps/v1\r\n kind: Deployment\r\n metadata:\r\n annotations:\r\n kapp-controller.carvel.dev/version: v0.55.1\r\n kbld.k14s.io/images: |\r\n - origins:\r\n - local:\r\n path: /home/runner/work/kapp-controller/kapp-controller\r\n - git:\r\n dirty: true\r\n remoteURL: https://github.com/carvel-dev/kapp-controller\r\n sha: dd15f4ff05bc0d3a17ab739b3b86d84a1ae5d024\r\n tags:\r\n - v0.55.1\r\n url: ghcr.io/carvel-dev/kapp-controller@sha256:cf250cb1d03ba0f391fa35a9424ace7327a07bd69b41c94d62e69c58d143566e\r\n name: kapp-con"] +[24.097626, "o", "troller\r\n namespace: kapp-controller\r\n spec:\r\n replicas: 1\r\n revisionHistoryLimit: 0\r\n selector:\r\n matchLabels:\r\n app: kapp-controller\r\n template:\r\n metadata:\r\n labels:\r\n app: kapp-controller\r\n spec:\r\n containers:\r\n - args:\r\n - -packaging-global-namespace=kapp-controller-packaging-global\r\n - -enable-api-priority-and-fairness=True\r\n - -tls-cipher-suites=\r\n env:\r\n - name: KAPPCTRL_MEM_TMP_DIR\r\n value: /etc/kappctrl-mem-tmp\r\n - name: KAPPCTRL_SIDECAREXEC_SOCK\r\n value: /etc/kappctrl-mem-tmp/sidecarexec.sock\r\n - name: KAPPCTRL_SYSTEM_NAMESPACE\r\n valueFrom:\r\n fieldRef:\r\n "] +[24.097665, "o", "fieldPath: metadata.namespace\r\n - name: KAPPCTRL_API_PORT\r\n value: \"8443\"\r\n image: ghcr.io/carvel-dev/kapp-controller@sha256:cf250cb1d03ba0f391fa35a9424ace7327a07bd69b41c94d62e69c58d143566e\r\n name: kapp-controller\r\n ports:\r\n - containerPort: 8443\r\n name: api\r\n protocol: TCP\r\n - containerPort: 8080\r\n name: metrics\r\n protocol: TCP\r\n resources:\r\n requests:\r\n cpu: 120m\r\n memory: 100Mi\r\n securityContext:\r\n allowPrivilegeEscalation: false\r\n capabilities:\r\n drop:\r\n - ALL\r\n readOnlyRootFilesystem: true\r\n runAsNonRoot: true\r\n seccompProfile:\r\n "] +[24.0977, "o", " type: RuntimeDefault\r\n volumeMounts:\r\n - mountPath: /etc/kappctrl-mem-tmp\r\n name: template-fs\r\n - mountPath: /home/kapp-controller\r\n name: home\r\n - args:\r\n - --sidecarexec\r\n env:\r\n - name: KAPPCTRL_SIDECAREXEC_SOCK\r\n value: /etc/kappctrl-mem-tmp/sidecarexec.sock\r\n - name: IMGPKG_ACTIVE_KEYCHAINS\r\n value: gke,aks,ecr\r\n image: ghcr.io/carvel-dev/kapp-controller@sha256:cf250cb1d03ba0f391fa35a9424ace7327a07bd69b41c94d62e69c58d143566e\r\n name: kapp-controller-sidecarexec\r\n resources:\r\n requests:\r\n cpu: 120m\r\n memory: 100Mi\r\n securityContext:\r\n allowPrivilegeEscalation: false\r\n capabilities"] +[24.097715, "o", ":\r\n drop:\r\n - ALL\r\n readOnlyRootFilesystem: false\r\n runAsNonRoot: true\r\n seccompProfile:\r\n type: RuntimeDefault\r\n volumeMounts:\r\n - mountPath: /etc/kappctrl-mem-tmp\r\n name: template-fs\r\n - mountPath: /home/kapp-controller\r\n name: home\r\n - mountPath: /var/run/secrets/kubernetes.io/serviceaccount\r\n name: empty-sa\r\n serviceAccount: kapp-controller-sa\r\n volumes:\r\n - emptyDir:\r\n medium: Memory\r\n name: template-fs\r\n - emptyDir:\r\n medium: Memory\r\n name: home\r\n - emptyDir: {}\r\n name: empty-sa\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r"] +[24.097742, "o", "\r\n }\r\n"] +[24.097807, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/kapp-controller-cluster-role-binding\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ClusterRoleBinding\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller-cluster-role-binding\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = fals"] +[24.097838, "o", "e\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRoleBinding\r\n metadata:\r\n name: kapp-controller-cluster-role-binding\r\n roleRef:\r\n apiGroup: rbac.authorization.k8s.io\r\n kind: ClusterRole\r\n name: kapp-controller-cluster-role\r\n subjects:\r\n - kind: ServiceAccount\r\n name: kapp-controller-sa\r\n namespace: kapp-controller\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.097877, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/pkg-apiserver:system:auth-delegator\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ClusterRoleBinding\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"pkg-apiserver:system:auth-delegator\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r"] +[24.097914, "o", "\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRoleBinding\r\n metadata:\r\n name: pkg-apiserver:system:auth-delegator\r\n roleRef:\r\n apiGroup: rbac.authorization.k8s.io\r\n kind: ClusterRole\r\n name: system:auth-delegator\r\n subjects:\r\n - kind: ServiceAccount\r\n name: kapp-controller-sa\r\n namespace: kapp-controller\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.097967, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-cluster-role\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ClusterRole\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller-cluster-role\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid "] +[24.098, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRole\r\n metadata:\r\n name: kapp-controller-cluster-role\r\n rules:\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - secrets\r\n verbs:\r\n - create\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - serviceaccounts\r\n verbs:\r\n - get\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - serviceaccounts/token\r\n verbs:\r\n - create\r\n - apiGroups:\r\n - kappctrl.k14s.io\r\n "] +[24.098811, "o", " resources:\r\n - apps\r\n - apps/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - packaging.carvel.dev\r\n resources:\r\n - packageinstalls\r\n - packageinstalls/status\r\n - packageinstalls/finalizers\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - packaging.carvel.dev\r\n resources:\r\n - packagerepositories\r\n - packagerepositories/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - internal.packaging.carvel.dev\r\n resources:\r\n - internalpackagemetadatas\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - data.packaging.carvel.dev\r\n resources:\r\n - packagemetadatas\r\n - packagemetadatas/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - inter"] +[24.099014, "o", "nal.packaging.carvel.dev\r\n resources:\r\n - internalpackages\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - data.packaging.carvel.dev\r\n resources:\r\n - packages\r\n - packages/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - configmaps\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - apiregistration.k8s.io\r\n resources:\r\n - apiservices\r\n verbs:\r\n - update\r\n - get\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - namespaces\r\n verbs:\r\n - list\r\n - watch\r\n - get\r\n - update\r\n - apiGroups:\r\n - admissionregistration.k8s.io\r\n resources:\r\n - mutatingwebhookconfigurations\r\n "] +[24.099057, "o", " - validatingwebhookconfigurations\r\n - validatingadmissionpolicies\r\n - validatingadmissionpolicybindings\r\n verbs:\r\n - list\r\n - watch\r\n - apiGroups:\r\n - authorization.k8s.io\r\n resources:\r\n - subjectaccessreviews\r\n verbs:\r\n - create\r\n - apiGroups:\r\n - flowcontrol.apiserver.k8s.io\r\n resources:\r\n - prioritylevelconfigurations\r\n - flowschemas\r\n verbs:\r\n - list\r\n - watch\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.099162, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-user-role\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ClusterRole\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller-user-role\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid "] +[24.099333, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRole\r\n metadata:\r\n name: kapp-controller-user-role\r\n rules:\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - secrets\r\n verbs:\r\n - create\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - serviceaccounts\r\n verbs:\r\n - get\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - serviceaccounts/token\r\n verbs:\r\n - create\r\n - apiGroups:\r\n - kappctrl.k14s.io\r\n "] +[24.099449, "o", " resources:\r\n - apps\r\n - apps/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - packaging.carvel.dev\r\n resources:\r\n - packageinstalls\r\n - packageinstalls/status\r\n - packageinstalls/finalizers\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - configmaps\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - packaging.carvel.dev\r\n resources:\r\n - packagerepositories\r\n - packagerepositories/status\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - internal.packaging.carvel.dev\r\n resources:\r\n - internalpackagemetadatas\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n "] +[24.09946, "o", " - data.packaging.carvel.dev\r\n resources:\r\n - packagemetadatas\r\n - packagemetadatas/status\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - internal.packaging.carvel.dev\r\n resources:\r\n - internalpackages\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - data.packaging.carvel.dev\r\n resources:\r\n - packages\r\n - packages/status\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[24.099513, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/namespaces/kube-system/rolebindings/pkgserver-auth-reader\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"RoleBinding\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"pkgserver-auth-reader\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid"] +[24.099616, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: RoleBinding\r\n metadata:\r\n name: pkgserver-auth-reader\r\n namespace: kube-system\r\n roleRef:\r\n apiGroup: rbac.authorization.k8s.io\r\n kind: Role\r\n name: extension-apiserver-authentication-reader\r\n subjects:\r\n - kind: ServiceAccount\r\n name: kapp-controller-sa\r\n namespace: kapp-controller\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n\r\n\u001b[1m # module.educates[0].kubectl_manifest.namespace_app_installs\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"namespace_app_installs\" {\r\n \u001b["] +[24.099713, "o", "32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = true\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"Namespace\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n ap"] +[24.099759, "o", "iVersion: v1\r\n kind: Namespace\r\n metadata:\r\n name: package-installs\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for {\r\n \u001b[32m+\u001b[0m\u001b[0m field {\r\n \u001b[32m+\u001b[0m\u001b[0m key = \"status.phase\"\r\n \u001b[32m+\u001b[0m\u001b[0m value = \"Active\"\r\n \u001b[32m+\u001b[0m\u001b[0m value_type = \"eq\"\r\n }\r\n }\r\n }\r\n\r\n\u001b[1m # module.educates[0].kubectl_manifest.serviceaccount_app_installs\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"serviceaccount_app_installs\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = true\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ServiceAccount\"\r"] +[24.099837, "o", "\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: ServiceAccount\r\n metadata:\r\n name: package-installs\r\n namespace: package-installs\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n\r\n"] +[24.099849, "o", "\u001b[1m # module.educates[0].time_sleep.k8s_app_rbac\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"time_sleep\" \"k8s_app_rbac\" {\r\n \u001b[32m+\u001b[0m\u001b[0m create_duration = \"1s\"\r\n \u001b[32m+\u001b[0m\u001b[0m destroy_duration = \"1s\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n }\r\n\r\n\u001b[1m # module.educates[0].time_sleep.wait_for_kapp_controller\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"time_sleep\" \"wait_for_kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m create_duration = \"1s\"\r\n \u001b[32m+\u001b[0m\u001b[0m destroy_duration = \"1s\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n }\r\n\r\n\u001b[1m # module.gke_for_educates.google_project_iam_binding.cert-manager-and-external-dns-as-dns-admin\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_project_iam_binding\" \"cert-manager-and-external-dns-as-dns-admin\" {\r\n \u001b[32m+\u001b[0m\u001b[0m etag = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m members = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"serviceAccount:d"] +[24.099948, "o", "emo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"serviceAccount:demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\",\r\n ]\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m role = \"roles/dns.admin\"\r\n }\r\n\r\n\u001b[1m # module.gke_for_educates.google_service_account.cert-manager-gsa\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_service_account\" \"cert-manager-gsa\" {\r\n \u001b[32m+\u001b[0m\u001b[0m account_id = \"demo-cluster-cert-manager\"\r\n \u001b[32m+\u001b[0m\u001b[0m disabled = false\r\n \u001b[32m+\u001b[0m\u001b[0m display_name = \"Service Account created by TF for cert-manager for cluster demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m email = \"demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m member = \"serviceAccount:demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m name = (known after a"] +[24.099991, "o", "pply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m unique_id = (known after apply)\r\n }\r\n"] +[24.100115, "o", "\r\n\u001b[1m # module.gke_for_educates.google_service_account.default\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_service_account\" \"default\" {\r\n \u001b[32m+\u001b[0m\u001b[0m account_id = \"demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m disabled = false\r\n \u001b[32m+\u001b[0m\u001b[0m display_name = \"Service Account created by TF for cluster demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m email = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m member = \"serviceAccount:demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m name = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m unique_id = (known after apply)\r\n }\r\n\r\n\u001b[1m # module.gke_for_educates.google_service_account.external-dns-gsa\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_service_account\" \"external-dns-gsa\" {\r\n \u001b[32m+\u001b[0m\u001b[0m account_id = \"demo-cluster-external-dns\"\r\n \u001b[3"] +[24.10014, "o", "2m+\u001b[0m\u001b[0m disabled = false\r\n \u001b[32m+\u001b[0m\u001b[0m display_name = \"Service Account created by TF for external-dns for cluster demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m email = \"demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m member = \"serviceAccount:demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m name = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m unique_id = (known after apply)\r\n }\r\n\r\n\u001b[1m # module.gke_for_educates.google_service_account_iam_binding.cert-manager-link-ksa-to-gsa\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_service_account_iam_binding\" \"cert-manager-link-ksa-to-gsa\" {\r\n \u001b[32m+\u001b[0m\u001b[0m etag = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m members = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"s"] +[24.100194, "o", "erviceAccount:educates-testing.svc.id.goog[cert-manager/cert-manager]\",\r\n ]\r\n \u001b[32m+\u001b[0m\u001b[0m role = \"roles/iam.workloadIdentityUser\"\r\n \u001b[32m+\u001b[0m\u001b[0m service_account_id = (known after apply)\r\n }\r\n"] +[24.100335, "o", "\r\n\u001b[1m # module.gke_for_educates.google_service_account_iam_binding.external-dns-link-ksa-to-gsa\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_service_account_iam_binding\" \"external-dns-link-ksa-to-gsa\" {\r\n \u001b[32m+\u001b[0m\u001b[0m etag = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m members = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"serviceAccount:educates-testing.svc.id.goog[external-dns/external-dns]\",\r\n ]\r\n \u001b[32m+\u001b[0m\u001b[0m role = \"roles/iam.workloadIdentityUser\"\r\n \u001b[32m+\u001b[0m\u001b[0m service_account_id = (known after apply)\r\n }\r\n"] +[24.1006, "o", "\r\n\u001b[1m # module.gke_for_educates.local_file.kubeconfig\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"local_file\" \"kubeconfig\" {\r\n \u001b[32m+\u001b[0m\u001b[0m content = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_base64sha256 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_base64sha512 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_md5 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_sha1 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_sha256 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_sha512 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m directory_permission = \"0777\"\r\n \u001b[32m+\u001b[0m\u001b[0m file_permission = \"0777\"\r\n \u001b[32m+\u001b[0m\u001b[0m filename = \"./kubeconfig-demo-cluster.yaml\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n }\r\n"] +[24.100671, "o", "\r\n\u001b[1m # module.token-sa-kubeconfig.data.kubernetes_secret.automation\u001b[0m will be read during apply\r\n # (depends on a resource or a module with changes pending)\r\n\u001b[0m \u001b[36m<=\u001b[0m\u001b[0m data \"kubernetes_secret\" \"automation\" {\r\n \u001b[32m+\u001b[0m\u001b[0m data = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m immutable = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m type = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m metadata {\r\n \u001b[32m+\u001b[0m\u001b[0m generation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"automation\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n \u001b[32m+\u001b[0m\u001b[0m resource_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n }\r\n }\r\n"] +[24.100752, "o", "\r\n\u001b[1m # module.token-sa-kubeconfig.kubernetes_cluster_role_binding.automation[0]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubernetes_cluster_role_binding\" \"automation\" {\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m metadata {\r\n \u001b[32m+\u001b[0m\u001b[0m generation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"automation\"\r\n \u001b[32m+\u001b[0m\u001b[0m resource_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m role_ref {\r\n \u001b[32m+\u001b[0m\u001b[0m api_group = \"rbac.authorization.k8s.io\"\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ClusterRole\"\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"cluster-admin\"\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m subject {\r\n \u001b[32m+\u001b[0m\u001b[0m api_group = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ServiceAccount\"\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"automation\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n }\r\n }\r\n\r\n\u001b[1m "] +[24.100783, "o", "# module.token-sa-kubeconfig.kubernetes_secret.automation\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubernetes_secret\" \"automation\" {\r\n \u001b[32m+\u001b[0m\u001b[0m binary_data_wo = (write-only attribute)\r\n \u001b[32m+\u001b[0m\u001b[0m data = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m data_wo = (write-only attribute)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m type = \"kubernetes.io/service-account-token\"\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_service_account_token = true\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m metadata {\r\n \u001b[32m+\u001b[0m\u001b[0m annotations = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"kubernetes.io/service-account.name\" = \"automation\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m generation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"automation\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n \u001b[32m+\u001b[0m\u001b[0m resource_version = (known after appl"] +[24.100843, "o", "y)\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n }\r\n }\r\n"] +[24.100923, "o", "\r\n\u001b[1m # module.token-sa-kubeconfig.kubernetes_service_account.automation[0]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubernetes_service_account\" \"automation\" {\r\n \u001b[32m+\u001b[0m\u001b[0m automount_service_account_token = true\r\n \u001b[32m+\u001b[0m\u001b[0m default_secret_name = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m metadata {\r\n \u001b[32m+\u001b[0m\u001b[0m generation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"automation\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n \u001b[32m+\u001b[0m\u001b[0m resource_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n }\r\n }\r\n"] +[24.101055, "o", "\r\n\u001b[1m # module.token-sa-kubeconfig.local_file.kubeconfig\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"local_file\" \"kubeconfig\" {\r\n \u001b[32m+\u001b[0m\u001b[0m content = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m content_base64sha256 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_base64sha512 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_md5 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_sha1 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_sha256 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_sha512 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m directory_permission = \"0777\"\r\n \u001b[32m+\u001b[0m\u001b[0m file_permission = \"0777\"\r\n \u001b[32m+\u001b[0m\u001b[0m filename = \"./kubeconfig-demo-cluster-token.yaml\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n }\r\n"] +[24.101486, "o", "\r\n\u001b[1m # module.gke_for_educates.module.gke.google_container_cluster.primary\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_container_cluster\" \"primary\" {\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_ipv4_cidr = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m datapath_provider = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m default_max_pods_per_node = 110\r\n \u001b[32m+\u001b[0m\u001b[0m deletion_protection = false\r\n \u001b[32m+\u001b[0m\u001b[0m disable_l4_lb_firewall_reconciliation = false\r\n \u001b[32m+\u001b[0m\u001b[0m effective_labels = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"goog-terraform-provisioned\" = \"true\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m enable_cilium_clusterwide_network_policy = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_fqdn_network_policy = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_intranode_visibility = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_kubernetes_alpha = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_l4_ilb_subsetting "] +[24.101545, "o", " = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_legacy_abac = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_multi_networking = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_shielded_nodes = true\r\n \u001b[32m+\u001b[0m\u001b[0m enable_tpu = false\r\n \u001b[32m+\u001b[0m\u001b[0m endpoint = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m label_fingerprint = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m location = \"us-central1\"\r\n \u001b[32m+\u001b[0m\u001b[0m logging_service = \"logging.googleapis.com/kubernetes\"\r\n \u001b[32m+\u001b[0m\u001b[0m master_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m min_master_version = \"1.32.4-gke.1415000\"\r\n \u001b[32m+\u001b[0m\u001b[0m monitoring_service = \"monitoring.googleapis.com/kubernetes\"\r\n \u001b["] +[24.101568, "o", "32m+\u001b[0m\u001b[0m name = \"demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m network = \"projects/educates-testing/global/networks/demo-cluster-vpc\"\r\n \u001b[32m+\u001b[0m\u001b[0m networking_mode = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_locations = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"us-central1-a\",\r\n ]\r\n \u001b[32m+\u001b[0m\u001b[0m node_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m operation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m private_ipv6_google_access = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m remove_default_node_pool = false\r\n \u001b[32m+\u001b[0m\u001b[0m self_link = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m services_ipv4_cidr = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m subnetwork "] +[24.101609, "o", " = \"projects/educates-testing/regions/us-central1/subnetworks/demo-cluster-subnet\"\r\n \u001b[32m+\u001b[0m\u001b[0m terraform_labels = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"goog-terraform-provisioned\" = \"true\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m tpu_ipv4_cidr_block = (known after apply)\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m addons_config {\r\n \u001b[32m+\u001b[0m\u001b[0m cloudrun_config (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m config_connector_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m dns_cache_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m gce_persistent_disk_csi_driver_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = true\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m gcp_filestore_csi_driver_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m gcs_fuse_csi_driver_config (known after appl"] +[24.101648, "o", "y)\r\n \u001b[32m+\u001b[0m\u001b[0m gke_backup_agent_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m horizontal_pod_autoscaling {\r\n \u001b[32m+\u001b[0m\u001b[0m disabled = false\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m http_load_balancing {\r\n \u001b[32m+\u001b[0m\u001b[0m disabled = true\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m network_policy_config {\r\n \u001b[32m+\u001b[0m\u001b[0m disabled = true\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m parallelstore_csi_driver_config (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m ray_operator_config (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m stateful_ha_config (known after apply)\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m authenticator_groups_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_autoscaling {\r\n \u001b[32m+\u001b[0m\u001b[0m auto_provisioning_locations = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m autoscaling_profile = \"BALANCED\"\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m "] +[24.101678, "o", "auto_provisioning_defaults (known after apply)\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m confidential_nodes (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m control_plane_endpoints_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m cost_management_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m database_encryption {\r\n \u001b[32m+\u001b[0m\u001b[0m state = \"DECRYPTED\"\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m default_snat_status {\r\n \u001b[32m+\u001b[0m\u001b[0m disabled = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m enterprise_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m gateway_api_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m identity_service_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m ip_allocation_policy {\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_ipv4_cidr_block = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_secondary_range_name = \"range-demo-cluster-pods\"\r\n \u001b[32m+\u001b[0m\u001b[0m services_ipv4_cidr_block = ("] +[24.101715, "o", "known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m services_secondary_range_name = \"range-demo-cluster-services\"\r\n \u001b[32m+\u001b[0m\u001b[0m stack_type = \"IPV4\"\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m pod_cidr_overprovision_config (known after apply)\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m logging_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m maintenance_policy {\r\n \u001b[32m+\u001b[0m\u001b[0m daily_maintenance_window {\r\n \u001b[32m+\u001b[0m\u001b[0m duration = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m start_time = \"05:00\"\r\n }\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m master_auth {\r\n \u001b[32m+\u001b[0m\u001b[0m client_certificate = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m client_key = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_ca_certificate = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m client_certificate_config {\r\n \u001b[32m+\u001b[0m\u001b[0m issue_client_certificate = false\r\n }\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m master_authorized_networks_config (known after a"] +[24.101735, "o", "pply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m mesh_certificates {\r\n \u001b[32m+\u001b[0m\u001b[0m enable_certificates = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m monitoring_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m network_policy {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m node_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m node_pool {\r\n \u001b[32m+\u001b[0m\u001b[0m initial_node_count = 0\r\n \u001b[32m+\u001b[0m\u001b[0m instance_group_urls = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m managed_instance_group_urls = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m max_pods_per_node = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"default-pool\"\r\n \u001b[32m+\u001b[0m\u001b[0m name_prefix = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_count = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_locations = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m version = (known after apply)\r"] +[24.101781, "o", "\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m management {\r\n \u001b[32m+\u001b[0m\u001b[0m auto_repair = true\r\n \u001b[32m+\u001b[0m\u001b[0m auto_upgrade = true\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m network_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m node_config {\r\n \u001b[32m+\u001b[0m\u001b[0m disk_size_gb = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m disk_type = \"pd-balanced\"\r\n \u001b[32m+\u001b[0m\u001b[0m effective_taints = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_confidential_storage = false\r\n \u001b[32m+\u001b[0m\u001b[0m image_type = \"COS_CONTAINERD\"\r\n \u001b[32m+\u001b[0m\u001b[0m labels = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m local_ssd_count = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m logging_variant = \"DEFAULT\"\r\n \u001b[32m+\u001b[0m\u001b[0m machine_type = \"e2-medium\"\r\n \u001b[32m+\u001b[0m\u001b[0m metadata = (known after apply)\r\n "] +[24.101815, "o", " \u001b[32m+\u001b[0m\u001b[0m min_cpu_platform = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m oauth_scopes = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m preemptible = false\r\n \u001b[32m+\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m spot = false\r\n \u001b[32m+\u001b[0m\u001b[0m tags = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"gke-demo-cluster\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"gke-demo-cluster-default-pool\",\r\n ]\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m confidential_nodes (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m gcfs_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m guest_accelerator (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m kubelet_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m shielded_instance_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enable_integrity_monitoring = true\r\n "] +[24.101854, "o", " \u001b[32m+\u001b[0m\u001b[0m enable_secure_boot = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m windows_node_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m workload_metadata_config {\r\n \u001b[32m+\u001b[0m\u001b[0m mode = \"GKE_METADATA\"\r\n }\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m upgrade_settings (known after apply)\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m node_pool_auto_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m node_pool_defaults {\r\n \u001b[32m+\u001b[0m\u001b[0m node_config_defaults {\r\n \u001b[32m+\u001b[0m\u001b[0m insecure_kubelet_readonly_port_enabled = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m logging_variant = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m gcfs_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n }\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m notification_config {\r\n \u001b[32m+\u001b[0m\u001b[0m pubsub {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n \u001b[90m# (1 unchanged attribut"] +[24.101862, "o", "e hidden)\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m release_channel {\r\n \u001b[32m+\u001b[0m\u001b[0m channel = \"REGULAR\"\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m security_posture_config {\r\n \u001b[32m+\u001b[0m\u001b[0m mode = \"DISABLED\"\r\n \u001b[32m+\u001b[0m\u001b[0m vulnerability_mode = \"VULNERABILITY_DISABLED\"\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m service_external_ips_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m timeouts {\r\n \u001b[32m+\u001b[0m\u001b[0m create = \"45m\"\r\n \u001b[32m+\u001b[0m\u001b[0m delete = \"45m\"\r\n \u001b[32m+\u001b[0m\u001b[0m update = \"45m\"\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m vertical_pod_autoscaling {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m workload_identity_config {\r\n \u001b[32m+\u001b[0m\u001b[0m workload_pool = \"educates-testing.svc.id.goog\"\r\n }\r\n }\r\n"] +[24.102066, "o", "\r\n\u001b[1m # module.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_container_node_pool\" \"pools\" {\r\n \u001b[32m+\u001b[0m\u001b[0m cluster = \"demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m initial_node_count = 3\r\n \u001b[32m+\u001b[0m\u001b[0m instance_group_urls = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m location = \"us-central1\"\r\n \u001b[32m+\u001b[0m\u001b[0m managed_instance_group_urls = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m max_pods_per_node = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"node-pool-workshops\"\r\n \u001b[32m+\u001b[0m\u001b[0m name_prefix = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_count = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_locations = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m operation = (known after app"] +[24.102101, "o", "ly)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m version = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m autoscaling {\r\n \u001b[32m+\u001b[0m\u001b[0m location_policy = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m max_node_count = 3\r\n \u001b[32m+\u001b[0m\u001b[0m min_node_count = 3\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m management {\r\n \u001b[32m+\u001b[0m\u001b[0m auto_repair = true\r\n \u001b[32m+\u001b[0m\u001b[0m auto_upgrade = true\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m network_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m node_config {\r\n \u001b[32m+\u001b[0m\u001b[0m disk_size_gb = 100\r\n \u001b[32m+\u001b[0m\u001b[0m disk_type = \"pd-balanced\"\r\n \u001b[32m+\u001b[0m\u001b[0m effective_taints = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_confidential_storage = false\r\n \u001b[32m+\u001b[0m\u001b[0m image_type = \"COS_CONTAINERD\"\r\n \u001b[32m+\u001b[0m\u001b[0m labels = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"clust"] +[24.102741, "o", "er_name\" = \"demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m \"node_pool\" = \"node-pool-workshops\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m local_ssd_count = 0\r\n \u001b[32m+\u001b[0m\u001b[0m logging_variant = \"DEFAULT\"\r\n \u001b[32m+\u001b[0m\u001b[0m machine_type = \"e2-medium\"\r\n \u001b[32m+\u001b[0m\u001b[0m metadata = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"cluster_name\" = \"demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m \"disable-legacy-endpoints\" = \"true\"\r\n \u001b[32m+\u001b[0m\u001b[0m \"node_pool\" = \"node-pool-workshops\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m min_cpu_platform = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m oauth_scopes = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/cloud-platform\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/devstorage.read_only\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/logging.write\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.google"] +[24.102936, "o", "apis.com/auth/monitoring\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/service.management.readonly\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/servicecontrol\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/trace.append\",\r\n ]\r\n \u001b[32m+\u001b[0m\u001b[0m preemptible = false\r\n \u001b[32m+\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m spot = false\r\n \u001b[32m+\u001b[0m\u001b[0m tags = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"gke-demo-cluster\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"gke-demo-cluster-node-pool-workshops\",\r\n ]\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m confidential_nodes (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m gcfs_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m guest_accelerator (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m kubelet_config (known "] +[24.103087, "o", "after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m shielded_instance_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enable_integrity_monitoring = true\r\n \u001b[32m+\u001b[0m\u001b[0m enable_secure_boot = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m windows_node_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m workload_metadata_config {\r\n \u001b[32m+\u001b[0m\u001b[0m mode = \"GKE_METADATA\"\r\n }\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m timeouts {\r\n \u001b[32m+\u001b[0m\u001b[0m create = \"45m\"\r\n \u001b[32m+\u001b[0m\u001b[0m delete = \"45m\"\r\n \u001b[32m+\u001b[0m\u001b[0m update = \"45m\"\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m upgrade_settings {\r\n \u001b[32m+\u001b[0m\u001b[0m max_surge = 1\r\n \u001b[32m+\u001b[0m\u001b[0m max_unavailable = 0\r\n \u001b[32m+\u001b[0m\u001b[0m strategy = \"SURGE\"\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m blue_green_settings (known after apply)\r\n }\r\n }\r\n\r\n\u001b[1m # module.gke_for_educates.module.gke.kubernetes_config_map.ip_masq_agent[0]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubernetes_config_map\" \"ip_mas"] +[24.103895, "o", "q_agent\" {\r\n \u001b[32m+\u001b[0m\u001b[0m data = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"config\" = <<-EOT\r\n nonMasqueradeCIDRs:\r\n - 10.0.0.0/8\r\n - 172.16.0.0/12\r\n - 192.168.0.0/16\r\n resyncInterval: 60s\r\n masqLinkLocal: false\r\n EOT\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m metadata {\r\n \u001b[32m+\u001b[0m\u001b[0m generation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m labels = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"maintained_by\" = \"terraform\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"ip-masq-agent\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n \u001b[32m+\u001b[0m\u001b[0m resource_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n }\r\n }\r\n"] +[24.103963, "o", "\r\n\u001b[1m # module.gke_for_educates.module.gke_auth.data.google_container_cluster.gke_cluster\u001b[0m will be read during apply\r\n # (config refers to values not yet known)\r\n\u001b[0m \u001b[36m<=\u001b[0m\u001b[0m data \"google_container_cluster\" \"gke_cluster\" {\r\n \u001b[32m+\u001b[0m\u001b[0m addons_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m allow_net_admin = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m authenticator_groups_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m binary_authorization = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_autoscaling = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_ipv4_cidr = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m confidential_nodes = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m control_plane_endpoints_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m cost_management_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m "] +[24.103981, "o", "database_encryption = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m datapath_provider = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m default_max_pods_per_node = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m default_snat_status = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m deletion_protection = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m description = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m disable_l4_lb_firewall_reconciliation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m dns_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m effective_labels = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_autopilot = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_cilium_clusterwide_network_policy = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_fqdn_network_policy = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enab"] +[24.104069, "o", "le_intranode_visibility = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_k8s_beta_apis = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_kubernetes_alpha = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_l4_ilb_subsetting = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_legacy_abac = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_multi_networking = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_shielded_nodes = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_tpu = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m endpoint = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enterprise_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m fleet = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m gateway_api_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id "] +[24.104113, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m identity_service_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m initial_node_count = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m ip_allocation_policy = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m label_fingerprint = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m location = \"us-central1\"\r\n \u001b[32m+\u001b[0m\u001b[0m logging_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m logging_service = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m maintenance_policy = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m master_auth = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m master_authorized_networks_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m master_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m mesh_certificates "] +[24.104147, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m min_master_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m monitoring_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m monitoring_service = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m network = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m network_policy = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m networking_mode = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_locations = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_pool = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_pool_auto_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_pool_defaults "] +[24.104167, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m notification_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m operation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m private_cluster_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m private_ipv6_google_access = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m release_channel = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m remove_default_node_pool = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m resource_labels = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m resource_usage_export_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m secret_manager_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m security_posture_config "] +[24.104253, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m self_link = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m service_external_ips_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m services_ipv4_cidr = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m subnetwork = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m terraform_labels = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m tpu_ipv4_cidr_block = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m user_managed_keys_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m vertical_pod_autoscaling = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m workload_identity_config = (known after apply)\r\n }\r\n"] +[24.10429, "o", "\r\n\u001b[1m # module.gke_for_educates.module.vpc.module.subnets.google_compute_subnetwork.subnetwork[\"us-central1/demo-cluster-subnet\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_compute_subnetwork\" \"subnetwork\" {\r\n \u001b[32m+\u001b[0m\u001b[0m creation_timestamp = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_flow_logs = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m external_ipv6_prefix = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m fingerprint = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m gateway_address = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m internal_ipv6_prefix = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m ip_cidr_range = \"10.0.0.0/24\"\r\n \u001b[32m+\u001b[0m\u001b[0m ipv6_cidr_range = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m ipv6_gce_endpoint = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"demo-cluster-subnet\"\r\n \u001b[32m+\u001b[0m\u001b[0m"] +[24.1043, "o", " network = \"demo-cluster-vpc\"\r\n \u001b[32m+\u001b[0m\u001b[0m private_ip_google_access = true\r\n \u001b[32m+\u001b[0m\u001b[0m private_ipv6_google_access = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m purpose = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m region = \"us-central1\"\r\n \u001b[32m+\u001b[0m\u001b[0m self_link = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m stack_type = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m state = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m subnetwork_id = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m secondary_ip_range {\r\n \u001b[32m+\u001b[0m\u001b[0m ip_cidr_range = \"10.1.0.0/16\"\r\n \u001b[32m+\u001b[0m\u001b[0m range_name = \"range-demo-cluster-pods\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m secondary_ip_range {\r\n \u001b[32m+\u001b[0m\u001b[0m ip_cidr_range = \"10.2.0.0/20\"\r\n \u001b[32m+\u001b[0m\u001b[0m range_name = \"range-demo-cluster-services\"\r\n "] +[24.104395, "o", " }\r\n }\r\n"] +[24.104463, "o", "\r\n\u001b[1m # module.gke_for_educates.module.vpc.module.vpc.google_compute_network.network\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_compute_network\" \"network\" {\r\n \u001b[32m+\u001b[0m\u001b[0m auto_create_subnetworks = false\r\n \u001b[32m+\u001b[0m\u001b[0m bgp_always_compare_med = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m bgp_best_path_selection_mode = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m bgp_inter_region_cost = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m delete_default_routes_on_create = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_ula_internal_ipv6 = false\r\n \u001b[32m+\u001b[0m\u001b[0m gateway_ipv4 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m internal_ipv6_range = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m mtu = 0\r\n \u001b[32m+\u001b[0m\u001b[0m name "] +[24.104492, "o", " = \"demo-cluster-vpc\"\r\n \u001b[32m+\u001b[0m\u001b[0m network_firewall_policy_enforcement_order = \"AFTER_CLASSIC_FIREWALL\"\r\n \u001b[32m+\u001b[0m\u001b[0m network_id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m numeric_id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m routing_mode = \"REGIONAL\"\r\n \u001b[32m+\u001b[0m\u001b[0m self_link = (known after apply)\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n\u001b[1mPlan:\u001b[0m 39 to add, 0 to change, 0 to destroy.\r\n\u001b[0m\r\nChanges to Outputs:\r\n \u001b[32m+\u001b[0m\u001b[0m educates = {\r\n \u001b[32m+\u001b[0m\u001b[0m educates_installer_version = \"ghcr.io/educates/educates-installer:3.3.2\"\r\n \u001b[32m+\u001b[0m\u001b[0m is_kapp_controller_installed = true\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m gke = {\r\n \u001b[32m+\u001b[0m\u001b[0m certmanager_service_account = \"demo-cluster-cert-manager@educates"] +[24.104548, "o", "-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_name = \"demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m externaldns_service_account = \"demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m kubernetes_version = \"1.32.4-gke.1415000\"\r\n \u001b[32m+\u001b[0m\u001b[0m network_uri = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_pools = [\r\n \u001b[32m+\u001b[0m\u001b[0m {\r\n \u001b[32m+\u001b[0m\u001b[0m auto_repair = true\r\n \u001b[32m+\u001b[0m\u001b[0m auto_upgrade = true\r\n \u001b[32m+\u001b[0m\u001b[0m disk_size_gb = 100\r\n \u001b[32m+\u001b[0m\u001b[0m disk_type = \"pd-balanced\"\r\n \u001b[32m+\u001b[0m\u001b[0m image_type = \"COS_CONTAINERD\"\r\n \u001b[32m+\u001b[0m\u001b[0m initial_node_count = 3\r\n \u001b[32m+\u001b[0m\u001b[0m machine_type = \"e2-medium\"\r\n \u001b[32m+\u001b[0m\u001b[0m max_count = 3\r\n \u001b[32m+\u001b[0m\u001b[0m min_count = 3\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"n"] +[24.104569, "o", "ode-pool-workshops\"\r\n \u001b[32m+\u001b[0m\u001b[0m preemptible = false\r\n \u001b[32m+\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n },\r\n ]\r\n \u001b[32m+\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m kubernetes = {\r\n \u001b[32m+\u001b[0m\u001b[0m host = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kubeconfig_file = \"./kubeconfig-demo-cluster.yaml\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m token-sa-kubeconfig = {\r\n \u001b[32m+\u001b[0m\u001b[0m token-sa-kubeconfig = {\r\n \u001b[32m+\u001b[0m\u001b[0m kubeconfig_file = \"./kubeconfig-demo-cluster-token.yaml\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n \u001b[32m+\u001b[0m\u001b[0m service_account = \"automation\"\r\n }\r\n }\r\n"] +[24.776873, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.vpc.google_compute_network.network: Creating...\u001b[0m\u001b[0m\r\n"] +[24.807818, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.external-dns-gsa: Creating...\u001b[0m\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.default: Creating...\u001b[0m\u001b[0m\r\n"] +[24.808077, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.cert-manager-gsa: Creating...\u001b[0m\u001b[0m\r\n"] +[34.778066, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.vpc.google_compute_network.network: Still creating... [00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[34.807663, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.external-dns-gsa: Still creating... [00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[34.808173, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.default: Still creating... [00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[34.808285, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.cert-manager-gsa: Still creating... [00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[36.266866, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.cert-manager-gsa: Creation complete after 12s [id=projects/educates-testing/serviceAccounts/demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com]\u001b[0m\r\n"] +[36.283592, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account_iam_binding.cert-manager-link-ksa-to-gsa: Creating...\u001b[0m\u001b[0m\r\n"] +[36.752191, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.external-dns-gsa: Creation complete after 12s [id=projects/educates-testing/serviceAccounts/demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com]\u001b[0m\r\n"] +[36.783533, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_project_iam_binding.cert-manager-and-external-dns-as-dns-admin: Creating...\u001b[0m\u001b[0m\r\n"] +[36.783691, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account_iam_binding.external-dns-link-ksa-to-gsa: Creating...\u001b[0m\u001b[0m\r\n"] +[37.624319, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.default: Creation complete after 13s [id=projects/educates-testing/serviceAccounts/demo-cluster@educates-testing.iam.gserviceaccount.com]\u001b[0m\r\n"] +[40.116362, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account_iam_binding.cert-manager-link-ksa-to-gsa: Creation complete after 4s [id=projects/educates-testing/serviceAccounts/demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com/roles/iam.workloadIdentityUser]\u001b[0m\r\n"] +[40.502468, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account_iam_binding.external-dns-link-ksa-to-gsa: Creation complete after 4s [id=projects/educates-testing/serviceAccounts/demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com/roles/iam.workloadIdentityUser]\u001b[0m\r\n"] +[44.308302, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_project_iam_binding.cert-manager-and-external-dns-as-dns-admin: Creation complete after 8s [id=educates-testing/roles/dns.admin]\u001b[0m\r\n"] +[44.779203, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.vpc.google_compute_network.network: Still creating... [00m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[46.562007, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.vpc.google_compute_network.network: Creation complete after 22s [id=projects/educates-testing/global/networks/demo-cluster-vpc]\u001b[0m\r\n"] +[46.594437, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.subnets.google_compute_subnetwork.subnetwork[\"us-central1/demo-cluster-subnet\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[56.595256, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.subnets.google_compute_subnetwork.subnetwork[\"us-central1/demo-cluster-subnet\"]: Still creating... [00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[66.59595, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.subnets.google_compute_subnetwork.subnetwork[\"us-central1/demo-cluster-subnet\"]: Still creating... [00m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[76.596455, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.subnets.google_compute_subnetwork.subnetwork[\"us-central1/demo-cluster-subnet\"]: Still creating... [00m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[78.061566, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.subnets.google_compute_subnetwork.subnetwork[\"us-central1/demo-cluster-subnet\"]: Creation complete after 32s [id=projects/educates-testing/regions/us-central1/subnetworks/demo-cluster-subnet]\u001b[0m\r\n"] +[78.113033, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Creating...\u001b[0m\u001b[0m\r\n"] +[88.113527, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[98.114272, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [00m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[108.115417, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [00m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[118.116907, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [00m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[128.117972, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [00m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[138.119338, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [01m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[148.120556, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [01m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[158.121909, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [01m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[168.123175, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [01m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[178.124379, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [01m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[188.125523, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [01m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[198.126715, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [02m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[208.127505, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [02m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[218.128142, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [02m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[228.129184, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [02m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[238.129595, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [02m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[248.13073, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [02m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[258.131892, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [03m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[268.132989, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [03m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[278.134169, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [03m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[288.135002, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [03m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[298.135941, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [03m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[308.136677, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [03m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[318.137246, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [04m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[328.137707, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [04m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[338.137932, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [04m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[348.138574, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [04m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[358.139785, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [04m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[368.141224, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [04m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[378.14153, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still creating... [05m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[387.747923, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Creation complete after 5m9s [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster]\u001b[0m\r\n"] +[387.788951, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[397.789549, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still creating... [00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[407.78994, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still creating... [00m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[417.790683, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still creating... [00m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[427.792321, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still creating... [00m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[437.793261, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still creating... [00m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[447.793517, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still creating... [01m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[457.794013, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still creating... [01m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[467.794427, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still creating... [01m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[477.795399, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still creating... [01m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[487.796594, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still creating... [01m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[497.796856, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still creating... [01m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[500.862966, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Creation complete after 1m54s [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster/nodePools/node-pool-workshops]\u001b[0m\r\n"] +[501.170474, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke_auth.data.google_container_cluster.gke_cluster: Reading...\u001b[0m\u001b[0m\r\n"] +[501.171576, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.kubernetes_config_map.ip_masq_agent[0]: Creating...\u001b[0m\u001b[0m\r\n"] +[501.175724, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_service_account.automation[0]: Creating...\u001b[0m\u001b[0m\r\n"] +[501.18402, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/pkg-apiserver:system:auth-delegator\"]: Creating...\u001b[0m\u001b[0m\r\n\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/services/packaging-api\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[501.184353, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-cluster-role\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[501.184426, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[501.184716, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackagemetadatas.internal.packaging.carvel.dev\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[501.190664, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackages.internal.packaging.carvel.dev\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[501.1919, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/apps.kappctrl.k14s.io\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[501.664917, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.kubernetes_config_map.ip_masq_agent[0]: Creation complete after 0s [id=kube-system/ip-masq-agent]\u001b[0m\r\n"] +[501.701472, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packagerepositories.packaging.carvel.dev\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[501.910919, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_service_account.automation[0]: Creation complete after 1s [id=kube-system/automation]\u001b[0m\r\n"] +[501.936197, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke_auth.data.google_container_cluster.gke_cluster: Read complete after 1s [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster]\u001b[0m\r\n"] +[501.964707, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/serviceaccounts/kapp-controller-sa\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[501.966, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-user-role\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[502.205634, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackagemetadatas.internal.packaging.carvel.dev\"]: Creation complete after 1s [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackagemetadatas.internal.packaging.carvel.dev]\u001b[0m\r\n"] +[502.232376, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/kapp-controller-cluster-role-binding\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[502.314284, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackages.internal.packaging.carvel.dev\"]: Creation complete after 1s [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackages.internal.packaging.carvel.dev]\u001b[0m\r\n"] +[502.345198, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller-packaging-global\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[502.583914, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-cluster-role\"]: Creation complete after 1s [id=/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-cluster-role]\u001b[0m\r\n"] +[502.618347, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/pkg-apiserver:system:auth-delegator\"]: Creation complete after 1s [id=/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/pkg-apiserver:system:auth-delegator]\u001b[0m\r\n"] +[502.619316, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packageinstalls.packaging.carvel.dev\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[502.648723, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/namespaces/kube-system/rolebindings/pkgserver-auth-reader\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[502.677231, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packagerepositories.packaging.carvel.dev\"]: Creation complete after 1s [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packagerepositories.packaging.carvel.dev]\u001b[0m\r\n"] +[502.704788, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiregistration.k8s.io/v1/apiservices/v1alpha1.data.packaging.carvel.dev\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[502.705333, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-user-role\"]: Creation complete after 0s [id=/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-user-role]\u001b[0m\r\n"] +[502.730031, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/apps.kappctrl.k14s.io\"]: Creation complete after 1s [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/apps.kappctrl.k14s.io]\u001b[0m\r\n"] +[502.731328, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller\"]: Creating...\u001b[0m\u001b[0m\r\n"] +[502.760747, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_cluster_role_binding.automation[0]: Creating...\u001b[0m\u001b[0m\r\n"] +[502.839151, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/kapp-controller-cluster-role-binding\"]: Creation complete after 0s [id=/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/kapp-controller-cluster-role-binding]\u001b[0m\r\n"] +[502.881979, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.local_file.kubeconfig: Creating...\u001b[0m\u001b[0m\r\n"] +[502.883612, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.local_file.kubeconfig: Creation complete after 0s [id=19c604e1d7d4e419aa631c897b844952557026c5]\u001b[0m\r\n"] +[502.924807, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller-packaging-global\"]: Creation complete after 1s [id=/api/v1/namespaces/kapp-controller-packaging-global]\u001b[0m\r\n"] +[502.951987, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packageinstalls.packaging.carvel.dev\"]: Creation complete after 1s [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packageinstalls.packaging.carvel.dev]\u001b[0m\r\n"] +[502.977928, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller\"]: Creation complete after 1s [id=/api/v1/namespaces/kapp-controller]\u001b[0m\r\n"] +[503.11122, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/namespaces/kube-system/rolebindings/pkgserver-auth-reader\"]: Creation complete after 1s [id=/apis/rbac.authorization.k8s.io/v1/namespaces/kube-system/rolebindings/pkgserver-auth-reader]\u001b[0m\r\n"] +[503.147965, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_cluster_role_binding.automation[0]: Creation complete after 1s [id=automation]\u001b[0m\r\n"] +[503.179674, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_secret.automation: Creating...\u001b[0m\u001b[0m\r\n"] +[503.462049, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_secret.automation: Creation complete after 0s [id=kube-system/automation]\u001b[0m\r\n"] +[503.497021, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.data.kubernetes_secret.automation: Reading...\u001b[0m\u001b[0m\r\n"] +[503.548181, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.data.kubernetes_secret.automation: Read complete after 0s [id=kube-system/automation]\u001b[0m\r\n"] +[503.589285, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.local_file.kubeconfig: Creating...\u001b[0m\u001b[0m\r\n"] +[503.591144, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.local_file.kubeconfig: Creation complete after 0s [id=43c50106046418e97f5cc4d2a1b588e293b100ff]\u001b[0m\r\n"] +[506.831466, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiregistration.k8s.io/v1/apiservices/v1alpha1.data.packaging.carvel.dev\"]: Creation complete after 4s [id=/apis/apiregistration.k8s.io/v1/apiservices/v1alpha1.data.packaging.carvel.dev]\u001b[0m\r\n\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/services/packaging-api\"]: Creation complete after 5s [id=/api/v1/namespaces/kapp-controller/services/packaging-api]\u001b[0m\r\n"] +[507.3211, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/serviceaccounts/kapp-controller-sa\"]: Creation complete after 5s [id=/api/v1/namespaces/kapp-controller/serviceaccounts/kapp-controller-sa]\u001b[0m\r\n"] +[511.185813, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller\"]: Still creating... [00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[521.187039, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller\"]: Still creating... [00m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[530.014612, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller\"]: Creation complete after 29s [id=/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller]\u001b[0m\r\n"] +[530.057923, "o", "\u001b[0m\u001b[1mmodule.educates[0].time_sleep.wait_for_kapp_controller: Creating...\u001b[0m\u001b[0m\r\n"] +[531.060476, "o", "\u001b[0m\u001b[1mmodule.educates[0].time_sleep.wait_for_kapp_controller: Creation complete after 1s [id=2025-06-05T14:17:09Z]\u001b[0m\r\n"] +[531.095903, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.namespace_app_installs: Creating...\u001b[0m\u001b[0m\r\n"] +[531.411567, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.namespace_app_installs: Creation complete after 0s [id=/api/v1/namespaces/package-installs]\u001b[0m\r\n"] +[531.45652, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.serviceaccount_app_installs: Creating...\u001b[0m\u001b[0m\r\n"] +[531.770023, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.serviceaccount_app_installs: Creation complete after 0s [id=/api/v1/namespaces/package-installs/serviceaccounts/package-installs]\u001b[0m\r\n"] +[531.812014, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.clusterrolebinding_app_installs: Creating...\u001b[0m\u001b[0m\r\n"] +[532.099212, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.clusterrolebinding_app_installs: Creation complete after 1s [id=/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/package-installs]\u001b[0m\r\n"] +[532.142772, "o", "\u001b[0m\u001b[1mmodule.educates[0].time_sleep.k8s_app_rbac: Creating...\u001b[0m\u001b[0m\r\n"] +[533.145505, "o", "\u001b[0m\u001b[1mmodule.educates[0].time_sleep.k8s_app_rbac: Creation complete after 1s [id=2025-06-05T14:17:11Z]\u001b[0m\r\n"] +[533.200995, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app_secret: Creating...\u001b[0m\u001b[0m\r\n"] +[533.508455, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app_secret: Creation complete after 0s [id=/api/v1/namespaces/package-installs/secrets/package-installs]\u001b[0m\r\n"] +[533.556334, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Creating...\u001b[0m\u001b[0m\r\n"] +[543.557563, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[553.558545, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [00m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[563.559542, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [00m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[573.560179, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [00m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[583.561297, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [00m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[593.562497, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [01m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[603.56284, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [01m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[613.563962, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [01m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[623.564613, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [01m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[633.565525, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [01m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[643.566062, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [01m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[653.567216, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [02m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[663.567909, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [02m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[673.569185, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [02m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[683.56954, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [02m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[693.570791, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [02m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[703.571397, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [02m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[713.572801, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [03m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[723.573852, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [03m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[733.57439, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [03m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[743.575573, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [03m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[753.576738, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [03m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[763.579304, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [03m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[773.580351, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [04m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[783.581614, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [04m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[793.582748, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [04m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[803.583369, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [04m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[813.58461, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [04m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[823.585696, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still creating... [04m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[826.368204, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Creation complete after 4m53s [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates]\u001b[0m\r\n"] +[826.448662, "o", "\u001b[0m\u001b[1m\u001b[32m\r\nApply complete! Resources: 39 added, 0 changed, 0 destroyed.\r\n\u001b[0m\u001b[0m\u001b[1m\u001b[32m\r\nOutputs:\r\n\r\n\u001b[0m"] +[826.44884, "o", "educates = {\r\n \"educates_installer_version\" = \"ghcr.io/educates/educates-installer:3.3.2\"\r\n \"is_kapp_controller_installed\" = true\r\n}\r\ngke = {\r\n \"certmanager_service_account\" = \"demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\"\r\n \"cluster_name\" = \"demo-cluster\"\r\n \"externaldns_service_account\" = \"demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\"\r\n \"kubernetes_version\" = \"1.32.4-gke.1415000\"\r\n \"network_uri\" = \"https://www.googleapis.com/compute/v1/projects/educates-testing/global/networks/demo-cluster-vpc\"\r\n \"node_pools\" = [\r\n {\r\n \"auto_repair\" = true\r\n \"auto_upgrade\" = true\r\n \"disk_size_gb\" = 100\r\n \"disk_type\" = \"pd-balanced\"\r\n \"image_type\" = \"COS_CONTAINERD\"\r\n \"initial_node_count\" = 3\r\n \"machine_type\" = \"e2-medium\"\r\n \"max_count\" = 3\r\n \"min_count\" = 3\r\n \"name\" = \"node-pool-workshops\"\r\n \"preemptible\" = false\r\n \"service_account\" = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n },\r\n ]\r\n \"servi"] +[826.448911, "o", "ce_account\" = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n}\r\nkubernetes = {\r\n \"host\" = \"https://35.193.249.164\"\r\n \"kubeconfig_file\" = \"./kubeconfig-demo-cluster.yaml\"\r\n}\r\ntoken-sa-kubeconfig = {\r\n \"token-sa-kubeconfig\" = {\r\n \"kubeconfig_file\" = \"./kubeconfig-demo-cluster-token.yaml\"\r\n \"namespace\" = \"kube-system\"\r\n \"service_account\" = \"automation\"\r\n }\r\n}\r\n"] +[826.45232, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"] +[826.474208, "o", "\u001b]2;bkable@Mac:~/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u0007\u001b]1;..ucates-on-gke\u0007"] +[826.47588, "o", "\u001b]7;file://Mac.lan/Users/bkable/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u001b\\"] +[826.476395, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[01;34mgit:(\u001b[31mfix-example-node-pool-scale-factor\u001b[34m) \u001b[33m✗\u001b[00m \u001b[K"] +[826.476452, "o", "\u001b[?1h\u001b="] +[826.476539, "o", "\u001b[?2004h"] +[830.497107, "o", "e"] +[830.665246, "o", "\bex"] +[830.717386, "o", "i"] +[830.8745, "o", "t"] +[831.161279, "o", "\u001b[?1l\u001b>"] +[831.161363, "o", "\u001b[?2004l\r\r\n"] +[831.1644, "o", "\u001b]2;exit\u0007\u001b]1;exit\u0007"] diff --git a/static/asciinemas/terraform-destroy.cast b/static/asciinemas/terraform-destroy.cast new file mode 100644 index 0000000..e11bae0 --- /dev/null +++ b/static/asciinemas/terraform-destroy.cast @@ -0,0 +1,546 @@ +{"version": 2, "width": 117, "height": 17, "timestamp": 1749091500, "env": {"SHELL": "/bin/zsh", "TERM": "xterm-256color"}} +[0.757251, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"] +[0.763891, "o", "\u001b]2;bkable@Mac:~/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u0007\u001b]1;..ucates-on-gke\u0007"] +[0.76576, "o", "\u001b]7;file://Mac.lan/Users/bkable/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u001b\\"] +[0.766332, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[K"] +[0.766453, "o", "\u001b[?1h\u001b="] +[0.76649, "o", "\u001b[?2004h"] +[0.79283, "o", "\r\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[01;34mgit:(\u001b[31mmain\u001b[34m) \u001b[33m✗\u001b[00m \u001b[K"] +[1.940919, "o", "t"] +[2.136898, "o", "\bte"] +[2.381286, "o", "r"] +[2.579359, "o", "r"] +[2.809922, "o", "a"] +[2.902592, "o", "f"] +[3.0436, "o", "o"] +[3.185843, "o", "r"] +[3.299846, "o", "m"] +[3.794967, "o", " "] +[4.136924, "o", "d"] +[4.347276, "o", "e"] +[4.499444, "o", "s"] +[4.707712, "o", "t"] +[5.331363, "o", "r"] +[5.492995, "o", "o"] +[5.80615, "o", "y"] +[6.01028, "o", " "] +[6.701293, "o", "-"] +[6.825218, "o", "v"] +[6.983888, "o", "a"] +[7.182886, "o", "r"] +[7.717434, "o", "-"] +[7.85955, "o", "f"] +[7.959201, "o", "i"] +[8.18236, "o", "l"] +[8.359524, "o", "e"] +[9.108248, "o", " "] +[9.461284, "o", "."] +[9.624815, "o", "/"] +[9.955256, "o", "m"] +[10.16376, "o", "a"] +[10.280862, "o", "i"] +[10.389771, "o", "n"] +[10.996473, "o", "t"] +[11.732569, "o", "\b \b"] +[12.001593, "o", "."] +[12.452468, "o", "t"] +[12.916659, "o", "f"] +[13.279642, "o", "v"] +[13.508105, "o", "a"] +[13.682864, "o", "r"] +[13.885098, "o", "s"] +[15.209356, "o", "\u001b[?1l\u001b>"] +[15.209432, "o", "\u001b[?2004l\r\r\n"] +[15.213154, "o", "\u001b]2;terraform destroy -var-file ./main.tfvars\u0007\u001b]1;terraform\u0007"] +[17.637053, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.vpc.google_compute_network.network: Refreshing state... [id=projects/educates-testing/global/networks/demo-cluster-vpc]\u001b[0m\r\n"] +[17.663702, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.default: Refreshing state... [id=projects/educates-testing/serviceAccounts/demo-cluster@educates-testing.iam.gserviceaccount.com]\u001b[0m\r\n"] +[17.664044, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.cert-manager-gsa: Refreshing state... [id=projects/educates-testing/serviceAccounts/demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com]\u001b[0m\r\n"] +[17.664341, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke_auth.data.google_client_config.provider: Reading...\u001b[0m\u001b[0m\r\n"] +[17.664691, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.external-dns-gsa: Refreshing state... [id=projects/educates-testing/serviceAccounts/demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com]\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_compute_zones.this: Reading...\u001b[0m\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_container_engine_versions.gke_versions: Reading...\u001b[0m\u001b[0m\r\n"] +[17.664984, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_client_config.default: Reading...\u001b[0m\u001b[0m\r\n"] +[17.738654, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_client_config.default: Read complete after 0s [id=projects//regions//zones/]\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke_auth.data.google_client_config.provider: Read complete after 0s [id=projects//regions//zones/]\u001b[0m\r\n"] +[17.983183, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account_iam_binding.external-dns-link-ksa-to-gsa: Refreshing state... [id=projects/educates-testing/serviceAccounts/demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com/roles/iam.workloadIdentityUser]\u001b[0m\r\n"] +[17.983571, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_project_iam_binding.cert-manager-and-external-dns-as-dns-admin: Refreshing state... [id=educates-testing/roles/dns.admin]\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account_iam_binding.cert-manager-link-ksa-to-gsa: Refreshing state... [id=projects/educates-testing/serviceAccounts/demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com/roles/iam.workloadIdentityUser]\u001b[0m\r\n"] +[18.077906, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.subnets.google_compute_subnetwork.subnetwork[\"us-central1/demo-cluster-subnet\"]: Refreshing state... [id=projects/educates-testing/regions/us-central1/subnetworks/demo-cluster-subnet]\u001b[0m\r\n"] +[18.0892, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_compute_zones.this: Read complete after 1s [id=projects/educates-testing/regions/us-central1]\u001b[0m\r\n"] +[18.093032, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.data.google_container_engine_versions.region: Reading...\u001b[0m\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.data.google_container_engine_versions.zone: Reading...\u001b[0m\u001b[0m\r\n"] +[18.101313, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_container_engine_versions.gke_versions: Read complete after 1s [id=2025-06-05 02:45:18.521152 +0000 UTC]\u001b[0m\r\n"] +[18.277316, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.data.google_container_engine_versions.region: Read complete after 0s [id=2025-06-05 02:45:18.693902 +0000 UTC]\u001b[0m\r\n"] +[18.310037, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.data.google_container_engine_versions.zone: Read complete after 0s [id=2025-06-05 02:45:18.727862 +0000 UTC]\u001b[0m\r\n"] +[18.329419, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Refreshing state... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster]\u001b[0m\r\n"] +[18.841933, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Refreshing state... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster/nodePools/node-pool-workshops]\u001b[0m\r\n"] +[19.587978, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke_auth.data.google_container_cluster.gke_cluster: Reading...\u001b[0m\u001b[0m\r\n"] +[19.588116, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.kubernetes_config_map.ip_masq_agent[0]: Refreshing state... [id=kube-system/ip-masq-agent]\u001b[0m\r\n"] +[19.590572, "o", "\u001b[0m\u001b[1mmodule.educates[0].data.kubectl_file_documents.docs: Reading...\u001b[0m\u001b[0m\r\n"] +[19.593296, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_service_account.automation[0]: Refreshing state... [id=kube-system/automation]\u001b[0m\r\n"] +[19.608495, "o", "\u001b[0m\u001b[1mmodule.educates[0].data.kubectl_file_documents.docs: Read complete after 0s [id=3c9aab3defcb809a8b5de871a63a65a19e10c86ff7da30132924bd87456f0d80]\u001b[0m\r\n"] +[19.613645, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller-packaging-global\"]: Refreshing state... [id=/api/v1/namespaces/kapp-controller-packaging-global]\u001b[0m\r\n"] +[19.613991, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/serviceaccounts/kapp-controller-sa\"]: Refreshing state... [id=/api/v1/namespaces/kapp-controller/serviceaccounts/kapp-controller-sa]\u001b[0m\r\n"] +[19.615366, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller\"]: Refreshing state... [id=/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller]\u001b[0m\r\n"] +[19.615995, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-user-role\"]: Refreshing state... [id=/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-user-role]\u001b[0m\r\n"] +[19.616708, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packageinstalls.packaging.carvel.dev\"]: Refreshing state... [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packageinstalls.packaging.carvel.dev]\u001b[0m\r\n"] +[19.624237, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packagerepositories.packaging.carvel.dev\"]: Refreshing state... [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packagerepositories.packaging.carvel.dev]\u001b[0m\r\n"] +[19.631632, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/apps.kappctrl.k14s.io\"]: Refreshing state... [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/apps.kappctrl.k14s.io]\u001b[0m\r\n"] +[19.923232, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/services/packaging-api\"]: Refreshing state... [id=/api/v1/namespaces/kapp-controller/services/packaging-api]\u001b[0m\r\n"] +[19.962307, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackages.internal.packaging.carvel.dev\"]: Refreshing state... [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackages.internal.packaging.carvel.dev]\u001b[0m\r\n"] +[19.965074, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller\"]: Refreshing state... [id=/api/v1/namespaces/kapp-controller]\u001b[0m\r\n"] +[19.981227, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/pkg-apiserver:system:auth-delegator\"]: Refreshing state... [id=/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/pkg-apiserver:system:auth-delegator]\u001b[0m\r\n"] +[19.985519, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-cluster-role\"]: Refreshing state... [id=/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-cluster-role]\u001b[0m\r\n"] +[19.988258, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/kapp-controller-cluster-role-binding\"]: Refreshing state... [id=/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/kapp-controller-cluster-role-binding]\u001b[0m\r\n"] +[20.014075, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/namespaces/kube-system/rolebindings/pkgserver-auth-reader\"]: Refreshing state... [id=/apis/rbac.authorization.k8s.io/v1/namespaces/kube-system/rolebindings/pkgserver-auth-reader]\u001b[0m\r\n"] +[20.05212, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiregistration.k8s.io/v1/apiservices/v1alpha1.data.packaging.carvel.dev\"]: Refreshing state... [id=/apis/apiregistration.k8s.io/v1/apiservices/v1alpha1.data.packaging.carvel.dev]\u001b[0m\r\n"] +[20.056316, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackagemetadatas.internal.packaging.carvel.dev\"]: Refreshing state... [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackagemetadatas.internal.packaging.carvel.dev]\u001b[0m\r\n"] +[20.168572, "o", "\u001b[0m\u001b[1mmodule.educates[0].time_sleep.wait_for_kapp_controller: Refreshing state... [id=2025-06-05T02:13:21Z]\u001b[0m\r\n"] +[20.172873, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.namespace_app_installs: Refreshing state... [id=/api/v1/namespaces/package-installs]\u001b[0m\r\n"] +[20.280915, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.serviceaccount_app_installs: Refreshing state... [id=/api/v1/namespaces/package-installs/serviceaccounts/package-installs]\u001b[0m\r\n"] +[20.39472, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.clusterrolebinding_app_installs: Refreshing state... [id=/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/package-installs]\u001b[0m\r\n"] +[20.498914, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_cluster_role_binding.automation[0]: Refreshing state... [id=automation]\u001b[0m\r\n"] +[20.535314, "o", "\u001b[0m\u001b[1mmodule.educates[0].time_sleep.k8s_app_rbac: Refreshing state... [id=2025-06-05T02:13:23Z]\u001b[0m\r\n"] +[20.540727, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app_secret: Refreshing state... [id=/api/v1/namespaces/package-installs/secrets/package-installs]\u001b[0m\r\n"] +[20.630533, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_secret.automation: Refreshing state... [id=kube-system/automation]\u001b[0m\r\n"] +[20.635894, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Refreshing state... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates]\u001b[0m\r\n"] +[20.659855, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke_auth.data.google_container_cluster.gke_cluster: Read complete after 1s [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster]\u001b[0m\r\n"] +[20.668291, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.local_file.kubeconfig: Refreshing state... [id=bc06b717c4152a1bd19b8e13b5b55bbe56c324ee]\u001b[0m\r\n"] +[20.790402, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.data.kubernetes_secret.automation: Reading...\u001b[0m\u001b[0m\r\n"] +[20.844921, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.data.kubernetes_secret.automation: Read complete after 0s [id=kube-system/automation]\u001b[0m\r\n"] +[20.848924, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.local_file.kubeconfig: Refreshing state... [id=6f23a64ea7d143e0cd368d55a08b3f91a7eb9c5d]\u001b[0m\r\n"] +[21.720888, "o", "\r\nTerraform used the selected providers to generate the following execution plan. Resource actions are indicated with\r\nthe following symbols:\r\n \u001b[31m-\u001b[0m destroy\u001b[0m\r\n\r\nTerraform will perform the following actions:\r\n"] +[21.721017, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.clusterrolebinding_app_installs\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"clusterrolebinding_app_installs\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/package-installs\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"ClusterRoleBinding\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"583fb580-4ecd-4b38-aab6-8e09ede57c4d\" \u001b[90m-> null\u001b[0"] +[21.72108, "o", "m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"package-installs\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"583fb580-4ecd-4b38-aab6-8e09ede57c4d\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRoleBinding\r\n metadata:\r\n name: package-installs\r\n roleRef:\r\n apiGroup: rbac.authorization.k8s.io\r\n kind: ClusterRole\r\n name: cluster-admin\r\n subjects:\r\n - kind: ServiceAccount\r\n name: package-installs\r\n namespace: package-installs\r\n EOT \u001b[90m-> nu"] +[21.72114, "o", "ll\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.721271, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.educates_app\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"educates_app\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"kappctrl.k14s.io/v1alpha1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"App\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"184b80cd-413a-49b4-bbd6-80ee231d9450\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name ="] +[21.721312, "o", " \"educates\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m namespace = \"package-installs\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"184b80cd-413a-49b4-bbd6-80ee231d9450\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: kappctrl.k14s.io/v1alpha1\r\n kind: App\r\n metadata:\r\n name: educates\r\n namespace: package-installs\r\n spec:\r\n deploy:\r\n - kapp:\r\n rawOptions:\r\n - --app-changes-max-to-keep=5\r\n - --diff-changes=false"] +[21.721382, "o", "\r\n - --wait-timeout=5m\r\n fetch:\r\n - imgpkgBundle:\r\n image: ghcr.io/educates/educates-installer:3.3.2\r\n path: bundle\r\n - inline:\r\n paths:\r\n disable-kapp-controller.yaml: |\r\n clusterPackages:\r\n kapp-controller:\r\n enabled: false\r\n path: values\r\n serviceAccountName: package-installs\r\n syncPeriod: 8760h0m0s\r\n template:\r\n - ytt:\r\n paths:\r\n - bundle/kbld/kbld-bundle.yaml\r\n - bundle/config/kapp\r\n - bundle/config/ytt\r\n valuesFrom:\r\n - path: bundle/kbld/kbld-images.yaml\r\n - secretRef:\r\n name: package-installs\r\n - path: values/disable-kapp-controller.yaml\r\n - kbld:\r\n paths:\r\n "] +[21.721428, "o", " - bundle/.imgpkg/images.yml\r\n - '-'\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for {\r\n \u001b[31m-\u001b[0m\u001b[0m field {\r\n \u001b[31m-\u001b[0m\u001b[0m key = \"status.conditions.[0].type\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m value = \"ReconcileSucceeded\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m value_type = \"eq\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n \u001b[31m-\u001b[0m\u001b[0m field {\r\n \u001b[31m-\u001b[0m\u001b[0m key = \"status.conditions.[0].status\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m value = \"True\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m value_type = \"eq\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n }\r\n"] +[21.721461, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.educates_app_secret\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"educates_app_secret\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/api/v1/namespaces/package-installs/secrets/package-installs\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"Secret\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"9833b1f9-63f6-4f1b-b390-a5def6dc46ef\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"package-installs\""] +[21.721524, "o", " \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m namespace = \"package-installs\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"9833b1f9-63f6-4f1b-b390-a5def6dc46ef\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n data: (sensitive value)\r\n kind: Secret\r\n metadata:\r\n name: package-installs\r\n namespace: package-installs\r\n type: Opaque\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.721593, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/api/v1/namespaces/kapp-controller\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"Namespace\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"ae880109-93c7-4d23-82a7-8865176c93e2\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"kapp-contr"] +[21.721655, "o", "oller\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"ae880109-93c7-4d23-82a7-8865176c93e2\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: Namespace\r\n metadata:\r\n name: kapp-controller\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.721699, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller-packaging-global\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/api/v1/namespaces/kapp-controller-packaging-global\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"Namespace\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"681e4fd3-0ec0-4291-94e3-d4cae19a5073\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m nam"] +[21.721761, "o", "e = \"kapp-controller-packaging-global\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"681e4fd3-0ec0-4291-94e3-d4cae19a5073\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: Namespace\r\n metadata:\r\n name: kapp-controller-packaging-global\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.721802, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/serviceaccounts/kapp-controller-sa\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/api/v1/namespaces/kapp-controller/serviceaccounts/kapp-controller-sa\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"ServiceAccount\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"4aa3b4da-bbcd-4779-9333-e471e2c2465d\" \u001b[90m"] +[21.721843, "o", "-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"kapp-controller-sa\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m namespace = \"kapp-controller\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"4aa3b4da-bbcd-4779-9333-e471e2c2465d\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: ServiceAccount\r\n metadata:\r\n name: kapp-controller-sa\r\n namespace: kapp-controller\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.72191, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/services/packaging-api\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/api/v1/namespaces/kapp-controller/services/packaging-api\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"Service\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"329e2e1a-0706-4359-abf7-a433f6595a02\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b["] +[21.721946, "o", "0m\u001b[0m name = \"packaging-api\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m namespace = \"kapp-controller\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"329e2e1a-0706-4359-abf7-a433f6595a02\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: Service\r\n metadata:\r\n name: packaging-api\r\n namespace: kapp-controller\r\n spec:\r\n ports:\r\n - name: main\r\n port: 443\r\n protocol: TCP\r\n targetPort: api\r\n - name: metrics\r\n port: 8080\r\n pro"] +[21.721975, "o", "tocol: TCP\r\n targetPort: metrics\r\n selector:\r\n app: kapp-controller\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.722124, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/apps.kappctrl.k14s.io\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/apps.kappctrl.k14s.io\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid "] +[21.722173, "o", " = \"94535e5e-2b9d-46db-888a-c0cface46c46\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"apps.kappctrl.k14s.io\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"94535e5e-2b9d-46db-888a-c0cface46c46\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n name: apps.kappctrl.k14s.io\r\n spec:\r\n group: kappctrl.k14s.io\r\n names:\r\n categories:\r\n - carvel\r\n kind: App\r\n listKind: AppList\r\n plural: apps\r\n "] +[21.722224, "o", " singular: app\r\n scope: Namespaced\r\n versions:\r\n - additionalPrinterColumns:\r\n - description: Friendly description\r\n jsonPath: .status.friendlyDescription\r\n name: Description\r\n type: string\r\n - description: Last time app started being deployed. Does not mean anything was\r\n changed.\r\n jsonPath: .status.deploy.startedAt\r\n name: Since-Deploy\r\n type: date\r\n - description: Time since creation\r\n jsonPath: .metadata.creationTimestamp\r\n name: Age\r\n type: date\r\n name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n description: 'An App is a set of Kubernetes resources. These resources could\r\n span any number of namespaces or could be cluster-wide (e.g. CRDs). An App\r\n "] +[21.72228, "o", " is represented in kapp-controller using a App CR. The App CR comprises of\r\n three main sections: spec.fetch – declare source for fetching configuration\r\n and OCI images spec.template – declare templating tool and values spec.deploy\r\n – declare deployment tool and any deploy specific configuration'\r\n properties:\r\n apiVersion:\r\n description: 'APIVersion defines the versioned schema of this representation\r\n of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n objec"] +[21.722324, "o", "t represents. Servers may infer this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: object\r\n spec:\r\n properties:\r\n canceled:\r\n description: Cancels current and future reconciliations (optional;\r\n default=false)\r\n type: boolean\r\n cluster:\r\n description: Specifies that app should be deployed to destination\r\n cluster; by default, cluster is same as where this resource resides\r\n (optional; v0.5.0+)\r\n properties:\r\n kubeconfigSecretRef"] +[21.722351, "o", ":\r\n description: Specifies secret containing kubeconfig (required)\r\n properties:\r\n key:\r\n description: Specifies key that contains kubeconfig (optional)\r\n type: string\r\n name:\r\n description: Specifies secret name within app's namespace\r\n (required)\r\n type: string\r\n type: object\r\n namespace:\r\n description: Specifies namespace in destination cluster (optional)\r\n type: string\r\n type: object\r\n defaultNamespace:\r\n description: Specifies the default namespace to install the App resources,\r\n "] +[21.722385, "o", " by default this is same as the App's namespace (optional; v0.48.0+)\r\n type: string\r\n deploy:\r\n items:\r\n properties:\r\n kapp:\r\n description: Use kapp to deploy resources\r\n properties:\r\n delete:\r\n description: Configuration for delete command (optional)\r\n properties:\r\n rawOptions:\r\n description: Pass through options to kapp delete (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n inspect:\r\n "] +[21.722419, "o", " description: 'Configuration for inspect command (optional)\r\n as of kapp-controller v0.31.0, inspect is disabled by\r\n default add rawOptions or use an empty inspect config\r\n like `inspect: {}` to enable'\r\n properties:\r\n rawOptions:\r\n description: Pass through options to kapp inspect (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n intoNs:\r\n description: Override namespace for all resources (optional)\r\n type: string\r\n mapNs:\r\n "] +[21.722481, "o", " description: Provide custom namespace override mapping (optional)\r\n items:\r\n type: string\r\n type: array\r\n rawOptions:\r\n description: Pass through options to kapp deploy (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: array\r\n fetch:\r\n items:\r\n properties:\r\n git:\r\n description: Uses git to clone repository\r\n properties:\r\n depth:\r\n descri"] +[21.72252, "o", "ption: depth of commits to fetch; 1 (default) means\r\n only latest commit, 0 means everything (optional)\r\n format: int64\r\n type: integer\r\n forceHTTPBasicAuth:\r\n description: Force the usage of HTTP Basic Auth when Basic\r\n Auth is provided (optional)\r\n type: boolean\r\n lfsSkipSmudge:\r\n description: Skip lfs download (optional)\r\n type: boolean\r\n ref:\r\n description: Branch, tag, commit; origin is the name of\r\n the remote (optional)\r\n type: string\r\n refSelection:\r\n "] +[21.722564, "o", " description: Specifies a strategy to resolve to an explicit\r\n ref (optional; v0.24.0+)\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n secretRef:\r\n "] +[21.722602, "o", " description: 'Secret with auth details. allowed keys: ssh-privatekey,\r\n ssh-knownhosts, username, password (optional) (if ssh-knownhosts\r\n is not specified, git will not perform strict host checking)'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of repository (optional)\r\n type: string\r\n url:\r\n description: http or ssh urls are supported (required)\r\n type: string\r\n "] +[21.722638, "o", " type: object\r\n helmChart:\r\n description: Uses helm fetch to fetch specified chart\r\n properties:\r\n name:\r\n description: 'Example: stable/redis'\r\n type: string\r\n repository:\r\n properties:\r\n secretRef:\r\n properties:\r\n name:\r\n description: Object is expected to be within same\r\n namespace\r\n type: string\r\n type: object\r\n url:\r\n description: Repository url; scheme"] +[21.72268, "o", " of oci:// will fetch\r\n experimental helm oci chart (v0.19.0+) (required)\r\n type: string\r\n type: object\r\n version:\r\n type: string\r\n type: object\r\n http:\r\n description: Uses http library to fetch file\r\n properties:\r\n secretRef:\r\n description: 'Secret to provide auth details (optional)\r\n Secret may include one or more keys: username, password'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n ty"] +[21.72274, "o", "pe: string\r\n type: object\r\n sha256:\r\n description: Checksum to verify after download (optional)\r\n type: string\r\n subPath:\r\n description: Grab only portion of download (optional)\r\n type: string\r\n url:\r\n description: 'URL can point to one of following formats:\r\n text, tgz, zip http and https url are supported; plain\r\n file, tgz and tar types are supported (required)'\r\n type: string\r\n type: object\r\n image:\r\n description: Pulls content from Docker/OCI registry\r\n "] +[21.722775, "o", " properties:\r\n secretRef:\r\n description: 'Secret may include one or more keys: username,\r\n password, token. By default anonymous access is used for\r\n authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of image (optional)\r\n type: string\r\n tagSelection:\r\n description: Specifies a strategy to choose a tag (optional;\r\n v0.24.0+"] +[21.722812, "o", ") if specified, do not include a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n url:\r\n description: 'Docker image url; unqualified, tagged, or\r\n "] +[21.722847, "o", " digest references supported (required) Example: username/app1-config:v0.1.0'\r\n type: string\r\n type: object\r\n imgpkgBundle:\r\n description: Pulls imgpkg bundle from Docker/OCI registry (v0.17.0+)\r\n properties:\r\n image:\r\n description: Docker image url; unqualified, tagged, or digest\r\n references supported (required)\r\n type: string\r\n secretRef:\r\n description: 'Secret may include one or more keys: username,\r\n password, token. By default anonymous access is used for\r\n authentication.'\r\n properties:\r\n "] +[21.722888, "o", " name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n tagSelection:\r\n description: Specifies a strategy to choose a tag (optional;\r\n v0.24.0+) if specified, do not include a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n "] +[21.722924, "o", " type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n type: object\r\n inline:\r\n description: Pulls content from within this resource; or other\r\n resources in the cluster\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their content;\r\n not recommended for sensitive values as CR is not encrypted\r\n (optional)\r\n type: "] +[21.72295, "o", "object\r\n pathsFrom:\r\n description: Specifies content via secrets and config maps;\r\n data values are recommended to be placed in secrets (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files found\r\n in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n "] +[21.723003, "o", " properties:\r\n directoryPath:\r\n description: Specifies where to place files found\r\n in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n description: Relative path to place the fetched artifacts\r\n type: string\r\n type: object\r\n type: array\r\n noopDelete:\r\n description: Deletion requests for the App w"] +[21.723054, "o", "ill result in the App\r\n CR being deleted, but its associated resources will not be deleted\r\n (optional; default=false; v0.18.0+)\r\n type: boolean\r\n paused:\r\n description: Pauses _future_ reconciliation; does _not_ affect currently\r\n running reconciliation (optional; default=false)\r\n type: boolean\r\n serviceAccountName:\r\n description: Specifies that app should be deployed authenticated via\r\n given service account, found in this namespace (optional; v0.6.0+)\r\n type: string\r\n syncPeriod:\r\n description: Specifies the length of time to wait, in time + unit\r\n format, before reconciling. Always >= 30s. If value below 30s is\r\n "] +[21.723065, "o", " specified, 30s will be used. (optional; v0.9.0+; default=30s)\r\n type: string\r\n template:\r\n items:\r\n properties:\r\n cue:\r\n properties:\r\n inputExpression:\r\n description: Cue expression for single path component, can\r\n be used to unify ValuesFrom into a given field (optional)\r\n type: string\r\n outputExpression:\r\n description: Cue expression to output, default will export\r\n all visible fields (optional)\r\n type: string\r\n paths:\r\n description: Explicit list of files/directori"] +[21.723129, "o", "es (optional)\r\n items:\r\n type: string\r\n type: array\r\n valuesFrom:\r\n description: Provide values (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n properties:\r\n fieldPa"] +[21.723191, "o", "th:\r\n description: 'Required: Selects a field\r\n of the app: only annotations, labels,\r\n uid, name and namespace are supported.'\r\n type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running KappController\r\n version, defaults (empty) to retrieving\r\n the current running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n "] +[21.723228, "o", " type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running KubernetesAPIs\r\n from cluster, defaults (empty) to retrieving\r\n the APIs from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n ty"] +[21.723272, "o", "pe: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running Kubernetes\r\n version from cluster, defaults (empty)\r\n to retrieving the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n "] +[21.723314, "o", " type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n helmTemplate:\r\n description: Use helm template command to render helm chart\r\n properties:\r\n kubernetesAPIs:\r\n description: 'Optional: Use kubernetes group/versions resources\r\n available in the live cluster'\r\n "] +[21.723347, "o", " properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get Kubernetes version, defaults\r\n (empty) to retrieving the version from the cluster. Can\r\n be manually overridden to a value instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n description: Set name explicitly, default is App CR's name\r\n (option"] +[21.723369, "o", "al; v0.13.0+)\r\n type: string\r\n namespace:\r\n description: Set namespace explicitly, default is App CR's\r\n namespace (optional; v0.13.0+)\r\n type: string\r\n path:\r\n description: Path to chart (optional; v0.13.0+)\r\n type: string\r\n valuesFrom:\r\n description: One or more secrets, config maps, paths that\r\n provide values (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n "] +[21.72339, "o", " type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n properties:\r\n fieldPath:\r\n description: 'Required: Selects a field\r\n of the app: only annotations, labels,\r\n uid, name and namespace are supported.'\r\n type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running KappController\r\n "] +[21.723422, "o", " version, defaults (empty) to retrieving\r\n the current running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running KubernetesAPIs\r\n from cluster, defaults (empty) to retrieving\r\n the APIs from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n "] +[21.723469, "o", " \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running Kubernetes\r\n version from cluster, defaults (empty)\r\n to retrieving the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n "] +[21.723511, "o", " version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n "] +[21.723553, "o", " jsonnet:\r\n description: TODO implement jsonnet\r\n type: object\r\n kbld:\r\n description: Use kbld to resolve image references to use digests\r\n properties:\r\n paths:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kustomize:\r\n description: TODO implement kustomize\r\n type: object\r\n sops:\r\n description: Use sops to decrypt *.sops.yml files (optional;\r\n v0.11.0+)\r\n properties:\r\n age:\r\n "] +[21.723613, "o", " properties:\r\n privateKeysSecretRef:\r\n description: Secret with private armored PGP private\r\n keys (required)\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n paths:\r\n description: Lists paths to decrypt explicitly (optional;\r\n v0.13.0+)\r\n items:\r\n type: string\r\n type: array\r\n pgp:\r\n description: Use PGP to decrypt files (required)\r\n "] +[21.723647, "o", " properties:\r\n privateKeysSecretRef:\r\n description: Secret with private armored PGP private\r\n keys (required)\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: object\r\n ytt:\r\n description: Use ytt to template configuration\r\n properties:\r\n fileMarks:\r\n description: Control metadata about input files passed to\r\n ytt (optional; v0.18.0+) see https://carvel.dev/ytt/docs/latest/file-marks/\r\n "] +[21.723681, "o", " for more details\r\n items:\r\n type: string\r\n type: array\r\n ignoreUnknownComments:\r\n description: Ignores comments that ytt doesn't recognize\r\n (optional; default=false)\r\n type: boolean\r\n inline:\r\n description: Specify additional files, including data values\r\n (optional)\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their content;\r\n "] +[21.72374, "o", " not recommended for sensitive values as CR is not\r\n encrypted (optional)\r\n type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and config\r\n maps; data values are recommended to be placed in\r\n secrets (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files\r\n found in secret (optional)\r\n type:"] +[21.723775, "o", " string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files\r\n found in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n paths:\r\n "] +[21.723826, "o", " description: Lists paths to provide to ytt explicitly (optional)\r\n items:\r\n type: string\r\n type: array\r\n strict:\r\n description: Forces strict mode https://github.com/k14s/ytt/blob/develop/docs/strict.md\r\n (optional; default=false)\r\n type: boolean\r\n valuesFrom:\r\n description: Provide values via ytt's --data-values-file\r\n (optional; v0.19.0-alpha.9)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n "] +[21.723854, "o", " type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n properties:\r\n fieldPath:\r\n description: 'Required: Selects a field\r\n of the app: only annotations, labels,\r\n uid, name and namespace are supported.'\r\n type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running KappController\r\n "] +[21.723894, "o", " version, defaults (empty) to retrieving\r\n the current running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running KubernetesAPIs\r\n from cluster, defaults (empty) to retrieving\r\n the APIs from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n "] +[21.723934, "o", " \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running Kubernetes\r\n version from cluster, defaults (empty)\r\n to retrieving the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n "] +[21.723954, "o", " version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n "] +[21.723989, "o", " type: object\r\n type: object\r\n type: array\r\n type: object\r\n status:\r\n properties:\r\n conditions:\r\n items:\r\n properties:\r\n message:\r\n description: Human-readable message indicating details about\r\n last transition.\r\n type: string\r\n reason:\r\n description: Unique, this should be a short, machine understandable\r\n string that gives the reason for condition's last transition.\r\n If it reports \"ResizeStarted\" that means the underlying persistent\r\n volume is being resized.\r\n type: string\r\n "] +[21.724024, "o", " status:\r\n type: string\r\n type:\r\n description: ConditionType represents reconciler state\r\n type: string\r\n required:\r\n - status\r\n - type\r\n type: object\r\n type: array\r\n consecutiveReconcileFailures:\r\n type: integer\r\n consecutiveReconcileSuccesses:\r\n type: integer\r\n deploy:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n finished:\r\n type: boolean\r\n "] +[21.724069, "o", " kapp:\r\n description: KappDeployStatus contains the associated AppCR deployed\r\n resources\r\n properties:\r\n associatedResources:\r\n description: AssociatedResources contains the associated App\r\n label, namespaces and GKs\r\n properties:\r\n groupKinds:\r\n items:\r\n description: GroupKind specifies a Group and a Kind,\r\n but does not force a version. This is useful for\r\n identifying concepts during lookup stages without\r\n having partially valid types\r\n properties:\r\n "] +[21.724096, "o", " group:\r\n type: string\r\n kind:\r\n type: string\r\n required:\r\n - group\r\n - kind\r\n type: object\r\n type: array\r\n label:\r\n type: string\r\n namespaces:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n startedAt:\r\n format: date-time\r\n type: string\r\n "] +[21.724114, "o", " stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n fetch:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n startedAt:\r\n format: date-time\r\n type: string\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n "] +[21.724142, "o", " type: object\r\n friendlyDescription:\r\n type: string\r\n inspect:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n managedAppName:\r\n type: string\r\n observedGeneration:\r\n description: Populated based on metadata.generation when controller\r\n observes a change to the resource; if "] +[21.724174, "o", "this value is out of data,\r\n other status fields do not reflect latest state\r\n format: int64\r\n type: integer\r\n template:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n stderr:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n usefulErrorMessage:\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n served: true\r\n storage: true\r\n subresources:\r\n "] +[21.724217, "o", " status: {}\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.724282, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackagemetadatas.internal.packaging.carvel.dev\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackagemetadatas.internal.packaging.carvel.dev\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) "] +[21.724329, "o", "\u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"6e0215c0-97bf-48c7-b0e8-ce946b686913\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"internalpackagemetadatas.internal.packaging.carvel.dev\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"6e0215c0-97bf-48c7-b0e8-ce946b686913\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n name: internalpackagemetadatas.internal.packaging.carvel.dev\r\n spec:\r\n group: internal.packaging.carvel.dev\r\n names:\r\n "] +[21.72436, "o", " kind: InternalPackageMetadata\r\n listKind: InternalPackageMetadataList\r\n plural: internalpackagemetadatas\r\n singular: internalpackagemetadata\r\n scope: Namespaced\r\n versions:\r\n - name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n properties:\r\n apiVersion:\r\n description: 'APIVersion defines the versioned schema of this representation\r\n of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers may infer "] +[21.724397, "o", "this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: object\r\n spec:\r\n properties:\r\n categories:\r\n description: Classifiers of the package (optional; Array of strings)\r\n items:\r\n type: string\r\n type: array\r\n displayName:\r\n description: Human friendly name of the package (optional; string)\r\n type: string\r\n iconSVGBase64:\r\n description: Base64 encoded icon (optional; string)\r\n type: string\r\n "] +[21.724437, "o", " longDescription:\r\n description: Long description of the package (optional; string)\r\n type: string\r\n maintainers:\r\n description: List of maintainer info for the package. Currently only\r\n supports the name key. (optional; array of maintner info)\r\n items:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n providerName:\r\n description: Name of the entity distributing the package (optional;\r\n string)\r\n type: string\r\n shortDescription:\r\n description: Short desription of the package (optional; string)\r\n type: "] +[21.724479, "o", "string\r\n supportDescription:\r\n description: Description of the support available for the package\r\n (optional; string)\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n served: true\r\n storage: true\r\n subresources:\r\n status: {}\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.724545, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackages.internal.packaging.carvel.dev\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackages.internal.packaging.carvel.dev\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m"] +[21.724569, "o", "\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"56422c89-dc49-4e10-8ea1-3322509fd6d8\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"internalpackages.internal.packaging.carvel.dev\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"56422c89-dc49-4e10-8ea1-3322509fd6d8\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n name: internalpackages.internal.packaging.carvel.dev\r\n spec:\r\n group: internal.packaging.carvel.dev\r\n names:\r\n kind: InternalPackage\r\n "] +[21.724583, "o", " listKind: InternalPackageList\r\n plural: internalpackages\r\n singular: internalpackage\r\n scope: Namespaced\r\n versions:\r\n - name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n properties:\r\n apiVersion:\r\n description: 'APIVersion defines the versioned schema of this representation\r\n of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers may infer this from the endpoint the client\r\n sub"] +[21.724637, "o", "mits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: object\r\n spec:\r\n properties:\r\n capacityRequirementsDescription:\r\n description: 'System requirements needed to install the package. Note:\r\n these requirements will not be verified by kapp-controller on installation.\r\n (optional; string)'\r\n type: string\r\n includedSoftware:\r\n description: IncludedSoftware can be used to show the software contents\r\n of a Package. This is especially useful if the underlying versions\r\n do not match the Package version\r\n "] +[21.724677, "o", " items:\r\n description: IncludedSoftware contains the underlying Software Contents\r\n of a Package\r\n properties:\r\n description:\r\n type: string\r\n displayName:\r\n type: string\r\n version:\r\n type: string\r\n type: object\r\n type: array\r\n kappControllerVersionSelection:\r\n description: KappControllerVersionSelection specifies the versions\r\n of kapp-controller which can install this package\r\n properties:\r\n constraints:\r\n type: string\r\n type: object\r\n kubernetesVersionSe"] +[21.724727, "o", "lection:\r\n description: KubernetesVersionSelection specifies the versions of\r\n k8s which this package can be installed on\r\n properties:\r\n constraints:\r\n type: string\r\n type: object\r\n licenses:\r\n description: Description of the licenses that apply to the package\r\n software (optional; Array of strings)\r\n items:\r\n type: string\r\n type: array\r\n refName:\r\n description: The name of the PackageMetadata associated with this\r\n version Must be a valid PackageMetadata name (see PackageMetadata\r\n CR for details) Cannot be empty\r\n type: string\r\n "] +[21.72475, "o", " releaseNotes:\r\n description: Version release notes (optional; string)\r\n type: string\r\n releasedAt:\r\n description: Timestamp of release (iso8601 formatted string; optional)\r\n format: date-time\r\n nullable: true\r\n type: string\r\n template:\r\n properties:\r\n spec:\r\n properties:\r\n canceled:\r\n description: Cancels current and future reconciliations (optional;\r\n default=false)\r\n type: boolean\r\n cluster:\r\n description: Specifies that app should be deployed to destination\r\n clu"] +[21.724775, "o", "ster; by default, cluster is same as where this resource\r\n resides (optional; v0.5.0+)\r\n properties:\r\n kubeconfigSecretRef:\r\n description: Specifies secret containing kubeconfig (required)\r\n properties:\r\n key:\r\n description: Specifies key that contains kubeconfig\r\n (optional)\r\n type: string\r\n name:\r\n description: Specifies secret name within app's namespace\r\n (required)\r\n type: string\r\n type: object\r\n namespace:\r\n"] +[21.724812, "o", " description: Specifies namespace in destination cluster\r\n (optional)\r\n type: string\r\n type: object\r\n defaultNamespace:\r\n description: Specifies the default namespace to install the\r\n App resources, by default this is same as the App's namespace\r\n (optional; v0.48.0+)\r\n type: string\r\n deploy:\r\n items:\r\n properties:\r\n kapp:\r\n description: Use kapp to deploy resources\r\n properties:\r\n delete:\r\n "] +[21.724843, "o", " description: Configuration for delete command (optional)\r\n properties:\r\n rawOptions:\r\n description: Pass through options to kapp delete\r\n (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n inspect:\r\n description: 'Configuration for inspect command\r\n (optional) as of kapp-controller v0.31.0, inspect\r\n is disabled by default add rawOptions or use an\r\n empty inspect config like "] +[21.724875, "o", "`inspect: {}` to enable'\r\n properties:\r\n rawOptions:\r\n description: Pass through options to kapp inspect\r\n (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n intoNs:\r\n description: Override namespace for all resources\r\n (optional)\r\n type: string\r\n mapNs:\r\n description: Provide custom namespace override mapping\r\n "] +[21.724901, "o", " (optional)\r\n items:\r\n type: string\r\n type: array\r\n rawOptions:\r\n description: Pass through options to kapp deploy\r\n (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: array\r\n fetch:\r\n items:\r\n properties:\r\n git:\r\n description: Uses git to clone repository\r\n "] +[21.724921, "o", " properties:\r\n depth:\r\n description: depth of commits to fetch; 1 (default)\r\n means only latest commit, 0 means everything (optional)\r\n format: int64\r\n type: integer\r\n forceHTTPBasicAuth:\r\n description: Force the usage of HTTP Basic Auth\r\n when Basic Auth is provided (optional)\r\n type: boolean\r\n lfsSkipSmudge:\r\n description: Skip lfs download (optional)\r\n type: boolean\r\n ref:\r\n "] +[21.724963, "o", " description: Branch, tag, commit; origin is the\r\n name of the remote (optional)\r\n type: string\r\n refSelection:\r\n description: Specifies a strategy to resolve to\r\n an explicit ref (optional; v0.24.0+)\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n "] +[21.725009, "o", " type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n secretRef:\r\n description: 'Secret with auth details. allowed\r\n keys: ssh-privatekey, ssh-knownhosts, username,\r\n password (optional) (if ssh-knownhosts is not\r\n specified, git will not perform strict host checking)'\r\n properties:\r\n name:\r\n description: Object is expected to be within\r\n "] +[21.725046, "o", " same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of repository (optional)\r\n type: string\r\n url:\r\n description: http or ssh urls are supported (required)\r\n type: string\r\n type: object\r\n helmChart:\r\n description: Uses helm fetch to fetch specified chart\r\n properties:\r\n name:\r\n description: 'Example: stable/redis'\r\n "] +[21.725076, "o", "type: string\r\n repository:\r\n properties:\r\n secretRef:\r\n properties:\r\n name:\r\n description: Object is expected to be within\r\n same namespace\r\n type: string\r\n type: object\r\n url:\r\n description: Repository url; scheme of oci://\r\n will fetch experimental helm oci chart (v0.19.0+)\r\n (required)\r\n type: string\r\n "] +[21.725133, "o", " type: object\r\n version:\r\n type: string\r\n type: object\r\n http:\r\n description: Uses http library to fetch file\r\n properties:\r\n secretRef:\r\n description: 'Secret to provide auth details (optional)\r\n Secret may include one or more keys: username,\r\n password'\r\n properties:\r\n name:\r\n description: Object is expected to be within\r\n same namespace\r\n "] +[21.725168, "o", " type: string\r\n type: object\r\n sha256:\r\n description: Checksum to verify after download (optional)\r\n type: string\r\n subPath:\r\n description: Grab only portion of download (optional)\r\n type: string\r\n url:\r\n description: 'URL can point to one of following\r\n formats: text, tgz, zip http and https url are\r\n supported; plain file, tgz and tar types are supported\r\n (required)'\r\n type: string\r\n "] +[21.725211, "o", " type: object\r\n image:\r\n description: Pulls content from Docker/OCI registry\r\n properties:\r\n secretRef:\r\n description: 'Secret may include one or more keys:\r\n username, password, token. By default anonymous\r\n access is used for authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within\r\n same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n "] +[21.725243, "o", " description: Grab only portion of image (optional)\r\n type: string\r\n tagSelection:\r\n description: Specifies a strategy to choose a tag\r\n (optional; v0.24.0+) if specified, do not include\r\n a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n "] +[21.725266, "o", " items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n url:\r\n description: 'Docker image url; unqualified, tagged,\r\n or digest references supported (required) Example:\r\n username/app1-config:v0.1.0'\r\n type: string\r\n type: object\r\n imgpkgBundle:\r\n description: Pulls imgpkg bundle from Docker/OCI registry\r\n (v0.17.0+)\r\n "] +[21.725334, "o", " properties:\r\n image:\r\n description: Docker image url; unqualified, tagged,\r\n or digest references supported (required)\r\n type: string\r\n secretRef:\r\n description: 'Secret may include one or more keys:\r\n username, password, token. By default anonymous\r\n access is used for authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within\r\n same namespace\r\n type: string\r\n"] +[21.736225, "o", " type: object\r\n tagSelection:\r\n description: Specifies a strategy to choose a tag\r\n (optional; v0.24.0+) if specified, do not include\r\n a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n t"] +[21.736258, "o", "ype: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n type: object\r\n inline:\r\n description: Pulls content from within this resource;\r\n or other resources in the cluster\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their\r\n content; not recommended for sensitive values\r\n "] +[21.73635, "o", " as CR is not encrypted (optional)\r\n type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and config\r\n maps; data values are recommended to be placed\r\n in secrets (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place\r\n files found in secret (optional)\r\n type: string\r\n "] +[21.736414, "o", " name:\r\n type: string\r\n type: object\r\n secretRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place\r\n files found in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n "] +[21.736455, "o", " path:\r\n description: Relative path to place the fetched artifacts\r\n type: string\r\n type: object\r\n type: array\r\n noopDelete:\r\n description: Deletion requests for the App will result in\r\n the App CR being deleted, but its associated resources will\r\n not be deleted (optional; default=false; v0.18.0+)\r\n type: boolean\r\n paused:\r\n description: Pauses _future_ reconciliation; does _not_ affect\r\n currently running reconciliation (optional; default=false)\r\n type: boolean\r\n serviceAccountName:\r\n "] +[21.73649, "o", " description: Specifies that app should be deployed authenticated\r\n via given service account, found in this namespace (optional;\r\n v0.6.0+)\r\n type: string\r\n syncPeriod:\r\n description: Specifies the length of time to wait, in time\r\n + unit format, before reconciling. Always >= 30s. If value\r\n below 30s is specified, 30s will be used. (optional; v0.9.0+;\r\n default=30s)\r\n type: string\r\n template:\r\n items:\r\n properties:\r\n cue:\r\n properties:\r\n inputE"] +[21.736521, "o", "xpression:\r\n description: Cue expression for single path component,\r\n can be used to unify ValuesFrom into a given field\r\n (optional)\r\n type: string\r\n outputExpression:\r\n description: Cue expression to output, default will\r\n export all visible fields (optional)\r\n type: string\r\n paths:\r\n description: Explicit list of files/directories\r\n (optional)\r\n items:\r\n type: string\r\n type: array\r\n"] +[21.73653, "o", " valuesFrom:\r\n description: Provide values (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n properties:\r\n fieldPath:\r\n "] +[21.736589, "o", " description: 'Required: Selects\r\n a field of the app: only annotations,\r\n labels, uid, name and namespace\r\n are supported.'\r\n type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running\r\n KappController version, defaults\r\n (empty) to retrieving the current\r\n running version.. Can be manually\r\n supplied instead.'\r\n "] +[21.736623, "o", " properties:\r\n version:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running\r\n KubernetesAPIs from cluster, defaults\r\n (empty) to retrieving the APIs\r\n from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n "] +[21.736634, "o", " groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running\r\n Kubernetes version from cluster,\r\n defaults (empty) to retrieving\r\n the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n "] +[21.736714, "o", " version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n "] +[21.736748, "o", " type: object\r\n type: array\r\n type: object\r\n helmTemplate:\r\n description: Use helm template command to render helm\r\n chart\r\n properties:\r\n kubernetesAPIs:\r\n description: 'Optional: Use kubernetes group/versions\r\n resources available in the live cluster'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n "] +[21.736801, "o", " type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get Kubernetes version,\r\n defaults (empty) to retrieving the version from\r\n the cluster. Can be manually overridden to a value\r\n instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n description: Set name explicitly, default is App\r\n CR's name (optional; v0.13.0+)\r\n type: string\r\n namespace:\r\n "] +[21.736858, "o", " description: Set namespace explicitly, default is\r\n App CR's namespace (optional; v0.13.0+)\r\n type: string\r\n path:\r\n description: Path to chart (optional; v0.13.0+)\r\n type: string\r\n valuesFrom:\r\n description: One or more secrets, config maps, paths\r\n that provide values (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n "] +[21.736887, "o", " type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n properties:\r\n fieldPath:\r\n description: 'Required: Selects\r\n a field of the app: only annotations,\r\n labels, uid, name and namespace\r\n are supported.'\r\n type: string\r\n kappControllerVe"] +[21.736933, "o", "rsion:\r\n description: 'Optional: Get running\r\n KappController version, defaults\r\n (empty) to retrieving the current\r\n running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running\r\n "] +[21.736973, "o", " KubernetesAPIs from cluster, defaults\r\n (empty) to retrieving the APIs\r\n from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n "] +[21.737023, "o", " description: 'Optional: Get running\r\n Kubernetes version from cluster,\r\n defaults (empty) to retrieving\r\n the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n type: object\r\n type: "] +[21.737049, "o", "array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n jsonnet:\r\n description: TODO implement jsonnet\r\n type: object\r\n kbld:\r\n description: Use kbld to resolve image references to\r"] +[21.737079, "o", "\r\n use digests\r\n properties:\r\n paths:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kustomize:\r\n description: TODO implement kustomize\r\n type: object\r\n sops:\r\n description: Use sops to decrypt *.sops.yml files (optional;\r\n v0.11.0+)\r\n properties:\r\n age:\r\n properties:\r\n privateKeysSecretRef"] +[21.737092, "o", ":\r\n description: Secret with private armored PGP\r\n private keys (required)\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n paths:\r\n description: Lists paths to decrypt explicitly (optional;\r\n v0.13.0+)\r\n items:\r\n type: string\r\n type: array\r\n pgp:\r\n description: Use PGP to decrypt files (required"] +[21.73718, "o", ")\r\n properties:\r\n privateKeysSecretRef:\r\n description: Secret with private armored PGP\r\n private keys (required)\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: object\r\n ytt:\r\n description: Use ytt to template configuration\r\n properties:\r\n fileMarks:\r\n description: Control metadata about input files\r\n "] +[21.737233, "o", " passed to ytt (optional; v0.18.0+) see https://carvel.dev/ytt/docs/latest/file-marks/\r\n for more details\r\n items:\r\n type: string\r\n type: array\r\n ignoreUnknownComments:\r\n description: Ignores comments that ytt doesn't recognize\r\n (optional; default=false)\r\n type: boolean\r\n inline:\r\n description: Specify additional files, including\r\n data values (optional)\r\n properties:\r\n paths:\r\n "] +[21.737282, "o", " additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their\r\n content; not recommended for sensitive values\r\n as CR is not encrypted (optional)\r\n type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and\r\n config maps; data values are recommended to\r\n be placed in secrets (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n "] +[21.737304, "o", " properties:\r\n directoryPath:\r\n description: Specifies where to place\r\n files found in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place\r\n files found in secret (optional)\r\n "] +[21.737312, "o", " type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n paths:\r\n description: Lists paths to provide to ytt explicitly\r\n (optional)\r\n items:\r\n type: string\r\n type: array\r\n strict:\r\n description: Forces strict mode https://github.com/k14s/ytt/blob/develop/docs"] +[21.737404, "o", "/strict.md\r\n (optional; default=false)\r\n type: boolean\r\n valuesFrom:\r\n description: Provide values via ytt's --data-values-file\r\n (optional; v0.19.0-alpha.9)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n "] +[21.737672, "o", " items:\r\n properties:\r\n fieldPath:\r\n description: 'Required: Selects\r\n a field of the app: only annotations,\r\n labels, uid, name and namespace\r\n are supported.'\r\n type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running\r\n KappController version, defaults\r\n (empty) to retrieving the"] +[21.737702, "o", " current\r\n running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running\r\n KubernetesAPIs from cluster, defaults\r\n (empty) to retrieving the APIs\r\n from the cluster. Can be manually\r\n "] +[21.737762, "o", " supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running\r\n Kubernetes version from cluster,\r\n defaults (empty) to retrieving\r\n "] +[21.737814, "o", " the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n "] +[21.737879, "o", " properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n valuesSchema:\r\n description: valuesSchema can be used to show template values that\r\n can be configured by users when a Package is installed in an OpenAPI\r\n schema format.\r\n properties:\r\n ope"] +[21.73794, "o", "nAPIv3:\r\n nullable: true\r\n type: object\r\n x-kubernetes-preserve-unknown-fields: true\r\n type: object\r\n version:\r\n description: Package version; Referenced by PackageInstall; Must be\r\n valid semver (required) Cannot be empty\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n served: true\r\n storage: true\r\n subresources:\r\n status: {}\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.737999, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packageinstalls.packaging.carvel.dev\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packageinstalls.packaging.carvel.dev\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b["] +[21.738054, "o", "0m\u001b[0m live_uid = \"f233bb96-7167-46d7-9cf5-7560c8004947\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"packageinstalls.packaging.carvel.dev\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"f233bb96-7167-46d7-9cf5-7560c8004947\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n name: packageinstalls.packaging.carvel.dev\r\n spec:\r\n group: packaging.carvel.dev\r\n names:\r\n categories:\r\n - carvel\r\n kind: PackageInstall"] +[21.73814, "o", "\r\n listKind: PackageInstallList\r\n plural: packageinstalls\r\n shortNames:\r\n - pkgi\r\n singular: packageinstall\r\n scope: Namespaced\r\n versions:\r\n - additionalPrinterColumns:\r\n - description: PackageMetadata name\r\n jsonPath: .spec.packageRef.refName\r\n name: Package name\r\n type: string\r\n - description: PackageMetadata version\r\n jsonPath: .status.version\r\n name: Package version\r\n type: string\r\n - description: Friendly description\r\n jsonPath: .status.friendlyDescription\r\n name: Description\r\n type: string\r\n - description: Time since creation\r\n jsonPath: .metadata.creationTimestamp\r\n name: Age\r\n type: date\r\n name: v1alpha1\r\n "] +[21.738183, "o", " schema:\r\n openAPIV3Schema:\r\n description: A Package Install is an actual installation of a package and\r\n its underlying resources on a Kubernetes cluster. It is represented in kapp-controller\r\n by a PackageInstall CR. A PackageInstall CR must reference a Package CR.\r\n properties:\r\n apiVersion:\r\n description: 'APIVersion defines the versioned schema of this representation\r\n of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers m"] +[21.738211, "o", "ay infer this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: object\r\n spec:\r\n properties:\r\n canceled:\r\n description: Canceled when set to true will stop all active changes\r\n type: boolean\r\n cluster:\r\n description: Specifies that Package should be deployed to destination\r\n cluster; by default, cluster is same as where this resource resides\r\n (optional)\r\n properties:\r\n kubeconfigSecretRef:\r\n description: Specifies secret containi"] +[21.738258, "o", "ng kubeconfig (required)\r\n properties:\r\n key:\r\n description: Specifies key that contains kubeconfig (optional)\r\n type: string\r\n name:\r\n description: Specifies secret name within app's namespace\r\n (required)\r\n type: string\r\n type: object\r\n namespace:\r\n description: Specifies namespace in destination cluster (optional)\r\n type: string\r\n type: object\r\n defaultNamespace:\r\n description: Specifies the default namespace to install the Package\r\n resources, by default this is same as the PackageInstall namespace\r\n "] +[21.738292, "o", " (optional; v0.48.0+)\r\n type: string\r\n noopDelete:\r\n description: When NoopDelete set to true, PackageInstall deletion\r\n should delete PackageInstall/App CR but preserve App's associated\r\n resources.\r\n type: boolean\r\n packageRef:\r\n description: Specifies the name of the package to install (required)\r\n properties:\r\n refName:\r\n type: string\r\n versionSelection:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n "] +[21.738368, "o", " items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n paused:\r\n description: Paused when set to true will ignore all pending changes,\r\n once it set back to false, pending changes will be applied\r\n type: boolean\r\n serviceAccountName:\r\n description: Specifies service account that will be used to install\r\n underlying package contents\r\n type: string\r\n syncPeriod:\r\n description: Controls frequency of App reconciliation in time + unit\r\n format. Always >= 30s. If value below 30s is specified, 30s will\r\n "] +[21.738408, "o", " be used.\r\n type: string\r\n values:\r\n description: Values to be included in package's templating step (currently\r\n only included in the first templating step) (optional)\r\n items:\r\n properties:\r\n secretRef:\r\n properties:\r\n key:\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n status:\r\n properties:\r\n conditions:\r\n items:\r\n properties:\r\n "] +[21.738439, "o", " message:\r\n description: Human-readable message indicating details about\r\n last transition.\r\n type: string\r\n reason:\r\n description: Unique, this should be a short, machine understandable\r\n string that gives the reason for condition's last transition.\r\n If it reports \"ResizeStarted\" that means the underlying persistent\r\n volume is being resized.\r\n type: string\r\n status:\r\n type: string\r\n type:\r\n description: ConditionType represents reconciler state\r\n type: string\r\n required:\r\n "] +[21.738485, "o", " - status\r\n - type\r\n type: object\r\n type: array\r\n friendlyDescription:\r\n type: string\r\n lastAttemptedVersion:\r\n description: LastAttemptedVersion specifies what version was last\r\n attempted to be installed. It does _not_ indicate it was successfully\r\n installed.\r\n type: string\r\n observedGeneration:\r\n description: Populated based on metadata.generation when controller\r\n observes a change to the resource; if this value is out of data,\r\n other status fields do not reflect latest state\r\n format: int64\r\n type: integer\r\n usefulErrorMessage:\r\n "] +[21.738523, "o", " type: string\r\n version:\r\n description: TODO this is desired resolved version (not actually deployed)\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n served: true\r\n storage: true\r\n subresources:\r\n status: {}\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.738613, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packagerepositories.packaging.carvel.dev\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packagerepositories.packaging.carvel.dev\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n "] +[21.73863, "o", "\u001b[31m-\u001b[0m\u001b[0m live_uid = \"5147ffdc-d9b0-4fa1-a196-cf3a5776b99d\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"packagerepositories.packaging.carvel.dev\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"5147ffdc-d9b0-4fa1-a196-cf3a5776b99d\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n annotations:\r\n packaging.carvel.dev/global-namespace: kapp-controller-packaging-global\r\n name: packagerepositories.packaging.carvel.dev\r\n spec:\r\n group: pa"] +[21.738663, "o", "ckaging.carvel.dev\r\n names:\r\n categories:\r\n - carvel\r\n kind: PackageRepository\r\n listKind: PackageRepositoryList\r\n plural: packagerepositories\r\n shortNames:\r\n - pkgr\r\n singular: packagerepository\r\n scope: Namespaced\r\n versions:\r\n - additionalPrinterColumns:\r\n - description: Time since creation\r\n jsonPath: .metadata.creationTimestamp\r\n name: Age\r\n type: date\r\n - description: Friendly description\r\n jsonPath: .status.friendlyDescription\r\n name: Description\r\n type: string\r\n name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n description: A package repository is a collection of packages and their metadata.\r\n Similar to a maven repositor"] +[21.7387, "o", "y or a rpm repository, adding a package repository\r\n to a cluster gives users of that cluster the ability to install any of the\r\n packages from that repository.\r\n properties:\r\n apiVersion:\r\n description: 'APIVersion defines the versioned schema of this representation\r\n of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers may infer this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8"] +[21.738745, "o", "s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: object\r\n spec:\r\n properties:\r\n fetch:\r\n properties:\r\n git:\r\n description: Uses git to clone repository containing package list\r\n properties:\r\n depth:\r\n description: depth of commits to fetch; 1 (default) means\r\n only latest commit, 0 means everything (optional)\r\n format: int64\r\n type: integer\r\n forceHTTPBasicAuth:\r\n description: Force the usage of HTTP Basic Auth when Basic\r\n "] +[21.738791, "o", " Auth is provided (optional)\r\n type: boolean\r\n lfsSkipSmudge:\r\n description: Skip lfs download (optional)\r\n type: boolean\r\n ref:\r\n description: Branch, tag, commit; origin is the name of the\r\n remote (optional)\r\n type: string\r\n refSelection:\r\n description: Specifies a strategy to resolve to an explicit\r\n ref (optional; v0.24.0+)\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n "] +[21.73884, "o", " prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n secretRef:\r\n description: 'Secret with auth details. allowed keys: ssh-privatekey,\r\n ssh-knownhosts, username, password (optional) (if ssh-knownhosts\r\n is not specified, git will not perform strict host checking)'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namesp"] +[21.738876, "o", "ace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of repository (optional)\r\n type: string\r\n url:\r\n description: http or ssh urls are supported (required)\r\n type: string\r\n type: object\r\n http:\r\n description: Uses http library to fetch file containing packages\r\n properties:\r\n secretRef:\r\n description: 'Secret to provide auth details (optional) Secret\r\n may include one or more keys: username, password'\r\n properties:\r\n "] +[21.738907, "o", " name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n sha256:\r\n description: Checksum to verify after download (optional)\r\n type: string\r\n subPath:\r\n description: Grab only portion of download (optional)\r\n type: string\r\n url:\r\n description: 'URL can point to one of following formats: text,\r\n tgz, zip http and https url are supported; plain file, tgz\r\n and tar types are supported (required)'\r\n type: string\r\n type: object\r\n "] +[21.738969, "o", " image:\r\n description: Image url; unqualified, tagged, or digest references\r\n supported (required)\r\n properties:\r\n secretRef:\r\n description: 'Secret may include one or more keys: username,\r\n password, token. By default anonymous access is used for\r\n authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of image (optional)\r\n type: string\r\n "] +[21.73901, "o", " tagSelection:\r\n description: Specifies a strategy to choose a tag (optional;\r\n v0.24.0+) if specified, do not include a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n ur"] +[21.739051, "o", "l:\r\n description: 'Docker image url; unqualified, tagged, or digest\r\n references supported (required) Example: username/app1-config:v0.1.0'\r\n type: string\r\n type: object\r\n imgpkgBundle:\r\n description: Pulls imgpkg bundle from Docker/OCI registry\r\n properties:\r\n image:\r\n description: Docker image url; unqualified, tagged, or digest\r\n references supported (required)\r\n type: string\r\n secretRef:\r\n description: 'Secret may include one or more keys: username,\r\n password, token. By default anonymous access is used for\r\n "] +[21.739087, "o", " authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n tagSelection:\r\n description: Specifies a strategy to choose a tag (optional;\r\n v0.24.0+) if specified, do not include a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n "] +[21.739122, "o", " items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n type: object\r\n inline:\r\n description: Pull content from within this resource; or other\r\n resources in the cluster\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their content;\r\n not recommended for sensitive values as CR is not encrypted\r\n (optional)\r\n "] +[21.73917, "o", " type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and config maps;\r\n data values are recommended to be placed in secrets (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files found\r\n in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n "] +[21.739211, "o", " properties:\r\n directoryPath:\r\n description: Specifies where to place files found\r\n in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n type: object\r\n paused:\r\n description: Paused when set to true will ignore all pending changes,\r\n once it set back to false, pending changes will be applied\r\n type: boolean\r\n syncPeriod:\r\n description: Controls frequency "] +[21.739262, "o", "of PackageRepository reconciliation\r\n type: string\r\n required:\r\n - fetch\r\n type: object\r\n status:\r\n properties:\r\n conditions:\r\n items:\r\n properties:\r\n message:\r\n description: Human-readable message indicating details about\r\n last transition.\r\n type: string\r\n reason:\r\n description: Unique, this should be a short, machine understandable\r\n string that gives the reason for condition's last transition.\r\n If it reports \"ResizeStarted\" that means the underlying persistent\r\n volume is being resized.\r\n "] +[21.739299, "o", " type: string\r\n status:\r\n type: string\r\n type:\r\n description: ConditionType represents reconciler state\r\n type: string\r\n required:\r\n - status\r\n - type\r\n type: object\r\n type: array\r\n consecutiveReconcileFailures:\r\n type: integer\r\n consecutiveReconcileSuccesses:\r\n type: integer\r\n deploy:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n finished:\r\n "] +[21.739341, "o", " type: boolean\r\n kapp:\r\n description: KappDeployStatus contains the associated AppCR deployed\r\n resources\r\n properties:\r\n associatedResources:\r\n description: AssociatedResources contains the associated App\r\n label, namespaces and GKs\r\n properties:\r\n groupKinds:\r\n items:\r\n description: GroupKind specifies a Group and a Kind,\r\n but does not force a version. This is useful for\r\n identifying concepts during lookup stages without\r\n having partially valid types\r\n "] +[21.739389, "o", " properties:\r\n group:\r\n type: string\r\n kind:\r\n type: string\r\n required:\r\n - group\r\n - kind\r\n type: object\r\n type: array\r\n label:\r\n type: string\r\n namespaces:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n startedAt:\r\n format: date-time\r\n "] +[21.739422, "o", " type: string\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n fetch:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n startedAt:\r\n format: date-time\r\n type: string\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n "] +[21.739467, "o", " type: string\r\n type: object\r\n friendlyDescription:\r\n type: string\r\n observedGeneration:\r\n description: Populated based on metadata.generation when controller\r\n observes a change to the resource; if this value is out of data,\r\n other status fields do not reflect latest state\r\n format: int64\r\n type: integer\r\n template:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n stderr:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n "] +[21.739511, "o", " type: string\r\n type: object\r\n usefulErrorMessage:\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n served: true\r\n storage: true\r\n subresources:\r\n status: {}\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.739551, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiregistration.k8s.io/v1/apiservices/v1alpha1.data.packaging.carvel.dev\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"apiregistration.k8s.io/v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/apiregistration.k8s.io/v1/apiservices/v1alpha1.data.packaging.carvel.dev\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"APIService\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"5367d3"] +[21.739599, "o", "26-215d-4d2d-a7f2-eab1e2b8dc69\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"v1alpha1.data.packaging.carvel.dev\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"5367d326-215d-4d2d-a7f2-eab1e2b8dc69\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiregistration.k8s.io/v1\r\n kind: APIService\r\n metadata:\r\n name: v1alpha1.data.packaging.carvel.dev\r\n spec:\r\n group: data.packaging.carvel.dev\r\n groupPriorityMinimum: 100\r\n service:\r\n name: packaging-api\r\n namespace: kapp-controller\r\n vers"] +[21.739632, "o", "ion: v1alpha1\r\n versionPriority: 100\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.739696, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"apps/v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"Deployment\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"ddbd432a-32a3-40b4-ac3b-5d4eee7f836f\" \u001b[90m-"] +[21.739711, "o", "> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"kapp-controller\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m namespace = \"kapp-controller\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"ddbd432a-32a3-40b4-ac3b-5d4eee7f836f\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apps/v1\r\n kind: Deployment\r\n metadata:\r\n annotations:\r\n kapp-controller.carvel.dev/version: v0.55.1\r\n kbld.k14s.io/images: |\r\n - origins:\r\n - local:\r\n path: /home/runner/work/kapp-controller/kapp-controller\r\n "] +[21.739733, "o", " - git:\r\n dirty: true\r\n remoteURL: https://github.com/carvel-dev/kapp-controller\r\n sha: dd15f4ff05bc0d3a17ab739b3b86d84a1ae5d024\r\n tags:\r\n - v0.55.1\r\n url: ghcr.io/carvel-dev/kapp-controller@sha256:cf250cb1d03ba0f391fa35a9424ace7327a07bd69b41c94d62e69c58d143566e\r\n name: kapp-controller\r\n namespace: kapp-controller\r\n spec:\r\n replicas: 1\r\n revisionHistoryLimit: 0\r\n selector:\r\n matchLabels:\r\n app: kapp-controller\r\n template:\r\n metadata:\r\n labels:\r\n app: kapp-controller\r\n spec:\r\n containers:\r\n - args:\r\n - -packaging-global-namespace=kapp-controller-packaging-global\r\n - -enable-api-priority-and-fairness=True\r\n "] +[21.73979, "o", " - -tls-cipher-suites=\r\n env:\r\n - name: KAPPCTRL_MEM_TMP_DIR\r\n value: /etc/kappctrl-mem-tmp\r\n - name: KAPPCTRL_SIDECAREXEC_SOCK\r\n value: /etc/kappctrl-mem-tmp/sidecarexec.sock\r\n - name: KAPPCTRL_SYSTEM_NAMESPACE\r\n valueFrom:\r\n fieldRef:\r\n fieldPath: metadata.namespace\r\n - name: KAPPCTRL_API_PORT\r\n value: \"8443\"\r\n image: ghcr.io/carvel-dev/kapp-controller@sha256:cf250cb1d03ba0f391fa35a9424ace7327a07bd69b41c94d62e69c58d143566e\r\n name: kapp-controller\r\n ports:\r\n - containerPort: 8443\r\n name: api\r\n protocol: TCP\r\n - containerPort: 8080\r\n name: metrics\r\n protocol: TCP\r\n resources:\r\n "] +[21.739825, "o", " requests:\r\n cpu: 120m\r\n memory: 100Mi\r\n securityContext:\r\n allowPrivilegeEscalation: false\r\n capabilities:\r\n drop:\r\n - ALL\r\n readOnlyRootFilesystem: true\r\n runAsNonRoot: true\r\n seccompProfile:\r\n type: RuntimeDefault\r\n volumeMounts:\r\n - mountPath: /etc/kappctrl-mem-tmp\r\n name: template-fs\r\n - mountPath: /home/kapp-controller\r\n name: home\r\n - args:\r\n - --sidecarexec\r\n env:\r\n - name: KAPPCTRL_SIDECAREXEC_SOCK\r\n value: /etc/kappctrl-mem-tmp/sidecarexec.sock\r\n - name: IMGPKG_ACTIVE_KEYCHAINS\r\n value: gke,aks,ecr\r\n "] +[21.739881, "o", " image: ghcr.io/carvel-dev/kapp-controller@sha256:cf250cb1d03ba0f391fa35a9424ace7327a07bd69b41c94d62e69c58d143566e\r\n name: kapp-controller-sidecarexec\r\n resources:\r\n requests:\r\n cpu: 120m\r\n memory: 100Mi\r\n securityContext:\r\n allowPrivilegeEscalation: false\r\n capabilities:\r\n drop:\r\n - ALL\r\n readOnlyRootFilesystem: false\r\n runAsNonRoot: true\r\n seccompProfile:\r\n type: RuntimeDefault\r\n volumeMounts:\r\n - mountPath: /etc/kappctrl-mem-tmp\r\n name: template-fs\r\n - mountPath: /home/kapp-controller\r\n name: home\r\n - mountPath: /var/run/secrets/kubernetes.io/serviceaccount\r\n name: empty-sa\r"] +[21.73991, "o", "\r\n serviceAccount: kapp-controller-sa\r\n volumes:\r\n - emptyDir:\r\n medium: Memory\r\n name: template-fs\r\n - emptyDir:\r\n medium: Memory\r\n name: home\r\n - emptyDir: {}\r\n name: empty-sa\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.739948, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/kapp-controller-cluster-role-binding\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/kapp-controller-cluster-role-binding\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"ClusterRoleBinding\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b"] +[21.739991, "o", "[0m live_uid = \"885b69a3-2631-49ef-84b9-b9717a57bf5e\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"kapp-controller-cluster-role-binding\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"885b69a3-2631-49ef-84b9-b9717a57bf5e\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRoleBinding\r\n metadata:\r\n name: kapp-controller-cluster-role-binding\r\n roleRef:\r\n apiGroup: rbac.authorization.k8s.io\r\n kind: ClusterRole\r\n name: kapp-controller-cluster-role\r\n subjects:\r\n"] +[21.740016, "o", " - kind: ServiceAccount\r\n name: kapp-controller-sa\r\n namespace: kapp-controller\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.740067, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/pkg-apiserver:system:auth-delegator\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/pkg-apiserver:system:auth-delegator\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"ClusterRoleBinding\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0"] +[21.740098, "o", "m live_uid = \"cebbb0f4-a837-4e2c-8c0a-f6ec0ce7a2b7\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"pkg-apiserver:system:auth-delegator\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"cebbb0f4-a837-4e2c-8c0a-f6ec0ce7a2b7\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRoleBinding\r\n metadata:\r\n name: pkg-apiserver:system:auth-delegator\r\n roleRef:\r\n apiGroup: rbac.authorization.k8s.io\r\n kind: ClusterRole\r\n name: system:auth-delegator\r\n subjects:\r\n "] +[21.740125, "o", " - kind: ServiceAccount\r\n name: kapp-controller-sa\r\n namespace: kapp-controller\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.740175, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-cluster-role\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-cluster-role\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"ClusterRole\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"f3aaa0"] +[21.74022, "o", "4a-e8be-489f-8af0-27130542945a\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"kapp-controller-cluster-role\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"f3aaa04a-e8be-489f-8af0-27130542945a\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRole\r\n metadata:\r\n name: kapp-controller-cluster-role\r\n rules:\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - secrets\r\n verbs:\r\n - create\r\n - get\r\n - list\r\n - watch\r\n "] +[21.74023, "o", " - apiGroups:\r\n - \"\"\r\n resources:\r\n - serviceaccounts\r\n verbs:\r\n - get\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - serviceaccounts/token\r\n verbs:\r\n - create\r\n - apiGroups:\r\n - kappctrl.k14s.io\r\n resources:\r\n - apps\r\n - apps/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - packaging.carvel.dev\r\n resources:\r\n - packageinstalls\r\n - packageinstalls/status\r\n - packageinstalls/finalizers\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - packaging.carvel.dev\r\n resources:\r\n - packagerepositories\r\n - packagerepositories/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - internal.packaging.carvel.dev\r\n "] +[21.740279, "o", " resources:\r\n - internalpackagemetadatas\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - data.packaging.carvel.dev\r\n resources:\r\n - packagemetadatas\r\n - packagemetadatas/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - internal.packaging.carvel.dev\r\n resources:\r\n - internalpackages\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - data.packaging.carvel.dev\r\n resources:\r\n - packages\r\n - packages/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - configmaps\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - apiregistration.k8s.io\r\n resources:\r\n - apiservices\r\n verbs:\r\n - update\r\n - get\r\n "] +[21.740317, "o", " - apiGroups:\r\n - \"\"\r\n resources:\r\n - namespaces\r\n verbs:\r\n - list\r\n - watch\r\n - get\r\n - update\r\n - apiGroups:\r\n - admissionregistration.k8s.io\r\n resources:\r\n - mutatingwebhookconfigurations\r\n - validatingwebhookconfigurations\r\n - validatingadmissionpolicies\r\n - validatingadmissionpolicybindings\r\n verbs:\r\n - list\r\n - watch\r\n - apiGroups:\r\n - authorization.k8s.io\r\n resources:\r\n - subjectaccessreviews\r\n verbs:\r\n - create\r\n - apiGroups:\r\n - flowcontrol.apiserver.k8s.io\r\n resources:\r\n - prioritylevelconfigurations\r\n - flowschemas\r\n verbs:\r\n - list\r\n - watch\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m"] +[21.740328, "o", "\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.74041, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-user-role\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-user-role\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"ClusterRole\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"c47b62e1-ee5"] +[21.740447, "o", "2-41ca-81cc-fc50bc1c8444\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"kapp-controller-user-role\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"c47b62e1-ee52-41ca-81cc-fc50bc1c8444\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRole\r\n metadata:\r\n name: kapp-controller-user-role\r\n rules:\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - secrets\r\n verbs:\r\n - create\r\n - get\r\n - list\r\n - watch\r\n - apiGroup"] +[21.740482, "o", "s:\r\n - \"\"\r\n resources:\r\n - serviceaccounts\r\n verbs:\r\n - get\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - serviceaccounts/token\r\n verbs:\r\n - create\r\n - apiGroups:\r\n - kappctrl.k14s.io\r\n resources:\r\n - apps\r\n - apps/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - packaging.carvel.dev\r\n resources:\r\n - packageinstalls\r\n - packageinstalls/status\r\n - packageinstalls/finalizers\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - configmaps\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - packaging.carvel.dev\r\n resources:\r\n - packagerepositories\r\n - packagerepositories/statu"] +[21.740522, "o", "s\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - internal.packaging.carvel.dev\r\n resources:\r\n - internalpackagemetadatas\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - data.packaging.carvel.dev\r\n resources:\r\n - packagemetadatas\r\n - packagemetadatas/status\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - internal.packaging.carvel.dev\r\n resources:\r\n - internalpackages\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - data.packaging.carvel.dev\r\n resources:\r\n - packages\r\n - packages/status\r\n verbs:\r\n - get\r\n - list\r\n "] +[21.741113, "o", " - watch\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.741167, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/namespaces/kube-system/rolebindings/pkgserver-auth-reader\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/apis/rbac.authorization.k8s.io/v1/namespaces/kube-system/rolebindings/pkgserver-auth-reader\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"RoleBinding\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m l"] +[21.741178, "o", "ive_uid = \"d1b3e2b0-f347-4593-968b-00f640bed7a8\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"pkgserver-auth-reader\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m namespace = \"kube-system\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"d1b3e2b0-f347-4593-968b-00f640bed7a8\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: RoleBinding\r\n metadata:\r\n name: pkgserver-auth-reader\r\n namespace: kube-system\r\n roleRef:\r\n apiGroup: rbac.authorization.k8s.io\r\n kind: Role\r\n "] +[21.741215, "o", " name: extension-apiserver-authentication-reader\r\n subjects:\r\n - kind: ServiceAccount\r\n name: kapp-controller-sa\r\n namespace: kapp-controller\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.741315, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.namespace_app_installs\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"namespace_app_installs\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/api/v1/namespaces/package-installs\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"Namespace\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"cbcb071f-7362-4d03-9fb3-ffe157a134cf\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"package-installs\" \u001b[90m-> null\u001b[0m"] +[21.74135, "o", "\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"cbcb071f-7362-4d03-9fb3-ffe157a134cf\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: Namespace\r\n metadata:\r\n name: package-installs\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for {\r\n \u001b[31m-\u001b[0m\u001b[0m field {\r\n \u001b[31m-\u001b[0m\u001b[0m key = \"status.phase\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m value = \"Active\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m value_type = \"eq\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n "] +[21.741377, "o", " }\r\n }\r\n"] +[21.741426, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.serviceaccount_app_installs\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"serviceaccount_app_installs\" {\r\n \u001b[31m-\u001b[0m\u001b[0m api_version = \"v1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m apply_only = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m field_manager = \"kubectl\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_conflicts = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m force_new = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"/api/v1/namespaces/package-installs/serviceaccounts/package-installs\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"ServiceAccount\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m live_uid = \"221e2b61-40db-475e-b7c5-aa26de2154b3\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name "] +[21.741441, "o", " = \"package-installs\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m namespace = \"package-installs\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m server_side_apply = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"221e2b61-40db-475e-b7c5-aa26de2154b3\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m validate_schema = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_rollout = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: ServiceAccount\r\n metadata:\r\n name: package-installs\r\n namespace: package-installs\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m yaml_incluster = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.747734, "o", "\r\n\u001b[1m # module.educates[0].time_sleep.k8s_app_rbac\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"time_sleep\" \"k8s_app_rbac\" {\r\n \u001b[31m-\u001b[0m\u001b[0m create_duration = \"1s\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m destroy_duration = \"1s\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"2025-06-05T02:13:23Z\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.747877, "o", "\r\n\u001b[1m # module.educates[0].time_sleep.wait_for_kapp_controller\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"time_sleep\" \"wait_for_kapp_controller\" {\r\n \u001b[31m-\u001b[0m\u001b[0m create_duration = \"1s\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m destroy_duration = \"1s\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"2025-06-05T02:13:21Z\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n\u001b[1m # module.gke_for_educates.google_project_iam_binding.cert-manager-and-external-dns-as-dns-admin\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"google_project_iam_binding\" \"cert-manager-and-external-dns-as-dns-admin\" {\r\n \u001b[31m-\u001b[0m\u001b[0m etag = \"BwY2yVMTxv4=\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"educates-testing/roles/dns.admin\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m members = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"serviceAccount:demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"serviceAccount:demo-cluster-external-dns@educates-"] +[21.747944, "o", "testing.iam.gserviceaccount.com\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m project = \"educates-testing\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m role = \"roles/dns.admin\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n\u001b[1m # module.gke_for_educates.google_service_account.cert-manager-gsa\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"google_service_account\" \"cert-manager-gsa\" {\r\n \u001b[31m-\u001b[0m\u001b[0m account_id = \"demo-cluster-cert-manager\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m disabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m display_name = \"Service Account created by TF for cert-manager for cluster demo-cluster\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m email = \"demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"projects/educates-testing/serviceAccounts/demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m member = \"servi"] +[21.747992, "o", "ceAccount:demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"projects/educates-testing/serviceAccounts/demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m project = \"educates-testing\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m unique_id = \"111608200608219501372\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n\u001b[1m # module.gke_for_educates.google_service_account.default\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"google_service_account\" \"default\" {\r\n \u001b[31m-\u001b[0m\u001b[0m account_id = \"demo-cluster\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m disabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m display_name = \"Service Account created by TF for cluster demo-cluster\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m email = \"demo-cluster@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r"] +[21.748051, "o", "\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"projects/educates-testing/serviceAccounts/demo-cluster@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m member = \"serviceAccount:demo-cluster@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"projects/educates-testing/serviceAccounts/demo-cluster@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m project = \"educates-testing\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m unique_id = \"102747492118342705195\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n"] +[21.7481, "o", "\r\n\u001b[1m # module.gke_for_educates.google_service_account.external-dns-gsa\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"google_service_account\" \"external-dns-gsa\" {\r\n \u001b[31m-\u001b[0m\u001b[0m account_id = \"demo-cluster-external-dns\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m disabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m display_name = \"Service Account created by TF for external-dns for cluster demo-cluster\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m email = \"demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"projects/educates-testing/serviceAccounts/demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m member = \"serviceAccount:demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"projects/educates-testing/serviceAccounts/demo-cluster-external-dns@educates-tes"] +[21.748146, "o", "ting.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m project = \"educates-testing\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m unique_id = \"110462152284484577535\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n\u001b[1m # module.gke_for_educates.google_service_account_iam_binding.cert-manager-link-ksa-to-gsa\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"google_service_account_iam_binding\" \"cert-manager-link-ksa-to-gsa\" {\r\n \u001b[31m-\u001b[0m\u001b[0m etag = \"BwY2yVLeV8o=\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"projects/educates-testing/serviceAccounts/demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com/roles/iam.workloadIdentityUser\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m members = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"serviceAccount:educates-testing.svc.id.goog[cert-manager/cert-manager]\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m role = \"roles/iam.w"] +[21.748183, "o", "orkloadIdentityUser\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m service_account_id = \"projects/educates-testing/serviceAccounts/demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.748248, "o", "\r\n\u001b[1m # module.gke_for_educates.google_service_account_iam_binding.external-dns-link-ksa-to-gsa\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"google_service_account_iam_binding\" \"external-dns-link-ksa-to-gsa\" {\r\n \u001b[31m-\u001b[0m\u001b[0m etag = \"BwY2yVKyNn4=\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"projects/educates-testing/serviceAccounts/demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com/roles/iam.workloadIdentityUser\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m members = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"serviceAccount:educates-testing.svc.id.goog[external-dns/external-dns]\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m role = \"roles/iam.workloadIdentityUser\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m service_account_id = \"projects/educates-testing/serviceAccounts/demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.748279, "o", "\r\n\u001b[1m # module.gke_for_educates.local_file.kubeconfig\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"local_file\" \"kubeconfig\" {\r\n \u001b[31m-\u001b[0m\u001b[0m content = <<-EOT\r\n \"apiVersion\": \"v1\"\r\n \"clusters\":\r\n - \"cluster\":\r\n \"certificate-authority-data\": \"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUVMVENDQXBXZ0F3SUJBZ0lSQUpTOEVESU1uOWp2RkRwcEVNbWxQeG93RFFZSktvWklodmNOQVFFTEJRQXcKTHpFdE1Dc0dBMVVFQXhNa05EVTNZV0V4TjJFdE1EWXlaQzAwT1RCa0xUZzFaRFV0TlRNNU1ETXlZVGcxTUdSbApNQ0FYRFRJMU1EWXdOVEF3TkRrMU4xb1lEekl3TlRVd05USTVNREUwT1RVM1dqQXZNUzB3S3dZRFZRUURFeVEwCk5UZGhZVEUzWVMwd05qSmtMVFE1TUdRdE9EVmtOUzAxTXprd016SmhPRFV3WkdVd2dnR2lNQTBHQ1NxR1NJYjMKRFFFQkFRVUFBNElCandBd2dnR0tBb0lCZ1FDbUpuV0ZjQnBwZytrRGZMNEZONy9SaFlHaitUeTZ1U3lDaFhjdQpHUG5tTUMvZlhESWQrc2hHZTdlbCtVYzlzL0xMcENBZ3NyNjNiZkRvaG1vdFpPRmREbW9EbUR3czlheXU4em95CmdaNW1LYlhMZlVYSlBLbmoxWmVjOVJDN0t5c3pNQVhvQmxzdk1kcW9YdkFYb3N4dkxWajVFVGx2T05FbDkxalMKdmZNQWNlWVNOeGRNVmFXeXoxSWdETlorREp4MTBUV2xyRVB"] +[21.748346, "o", "xNDJxWG91b0tYSDJrWk4vQVdPSGNCNUZVSGMwRgoweXJ4bzJSK1FYRldaTzEyTEc4TExaMmk1U0V1RVo0NTdSRkxoNG1nVTlVOUhOMGszVll0L3NCMzEzSmNKczA4Clp0T2FldjBFalh3eGdueC9xWStTZnBsVjBYcW05MnV6S01RdFlOcGxCOE9mSEhEenZCdUZxejVSZ0dlUXovS1AKaytPc2hsL0UrMkhrRjhvLzJNSkl2QU9STm93UFlYL3U4dklOby9Nc3YyYVprSWhxZ0FnS1daYmJjZVZUQ09tTwo1UWFQT1lvVWRHRjYwTSs2TjNzK3pvb2toZlQ0S1JaVVpvZG5tSXBXNjduMUdsSHBFZDVRVVdVRDZ3V0RUL2VrCm45ZXgwRnBZekRYdWk1SHpRcnEzTjh6bGIxVUNBd0VBQWFOQ01FQXdEZ1lEVlIwUEFRSC9CQVFEQWdJRU1BOEcKQTFVZEV3RUIvd1FGTUFNQkFmOHdIUVlEVlIwT0JCWUVGQmxkNWIxU3hHV0E0OVZrM01LeW9nVUp3NzRJTUEwRwpDU3FHU0liM0RRRUJDd1VBQTRJQmdRQlRFY0tlNFdITXFJb2tuRFFCU3FJVG1xUjVrYkxHeUcxU0o2TEVhbm1TClhGYytyT0I1OUJpSEN2R01pcnJJWEdPRE5kQ2ZPc2o2Zmc0MWF4clBKR3lybE9pNVNOVkpiWW1IbWFZa05PakQKeHZTeXd3cnZKazQ0TmhaenMwbU1RdlBqQ1FPK1ROSlJZK05idG91dEVuRzZGUnpsQ0FEaUljZXBOa0Vnb0tieQpnZ2htMWh3Vkw2QVZ1WWcyaG94N1V4V29iTWJpeXVLVFphRitwVWFFOURDcHJRTTdLS21kTHQ3cDRGaUVVNVJvCkJYays0UXVreUlHMWNrQ3hXUEV1YmtiSEQwa3oyeERZdmNxak5aZlpjZEoyZ3dIVEZnNURaSUdGQlZydGtDVjgKZVB4eGgwUHp3aGZEYWg0aW5SNHBkYzA"] +[21.748393, "o", "zK2h3NXZ5RDN5ek1NdzE5M0h2NXN6dldySjdCTXNTbUk4VGhmTXJCeApJU0xRSm1vaWVuTk1qcW82U1QrZG9WSVBYOVZySEhjeWx4a2JIT2oxR0lvTmNQNWtCWXkvZ0dxSk5WUVZ5Mmc5CnNxa0E1Skh0Qkx4QnZaMnRuWk51LzZoTG9JNzUvd1RiVWRPUFpUcHVHNlNwUmFPaUwxL1g2cDNsVExTbG1MWFIKRURwRUdlM0hTdElKWUhrS2pkby9VWFU9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K\"\r\n \"server\": \"https://34.58.163.60\"\r\n \"name\": \"demo-cluster\"\r\n \"contexts\":\r\n - \"context\":\r\n \"cluster\": \"demo-cluster\"\r\n \"user\": \"demo-cluster\"\r\n \"name\": \"demo-cluster\"\r\n \"current-context\": \"demo-cluster\"\r\n \"kind\": \"Config\"\r\n \"users\":\r\n - \"name\": \"demo-cluster\"\r\n \"user\":\r\n \"exec\":\r\n \"apiVersion\": \"client.authentication.k8s.io/v1beta1\"\r\n \"command\": \"gke-gcloud-auth-plugin\"\r\n \"installHint\": |-\r\n Install gke-gcloud-auth-plugin for use with kubectl by following\r\n https://c"] +[21.748448, "o", "loud.google.com/kubernetes-engine/docs/how-to/cluster-access-for-kubectl#install_plugin\r\n \"interactiveMode\": \"IfAvailable\"\r\n EOT \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m content_base64sha256 = \"oaK1on3KmRc/f7FNpoCGlpb8Z3pc7kYXEGdHwAOqI1g=\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m content_base64sha512 = \"TeZlDJ67LE4HrFAGLTPDlJDCQf1um9qQekz9IcQi5Abb7k4/nr6/wdlTogvmwt/MWnqd9yGExafgkRmffpq40Q==\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m content_md5 = \"68833d62c1d2c3c2999cc92dd88eedaf\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m content_sha1 = \"bc06b717c4152a1bd19b8e13b5b55bbe56c324ee\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m content_sha256 = \"a1a2b5a27dca99173f7fb14da680869696fc677a5cee4617106747c003aa2358\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m content_sha512 = \"4de6650c9ebb2c4e07ac50062d33c39490c241fd6e9bda907a4cfd21c422e406dbee4e3f9ebebfc1d953a20be6c2dfcc5a7a9df72184c5a7e091199f7e9ab8d1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m directory_permissi"] +[21.74849, "o", "on = \"0777\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m file_permission = \"0777\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m filename = \"./kubeconfig-demo-cluster.yaml\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"bc06b717c4152a1bd19b8e13b5b55bbe56c324ee\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.748539, "o", "\r\n\u001b[1m # module.token-sa-kubeconfig.kubernetes_cluster_role_binding.automation[0]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubernetes_cluster_role_binding\" \"automation\" {\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"automation\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m metadata {\r\n \u001b[31m-\u001b[0m\u001b[0m annotations = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m generation = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m labels = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"automation\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m resource_version = \"1749088559731519010\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"254b0ffc-d9ba-4596-90b9-ec6a3f990717\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m role_ref {\r\n \u001b[31m-\u001b[0m\u001b[0m api_group = \"rbac.authorization.k8s.io\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"ClusterRole\" \u001b[90m-> "] +[21.748603, "o", "null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"cluster-admin\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m subject {\r\n \u001b[31m-\u001b[0m\u001b[0m kind = \"ServiceAccount\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"automation\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m namespace = \"kube-system\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n }\r\n"] +[21.748638, "o", "\r\n\u001b[1m # module.token-sa-kubeconfig.kubernetes_secret.automation\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubernetes_secret\" \"automation\" {\r\n \u001b[31m-\u001b[0m\u001b[0m binary_data_wo = (write-only attribute) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m data = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m data_wo = (write-only attribute) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"kube-system/automation\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m immutable = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m type = \"kubernetes.io/service-account-token\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m wait_for_service_account_token = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m metadata {\r\n \u001b[31m-\u001b[0m\u001b[0m annotations = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"kubernetes.io/service-account.name\" = \"automation\"\r\n } \u001b[90m-> "] +[21.748649, "o", "null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m generation = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m labels = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"automation\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m namespace = \"kube-system\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m resource_version = \"1749089128081807009\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"5b9f5970-d9f3-4600-94f5-0c778892e2ff\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n }\r\n"] +[21.748724, "o", "\r\n\u001b[1m # module.token-sa-kubeconfig.kubernetes_service_account.automation[0]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubernetes_service_account\" \"automation\" {\r\n \u001b[31m-\u001b[0m\u001b[0m automount_service_account_token = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"kube-system/automation\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m metadata {\r\n \u001b[31m-\u001b[0m\u001b[0m annotations = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m generation = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m labels = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"automation\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m namespace = \"kube-system\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m resource_version = \"1749088557457487013\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"ceff1636-29a6-4bac-a727-89802e5ed542\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n "] +[21.748772, "o", " \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n }\r\n"] +[21.748815, "o", "\r\n\u001b[1m # module.token-sa-kubeconfig.local_file.kubeconfig\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"local_file\" \"kubeconfig\" {\r\n \u001b[31m-\u001b[0m\u001b[0m content = (sensitive value) \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m content_base64sha256 = \"plAKlhKqlgFDXGecR+WRKhQcWqdKV2VrjRPvq0amoao=\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m content_base64sha512 = \"dbKgtf0r9Gl6KYdRU2ZRLkkj3VHaUqQMFKXISIn1LHshKkPpxp78nG7+ybZhx13nbCt05aHNxwq525yHcF986w==\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m content_md5 = \"05c936e827440926172c1ff70f882087\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m content_sha1 = \"6f23a64ea7d143e0cd368d55a08b3f91a7eb9c5d\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m content_sha256 = \"a6500a9612aa9601435c679c47e5912a141c5aa74a57656b8d13efab46a6a1aa\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m content_sha512 = \"75b2a0b5fd2bf4697a2987515366512e4923dd51da52a40c14a5c84889f52c7b212a43e9c69efc9c6efec9b661c75de76c2b74e5a1cdc70ab9db9c87705f7ceb"] +[21.748841, "o", "\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m directory_permission = \"0777\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m file_permission = \"0777\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m filename = \"./kubeconfig-demo-cluster-token.yaml\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"6f23a64ea7d143e0cd368d55a08b3f91a7eb9c5d\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n"] +[21.749924, "o", "\r\n\u001b[1m # module.gke_for_educates.module.gke.google_container_cluster.primary\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"google_container_cluster\" \"primary\" {\r\n \u001b[31m-\u001b[0m\u001b[0m cluster_ipv4_cidr = \"10.1.0.0/16\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m default_max_pods_per_node = 110 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m deletion_protection = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m disable_l4_lb_firewall_reconciliation = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m effective_labels = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"goog-terraform-provisioned\" = \"true\"\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_autopilot = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_cilium_clusterwide_network_policy = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_fqdn_network_policy = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable"] +[21.749977, "o", "_intranode_visibility = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_kubernetes_alpha = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_l4_ilb_subsetting = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_legacy_abac = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_multi_networking = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_shielded_nodes = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_tpu = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m endpoint = \"34.58.163.60\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"projects/educates-testing/locations/us-central1/clusters/demo-cluster\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m initial_node_count = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m label_fingerprint "] +[21.75002, "o", " = \"78cdf2f6\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m location = \"us-central1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m logging_service = \"logging.googleapis.com/kubernetes\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m master_version = \"1.32.4-gke.1415000\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m min_master_version = \"1.32.4-gke.1415000\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m monitoring_service = \"monitoring.googleapis.com/kubernetes\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"demo-cluster\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m network = \"projects/educates-testing/global/networks/demo-cluster-vpc\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m networking_mode = \"VPC_NATIVE\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m node_locations = [\r\n \u001b[3"] +[21.750073, "o", "1m-\u001b[0m\u001b[0m \"us-central1-a\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m node_version = \"1.32.4-gke.1415000\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m project = \"educates-testing\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m remove_default_node_pool = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m resource_labels = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m self_link = \"https://container.googleapis.com/v1/projects/educates-testing/locations/us-central1/clusters/demo-cluster\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m services_ipv4_cidr = \"10.2.0.0/20\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m subnetwork = \"projects/educates-testing/regions/us-central1/subnetworks/demo-cluster-subnet\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m terraform_labels = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"goog-terraform-p"] +[21.750111, "o", "rovisioned\" = \"true\"\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (4 unchanged attributes hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m addons_config {\r\n \u001b[31m-\u001b[0m\u001b[0m config_connector_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n \u001b[31m-\u001b[0m\u001b[0m dns_cache_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n \u001b[31m-\u001b[0m\u001b[0m gce_persistent_disk_csi_driver_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n \u001b[31m-\u001b[0m\u001b[0m gcp_filestore_csi_driver_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n \u001b[31m-\u001b[0m\u001b[0m gke_backup_agent_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n \u001b[31m-\u001b[0m\u001b[0m horizontal_pod_autoscaling {\r\n \u001b[31m-\u001b[0m\u001b[0m disabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n \u001b[31m-\u001b[0m\u001b[0m http_load_balancing {\r\n "] +[21.750164, "o", " \u001b[31m-\u001b[0m\u001b[0m disabled = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n \u001b[31m-\u001b[0m\u001b[0m network_policy_config {\r\n \u001b[31m-\u001b[0m\u001b[0m disabled = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m binary_authorization {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m cluster_autoscaling {\r\n \u001b[31m-\u001b[0m\u001b[0m auto_provisioning_locations = [] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m autoscaling_profile = \"BALANCED\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m control_plane_endpoints_config {\r\n \u001b[31m-\u001b[0m\u001b[0m dns_endpoint_config {\r\n \u001b[31m-\u001b[0m\u001b[0m allow_external_traffic = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m endpoint = \"gke-aa457bb874d94abf8d04bac2c8f8edf9a991-1085116843346.us-central"] +[21.750211, "o", "1.gke.goog\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n \u001b[31m-\u001b[0m\u001b[0m ip_endpoints_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m database_encryption {\r\n \u001b[31m-\u001b[0m\u001b[0m state = \"DECRYPTED\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m default_snat_status {\r\n \u001b[31m-\u001b[0m\u001b[0m disabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m enterprise_config {\r\n \u001b[31m-\u001b[0m\u001b[0m cluster_tier = \"STANDARD\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m identity_service_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m ip_allocation_policy {\r\n \u001b[31m-\u001b[0m\u001b[0m cluster_ipv4_cidr_block = \"10.1.0.0/16\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m cluster_secondary_range_name = \"range-demo-cluster-"] +[21.750259, "o", "pods\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m services_ipv4_cidr_block = \"10.2.0.0/20\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m services_secondary_range_name = \"range-demo-cluster-services\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m stack_type = \"IPV4\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m pod_cidr_overprovision_config {\r\n \u001b[31m-\u001b[0m\u001b[0m disabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m logging_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enable_components = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"SYSTEM_COMPONENTS\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"WORKLOADS\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m maintenance_policy {\r\n \u001b[31m-\u001b[0m\u001b[0m daily_maintenance_window {\r\n \u001b[31m-\u001b[0m\u001b[0m duration = \"PT4H0M0S\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m start_time = \"05:00\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m master_auth {\r\n \u001b[31m"] +[21.750293, "o", "-\u001b[0m\u001b[0m cluster_ca_certificate = \"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUVMVENDQXBXZ0F3SUJBZ0lSQUpTOEVESU1uOWp2RkRwcEVNbWxQeG93RFFZSktvWklodmNOQVFFTEJRQXcKTHpFdE1Dc0dBMVVFQXhNa05EVTNZV0V4TjJFdE1EWXlaQzAwT1RCa0xUZzFaRFV0TlRNNU1ETXlZVGcxTUdSbApNQ0FYRFRJMU1EWXdOVEF3TkRrMU4xb1lEekl3TlRVd05USTVNREUwT1RVM1dqQXZNUzB3S3dZRFZRUURFeVEwCk5UZGhZVEUzWVMwd05qSmtMVFE1TUdRdE9EVmtOUzAxTXprd016SmhPRFV3WkdVd2dnR2lNQTBHQ1NxR1NJYjMKRFFFQkFRVUFBNElCandBd2dnR0tBb0lCZ1FDbUpuV0ZjQnBwZytrRGZMNEZONy9SaFlHaitUeTZ1U3lDaFhjdQpHUG5tTUMvZlhESWQrc2hHZTdlbCtVYzlzL0xMcENBZ3NyNjNiZkRvaG1vdFpPRmREbW9EbUR3czlheXU4em95CmdaNW1LYlhMZlVYSlBLbmoxWmVjOVJDN0t5c3pNQVhvQmxzdk1kcW9YdkFYb3N4dkxWajVFVGx2T05FbDkxalMKdmZNQWNlWVNOeGRNVmFXeXoxSWdETlorREp4MTBUV2xyRVBxNDJxWG91b0tYSDJrWk4vQVdPSGNCNUZVSGMwRgoweXJ4bzJSK1FYRldaTzEyTEc4TExaMmk1U0V1RVo0NTdSRkxoNG1nVTlVOUhOMGszVll0L3NCMzEzSmNKczA4Clp0T2FldjBFalh3eGdueC9xWStTZnBsVjBYcW05MnV6S01RdFlOcGxCOE9mSEhEenZCdUZxejVSZ0dlUXovS1AKaytPc2hsL0UrMkhrRjhvLzJNSkl2QU9STm93UFlYL3U4dklOby9Nc3YyYVprSWhxZ0FnS1daYmJjZVZUQ09t"] +[21.750345, "o", "Two1UWFQT1lvVWRHRjYwTSs2TjNzK3pvb2toZlQ0S1JaVVpvZG5tSXBXNjduMUdsSHBFZDVRVVdVRDZ3V0RUL2VrCm45ZXgwRnBZekRYdWk1SHpRcnEzTjh6bGIxVUNBd0VBQWFOQ01FQXdEZ1lEVlIwUEFRSC9CQVFEQWdJRU1BOEcKQTFVZEV3RUIvd1FGTUFNQkFmOHdIUVlEVlIwT0JCWUVGQmxkNWIxU3hHV0E0OVZrM01LeW9nVUp3NzRJTUEwRwpDU3FHU0liM0RRRUJDd1VBQTRJQmdRQlRFY0tlNFdITXFJb2tuRFFCU3FJVG1xUjVrYkxHeUcxU0o2TEVhbm1TClhGYytyT0I1OUJpSEN2R01pcnJJWEdPRE5kQ2ZPc2o2Zmc0MWF4clBKR3lybE9pNVNOVkpiWW1IbWFZa05PakQKeHZTeXd3cnZKazQ0TmhaenMwbU1RdlBqQ1FPK1ROSlJZK05idG91dEVuRzZGUnpsQ0FEaUljZXBOa0Vnb0tieQpnZ2htMWh3Vkw2QVZ1WWcyaG94N1V4V29iTWJpeXVLVFphRitwVWFFOURDcHJRTTdLS21kTHQ3cDRGaUVVNVJvCkJYays0UXVreUlHMWNrQ3hXUEV1YmtiSEQwa3oyeERZdmNxak5aZlpjZEoyZ3dIVEZnNURaSUdGQlZydGtDVjgKZVB4eGgwUHp3aGZEYWg0aW5SNHBkYzAzK2h3NXZ5RDN5ek1NdzE5M0h2NXN6dldySjdCTXNTbUk4VGhmTXJCeApJU0xRSm1vaWVuTk1qcW82U1QrZG9WSVBYOVZySEhjeWx4a2JIT2oxR0lvTmNQNWtCWXkvZ0dxSk5WUVZ5Mmc5CnNxa0E1Skh0Qkx4QnZaMnRuWk51LzZoTG9JNzUvd1RiVWRPUFpUcHVHNlNwUmFPaUwxL1g2cDNsVExTbG1MWFIKRURwRUdlM0hTdElKWUhrS2pkby9VWFU9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"] +[21.750357, "o", "\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (2 unchanged attributes hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m client_certificate_config {\r\n \u001b[31m-\u001b[0m\u001b[0m issue_client_certificate = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m mesh_certificates {\r\n \u001b[31m-\u001b[0m\u001b[0m enable_certificates = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m monitoring_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enable_components = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"SYSTEM_COMPONENTS\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"POD\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"DAEMONSET\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"DEPLOYMENT\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"STATEFULSET\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"JOBSET\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"STORAGE\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"HPA\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"CADVISOR\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"KUBELET\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"DCGM\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m advanced_datapath_observabilit"] +[21.750394, "o", "y_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enable_metrics = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_relay = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m managed_prometheus {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m network_policy {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m provider = \"PROVIDER_UNSPECIFIED\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m node_config {\r\n \u001b[31m-\u001b[0m\u001b[0m disk_size_gb = 100 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m disk_type = \"pd-balanced\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m effective_taints = [] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_confidential_storage = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m image_type = \"COS_CONTAINERD\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m labels "] +[21.750503, "o", " = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m local_ssd_count = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m logging_variant = \"DEFAULT\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m machine_type = \"e2-medium\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m metadata = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"disable-legacy-endpoints\" = \"true\"\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m oauth_scopes = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/cloud-platform\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/userinfo.email\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m preemptible = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m resource_labels = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"goog-gke-node-pool-provisioning-model\" = \"on-demand\"\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m resource_manager_tags = {} "] +[21.750546, "o", "\u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m spot = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m storage_pools = [] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m tags = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"gke-demo-cluster\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"gke-demo-cluster-default-pool\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (5 unchanged attributes hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m kubelet_config {\r\n \u001b[31m-\u001b[0m\u001b[0m allowed_unsafe_sysctls = [] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m container_log_max_files = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m cpu_cfs_quota = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m image_gc_high_threshold_percent = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n "] +[21.750578, "o", " \u001b[31m-\u001b[0m\u001b[0m image_gc_low_threshold_percent = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m insecure_kubelet_readonly_port_enabled = \"FALSE\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m pod_pids_limit = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (5 unchanged attributes hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m shielded_instance_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enable_integrity_monitoring = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_secure_boot = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m windows_node_config {\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m workload_metadata_config {\r\n \u001b[31m-\u001b[0m\u001b[0m mode = \"GKE_METADATA\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m node_pool {\r\n \u001b[31m-\u001b[0m\u001b[0m initial_node_count = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m insta"] +[21.750644, "o", "nce_group_urls = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/compute/v1/projects/educates-testing/zones/us-central1-a/instanceGroupManagers/gke-demo-cluster-default-pool-00de6092-grp\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m managed_instance_group_urls = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/compute/v1/projects/educates-testing/zones/us-central1-a/instanceGroups/gke-demo-cluster-default-pool-00de6092-grp\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m max_pods_per_node = 110 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"default-pool\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m node_count = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m node_locations = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"us-central1-a\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m version = \"1.32.4-gke.1415000\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m#"] +[21.75067, "o", " (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m management {\r\n \u001b[31m-\u001b[0m\u001b[0m auto_repair = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m auto_upgrade = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m network_config {\r\n \u001b[31m-\u001b[0m\u001b[0m create_pod_range = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_private_nodes = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m pod_ipv4_cidr_block = \"10.1.0.0/16\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m pod_range = \"range-demo-cluster-pods\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m node_config {\r\n \u001b[31m-\u001b[0m\u001b[0m disk_size_gb = 100 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m disk_type = \"pd-balanced\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m effective_taints = [] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_confidential_storage = false \u001b[90m-"] +[21.750703, "o", "> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m image_type = \"COS_CONTAINERD\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m labels = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m local_ssd_count = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m logging_variant = \"DEFAULT\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m machine_type = \"e2-medium\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m metadata = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"disable-legacy-endpoints\" = \"true\"\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m oauth_scopes = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/cloud-platform\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/userinfo.email\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m preemptible = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m r"] +[21.750777, "o", "esource_labels = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"goog-gke-node-pool-provisioning-model\" = \"on-demand\"\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m resource_manager_tags = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m spot = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m storage_pools = [] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m tags = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"gke-demo-cluster\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"gke-demo-cluster-default-pool\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (5 unchanged attributes hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m kubelet_config {\r\n \u001b[31m-\u001b[0m\u001b[0m allowed_unsafe_sysctls = [] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m cont"] +[21.750819, "o", "ainer_log_max_files = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m cpu_cfs_quota = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m image_gc_high_threshold_percent = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m image_gc_low_threshold_percent = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m insecure_kubelet_readonly_port_enabled = \"FALSE\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m pod_pids_limit = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (5 unchanged attributes hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m shielded_instance_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enable_integrity_monitoring = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_secure_boot = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m windows_node_config {\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b["] +[21.750854, "o", "0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m workload_metadata_config {\r\n \u001b[31m-\u001b[0m\u001b[0m mode = \"GKE_METADATA\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m upgrade_settings {\r\n \u001b[31m-\u001b[0m\u001b[0m max_surge = 1 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m max_unavailable = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m strategy = \"SURGE\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n \u001b[31m-\u001b[0m\u001b[0m node_pool {\r\n \u001b[31m-\u001b[0m\u001b[0m initial_node_count = 2 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m instance_group_urls = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/compute/v1/projects/educates-testing/zones/us-central1-a/instanceGroupManagers/gke-demo-cluster-node-pool-workshops-3a0fbcb6-grp\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m managed_instance_group_urls = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/compute/v1/projects/educates"] +[21.750892, "o", "-testing/zones/us-central1-a/instanceGroups/gke-demo-cluster-node-pool-workshops-3a0fbcb6-grp\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m max_pods_per_node = 110 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"node-pool-workshops\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m node_count = 3 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m node_locations = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"us-central1-a\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m version = \"1.32.4-gke.1415000\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m autoscaling {\r\n \u001b[31m-\u001b[0m\u001b[0m location_policy = \"BALANCED\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m max_node_count = 3 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m min_node_count = 3 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m total_max_node_count = 0 \u001b"] +[21.750934, "o", "[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m total_min_node_count = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m management {\r\n \u001b[31m-\u001b[0m\u001b[0m auto_repair = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m auto_upgrade = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m network_config {\r\n \u001b[31m-\u001b[0m\u001b[0m create_pod_range = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_private_nodes = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m pod_ipv4_cidr_block = \"10.1.0.0/16\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m pod_range = \"range-demo-cluster-pods\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m node_config {\r\n \u001b[31m-\u001b[0m\u001b[0m disk_size_gb = 100 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m disk_type = \"pd-balanced\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m effective_taints = [] \u001b[90m-> null\u001b[0m\u001b[0m\r\n"] +[21.75098, "o", " \u001b[31m-\u001b[0m\u001b[0m enable_confidential_storage = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m image_type = \"COS_CONTAINERD\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m labels = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"cluster_name\" = \"demo-cluster\"\r\n \u001b[31m-\u001b[0m\u001b[0m \"node_pool\" = \"node-pool-workshops\"\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m local_ssd_count = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m logging_variant = \"DEFAULT\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m machine_type = \"e2-medium\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m metadata = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"cluster_name\" = \"demo-cluster\"\r\n \u001b[31m-\u001b[0m\u001b[0m \"disable-legacy-endpoints\" = \"true\"\r\n \u001b[31m-\u001b[0m\u001b[0m \"node_pool\" = \"node-pool-workshops\"\r\n } \u001b[90m-> null\u001b[0m\u001b["] +[21.750991, "o", "0m\r\n \u001b[31m-\u001b[0m\u001b[0m oauth_scopes = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/cloud-platform\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/devstorage.read_only\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/logging.write\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/monitoring\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/service.management.readonly\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/servicecontrol\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/trace.append\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m preemptible = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m resource_labels = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"goog-gke-node-pool-provisioning-model\" = \"on-demand\"\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m resource_man"] +[21.751006, "o", "ager_tags = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testing.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m spot = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m storage_pools = [] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m tags = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"gke-demo-cluster\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"gke-demo-cluster-node-pool-workshops\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (5 unchanged attributes hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m kubelet_config {\r\n \u001b[31m-\u001b[0m\u001b[0m allowed_unsafe_sysctls = [] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m container_log_max_files = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m cpu_cfs_quota = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0"] +[21.751057, "o", "m image_gc_high_threshold_percent = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m image_gc_low_threshold_percent = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m insecure_kubelet_readonly_port_enabled = \"FALSE\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m pod_pids_limit = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (5 unchanged attributes hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m shielded_instance_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enable_integrity_monitoring = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_secure_boot = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m windows_node_config {\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m workload_metadata_config {\r\n \u001b[31m-\u001b[0m\u001b[0m mode = \"GKE_METADATA\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r"] +[21.751133, "o", "\r\n \u001b[31m-\u001b[0m\u001b[0m upgrade_settings {\r\n \u001b[31m-\u001b[0m\u001b[0m max_surge = 1 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m max_unavailable = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m strategy = \"SURGE\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m node_pool_auto_config {\r\n \u001b[31m-\u001b[0m\u001b[0m resource_manager_tags = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m node_kubelet_config {\r\n \u001b[31m-\u001b[0m\u001b[0m insecure_kubelet_readonly_port_enabled = \"FALSE\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m node_pool_defaults {\r\n \u001b[31m-\u001b[0m\u001b[0m node_config_defaults {\r\n \u001b[31m-\u001b[0m\u001b[0m insecure_kubelet_readonly_port_enabled = \"FALSE\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m logging_variant = \"DEFAULT\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m gcfs_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n "] +[21.751163, "o", " }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m notification_config {\r\n \u001b[31m-\u001b[0m\u001b[0m pubsub {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m private_cluster_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enable_private_endpoint = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_private_nodes = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m private_endpoint = \"10.0.0.2\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m public_endpoint = \"34.58.163.60\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (3 unchanged attributes hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m master_global_access_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m release_channel {\r\n \u001b[31m-\u001b[0m\u001b[0m channel = \"REGULAR\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m secret_manager"] +[21.751187, "o", "_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m security_posture_config {\r\n \u001b[31m-\u001b[0m\u001b[0m mode = \"DISABLED\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m vulnerability_mode = \"VULNERABILITY_DISABLED\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m service_external_ips_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m timeouts {\r\n \u001b[31m-\u001b[0m\u001b[0m create = \"45m\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m delete = \"45m\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m update = \"45m\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m vertical_pod_autoscaling {\r\n \u001b[31m-\u001b[0m\u001b[0m enabled = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m workload_identity_config {\r\n \u001b[31m-\u001b[0m\u001b[0m workload_pool = \"educates-testing.svc.id.goog\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n"] +[21.751474, "o", "\r\n\u001b[1m # module.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"google_container_node_pool\" \"pools\" {\r\n \u001b[31m-\u001b[0m\u001b[0m cluster = \"demo-cluster\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"projects/educates-testing/locations/us-central1/clusters/demo-cluster/nodePools/node-pool-workshops\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m initial_node_count = 2 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m instance_group_urls = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/compute/v1/projects/educates-testing/zones/us-central1-a/instanceGroupManagers/gke-demo-cluster-node-pool-workshops-3a0fbcb6-grp\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m location = \"us-central1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m managed_instance_group_urls = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/compute/v1/pro"] +[21.751503, "o", "jects/educates-testing/zones/us-central1-a/instanceGroups/gke-demo-cluster-node-pool-workshops-3a0fbcb6-grp\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m max_pods_per_node = 110 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"node-pool-workshops\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m node_count = 3 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m node_locations = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"us-central1-a\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m project = \"educates-testing\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m version = \"1.32.4-gke.1415000\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m autoscaling {\r\n \u001b[31m-\u001b[0m\u001b[0m location_policy = \"BALANCED\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m max_node_count = 3 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m min_node_count = 3 \u001b[90m-> null\u001b[0m\u001b[0m\r\n "] +[21.751548, "o", " \u001b[31m-\u001b[0m\u001b[0m total_max_node_count = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m total_min_node_count = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m management {\r\n \u001b[31m-\u001b[0m\u001b[0m auto_repair = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m auto_upgrade = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m network_config {\r\n \u001b[31m-\u001b[0m\u001b[0m create_pod_range = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_private_nodes = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m pod_ipv4_cidr_block = \"10.1.0.0/16\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m pod_range = \"range-demo-cluster-pods\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m node_config {\r\n \u001b[31m-\u001b[0m\u001b[0m disk_size_gb = 100 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m disk_type = \"pd-balanced\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m effective_taints = [] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31"] +[21.751592, "o", "m-\u001b[0m\u001b[0m enable_confidential_storage = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m image_type = \"COS_CONTAINERD\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m labels = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"cluster_name\" = \"demo-cluster\"\r\n \u001b[31m-\u001b[0m\u001b[0m \"node_pool\" = \"node-pool-workshops\"\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m local_ssd_count = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m logging_variant = \"DEFAULT\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m machine_type = \"e2-medium\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m metadata = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"cluster_name\" = \"demo-cluster\"\r\n \u001b[31m-\u001b[0m\u001b[0m \"disable-legacy-endpoints\" = \"true\"\r\n \u001b[31m-\u001b[0m\u001b[0m \"node_pool\" = \"node-pool-workshops\"\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m oauth_scopes = [\r\n "] +[21.751632, "o", " \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/cloud-platform\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/devstorage.read_only\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/logging.write\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/monitoring\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/service.management.readonly\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/servicecontrol\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/trace.append\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m preemptible = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m resource_labels = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"goog-gke-node-pool-provisioning-model\" = \"on-demand\"\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m resource_manager_tags = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testi"] +[21.751681, "o", "ng.iam.gserviceaccount.com\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m spot = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m storage_pools = [] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m tags = [\r\n \u001b[31m-\u001b[0m\u001b[0m \"gke-demo-cluster\",\r\n \u001b[31m-\u001b[0m\u001b[0m \"gke-demo-cluster-node-pool-workshops\",\r\n ] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (5 unchanged attributes hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m kubelet_config {\r\n \u001b[31m-\u001b[0m\u001b[0m allowed_unsafe_sysctls = [] \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m container_log_max_files = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m cpu_cfs_quota = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m image_gc_high_threshold_percent = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m image_gc_low_threshold_percent = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[3"] +[21.75172, "o", "1m-\u001b[0m\u001b[0m insecure_kubelet_readonly_port_enabled = \"FALSE\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m pod_pids_limit = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (5 unchanged attributes hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m shielded_instance_config {\r\n \u001b[31m-\u001b[0m\u001b[0m enable_integrity_monitoring = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_secure_boot = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m windows_node_config {\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m workload_metadata_config {\r\n \u001b[31m-\u001b[0m\u001b[0m mode = \"GKE_METADATA\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m timeouts {\r\n \u001b[31m-\u001b[0m\u001b[0m create = \"45m\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m delete = \"45m\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m update = \"45m\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[3"] +[21.751757, "o", "1m-\u001b[0m\u001b[0m upgrade_settings {\r\n \u001b[31m-\u001b[0m\u001b[0m max_surge = 1 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m max_unavailable = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m strategy = \"SURGE\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n }\r\n }\r\n"] +[21.751791, "o", "\r\n\u001b[1m # module.gke_for_educates.module.gke.kubernetes_config_map.ip_masq_agent[0]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"kubernetes_config_map\" \"ip_masq_agent\" {\r\n \u001b[31m-\u001b[0m\u001b[0m binary_data = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m data = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"config\" = <<-EOT\r\n nonMasqueradeCIDRs:\r\n - 10.0.0.0/8\r\n - 172.16.0.0/12\r\n - 192.168.0.0/16\r\n resyncInterval: 60s\r\n masqLinkLocal: false\r\n EOT\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"kube-system/ip-masq-agent\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m immutable = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m metadata {\r\n \u001b[31m-\u001b[0m\u001b[0m annotations = {} \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m generation = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m labels = {\r\n \u001b[31m-\u001b[0m\u001b[0m \"maintained_by\" = \"terraform\""] +[21.751834, "o", "\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"ip-masq-agent\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m namespace = \"kube-system\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m resource_version = \"1749088557466959005\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m uid = \"c74ce76f-cf8c-494a-8306-d0d37b0da497\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n }\r\n"] +[21.751897, "o", "\r\n\u001b[1m # module.gke_for_educates.module.vpc.module.subnets.google_compute_subnetwork.subnetwork[\"us-central1/demo-cluster-subnet\"]\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"google_compute_subnetwork\" \"subnetwork\" {\r\n \u001b[31m-\u001b[0m\u001b[0m creation_timestamp = \"2025-06-04T18:49:35.109-07:00\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_flow_logs = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m gateway_address = \"10.0.0.1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"projects/educates-testing/regions/us-central1/subnetworks/demo-cluster-subnet\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m ip_cidr_range = \"10.0.0.0/24\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"demo-cluster-subnet\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m network = \"https://www.googleapis.com/compute/v1/projects/educates-testing/global/networks/demo-cluster-vpc\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b["] +[21.751944, "o", "0m\u001b[0m private_ip_google_access = true \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m private_ipv6_google_access = \"DISABLE_GOOGLE_ACCESS\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m project = \"educates-testing\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m purpose = \"PRIVATE\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m region = \"us-central1\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m self_link = \"https://www.googleapis.com/compute/v1/projects/educates-testing/regions/us-central1/subnetworks/demo-cluster-subnet\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m stack_type = \"IPV4_ONLY\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m subnetwork_id = 5523213252918331712 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (9 unchanged attributes hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[31m-\u001b[0m\u001b[0m secondary_ip_range {\r\n \u001b[31m-\u001b[0m\u001b[0m ip_cidr_range = \"10.1.0.0/16\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m range_name = \""] +[21.751956, "o", "range-demo-cluster-pods\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n \u001b[31m-\u001b[0m\u001b[0m secondary_ip_range {\r\n \u001b[31m-\u001b[0m\u001b[0m ip_cidr_range = \"10.2.0.0/20\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m range_name = \"range-demo-cluster-services\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n }\r\n"] +[21.75199, "o", "\r\n\u001b[1m # module.gke_for_educates.module.vpc.module.vpc.google_compute_network.network\u001b[0m will be \u001b[1m\u001b[31mdestroyed\u001b[0m\r\n\u001b[0m \u001b[31m-\u001b[0m\u001b[0m resource \"google_compute_network\" \"network\" {\r\n \u001b[31m-\u001b[0m\u001b[0m auto_create_subnetworks = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m bgp_always_compare_med = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m bgp_best_path_selection_mode = \"LEGACY\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m delete_default_routes_on_create = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m enable_ula_internal_ipv6 = false \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m id = \"projects/educates-testing/global/networks/demo-cluster-vpc\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m mtu = 0 \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"demo-cluster-vpc\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m n"] +[21.752027, "o", "etwork_firewall_policy_enforcement_order = \"AFTER_CLASSIC_FIREWALL\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m network_id = \"4307090827809474934\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m numeric_id = \"4307090827809474934\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m project = \"educates-testing\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m routing_mode = \"REGIONAL\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m self_link = \"https://www.googleapis.com/compute/v1/projects/educates-testing/global/networks/demo-cluster-vpc\" \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[90m# (5 unchanged attributes hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n\u001b[1mPlan:\u001b[0m 0 to add, 0 to change, 39 to destroy.\r\n\u001b[0m\r\nChanges to Outputs:\r\n"] +[21.752108, "o", " \u001b[31m-\u001b[0m\u001b[0m educates = {\r\n \u001b[31m-\u001b[0m\u001b[0m educates_installer_version = \"ghcr.io/educates/educates-installer:3.3.2\"\r\n \u001b[31m-\u001b[0m\u001b[0m is_kapp_controller_installed = true\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m gke = {\r\n \u001b[31m-\u001b[0m\u001b[0m certmanager_service_account = \"demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[31m-\u001b[0m\u001b[0m cluster_name = \"demo-cluster\"\r\n \u001b[31m-\u001b[0m\u001b[0m externaldns_service_account = \"demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[31m-\u001b[0m\u001b[0m kubernetes_version = \"1.32.4-gke.1415000\"\r\n \u001b[31m-\u001b[0m\u001b[0m network_uri = \"https://www.googleapis.com/compute/v1/projects/educates-testing/global/networks/demo-cluster-vpc\"\r\n \u001b[31m-\u001b[0m\u001b[0m node_pools = [\r\n \u001b[31m-\u001b[0m\u001b[0m {\r\n \u001b[31m-\u001b[0m\u001b[0m auto_repair = true\r\n \u001b[31m-\u001b[0m\u001b[0m auto_upgrade = true\r\n \u001b[31m-\u001b[0m\u001b[0m d"] +[21.752145, "o", "isk_size_gb = 100\r\n \u001b[31m-\u001b[0m\u001b[0m disk_type = \"pd-balanced\"\r\n \u001b[31m-\u001b[0m\u001b[0m image_type = \"COS_CONTAINERD\"\r\n \u001b[31m-\u001b[0m\u001b[0m initial_node_count = 3\r\n \u001b[31m-\u001b[0m\u001b[0m machine_type = \"e2-medium\"\r\n \u001b[31m-\u001b[0m\u001b[0m max_count = 3\r\n \u001b[31m-\u001b[0m\u001b[0m min_count = 3\r\n \u001b[31m-\u001b[0m\u001b[0m name = \"node-pool-workshops\"\r\n \u001b[31m-\u001b[0m\u001b[0m preemptible = false\r\n \u001b[31m-\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n },\r\n ]\r\n \u001b[31m-\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m kubernetes = {\r\n \u001b[31m-\u001b[0m\u001b[0m host = \"https://34.58.163.60\"\r\n \u001b[31m-\u001b[0m\u001b[0m kubeconfig_file = \"./kubeconfig-demo-cluster.yaml\"\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n \u001b[31m-\u001b[0m\u001b[0m token-sa-kubeconfig ="] +[21.752191, "o", " {\r\n \u001b[31m-\u001b[0m\u001b[0m token-sa-kubeconfig = {\r\n \u001b[31m-\u001b[0m\u001b[0m kubeconfig_file = \"./kubeconfig-demo-cluster-token.yaml\"\r\n \u001b[31m-\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n \u001b[31m-\u001b[0m\u001b[0m service_account = \"automation\"\r\n }\r\n } \u001b[90m-> null\u001b[0m\u001b[0m\r\n"] +[21.752611, "o", "\u001b[0m\u001b[1m\r\nDo you really want to destroy all resources?\u001b[0m\r\n Terraform will destroy all your managed infrastructure, as shown above.\r\n There is no undo. Only 'yes' will be accepted to confirm.\r\n\r\n \u001b[1mEnter a value:\u001b[0m \u001b[0m"] +[24.756933, "o", "y"] +[24.81564, "o", "e"] +[25.005557, "o", "s"] +[25.551053, "o", "\r\n"] +[25.551713, "o", "\r\n"] +[25.807265, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.local_file.kubeconfig: Destroying... [id=6f23a64ea7d143e0cd368d55a08b3f91a7eb9c5d]\u001b[0m\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.local_file.kubeconfig: Destroying... [id=bc06b717c4152a1bd19b8e13b5b55bbe56c324ee]\u001b[0m\u001b[0m\r\n"] +[25.808495, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.local_file.kubeconfig: Destruction complete after 0s\u001b[0m\r\n"] +[25.872377, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.local_file.kubeconfig: Destruction complete after 0s\u001b[0m\r\n"] +[26.157855, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account_iam_binding.external-dns-link-ksa-to-gsa: Destroying... [id=projects/educates-testing/serviceAccounts/demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com/roles/iam.workloadIdentityUser]\u001b[0m\u001b[0m\r\n"] +[26.157898, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account_iam_binding.cert-manager-link-ksa-to-gsa: Destroying... [id=projects/educates-testing/serviceAccounts/demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com/roles/iam.workloadIdentityUser]\u001b[0m\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.google_project_iam_binding.cert-manager-and-external-dns-as-dns-admin: Destroying... [id=educates-testing/roles/dns.admin]\u001b[0m\u001b[0m\r\n"] +[26.303605, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.kubernetes_config_map.ip_masq_agent[0]: Destroying... [id=kube-system/ip-masq-agent]\u001b[0m\u001b[0m\r\n"] +[26.305427, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates]\u001b[0m\u001b[0m\r\n"] +[26.308719, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_secret.automation: Destroying... [id=kube-system/automation]\u001b[0m\u001b[0m\r\n"] +[26.543708, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_secret.automation: Destruction complete after 0s\u001b[0m\r\n"] +[26.591549, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_cluster_role_binding.automation[0]: Destroying... [id=automation]\u001b[0m\u001b[0m\r\n"] +[26.689747, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_cluster_role_binding.automation[0]: Destruction complete after 0s\u001b[0m\r\n"] +[26.742718, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_service_account.automation[0]: Destroying... [id=kube-system/automation]\u001b[0m\u001b[0m\r\n"] +[26.832971, "o", "\u001b[0m\u001b[1mmodule.token-sa-kubeconfig.kubernetes_service_account.automation[0]: Destruction complete after 0s\u001b[0m\r\n"] +[27.157916, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.kubernetes_config_map.ip_masq_agent[0]: Destruction complete after 1s\u001b[0m\r\n"] +[30.306939, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account_iam_binding.external-dns-link-ksa-to-gsa: Destruction complete after 4s\u001b[0m\r\n"] +[30.440369, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account_iam_binding.cert-manager-link-ksa-to-gsa: Destruction complete after 4s\u001b[0m\r\n"] +[33.451783, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_project_iam_binding.cert-manager-and-external-dns-as-dns-admin: Destruction complete after 7s\u001b[0m\r\n"] +[33.50367, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.external-dns-gsa: Destroying... [id=projects/educates-testing/serviceAccounts/demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com]\u001b[0m\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.cert-manager-gsa: Destroying... [id=projects/educates-testing/serviceAccounts/demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com]\u001b[0m\u001b[0m\r\n"] +[33.618703, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.external-dns-gsa: Destruction complete after 0s\u001b[0m\r\n"] +[33.760042, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.cert-manager-gsa: Destruction complete after 0s\u001b[0m\r\n"] +[36.306411, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates, 00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[46.307521, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates, 00m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[56.308519, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates, 00m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[66.309671, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates, 00m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[76.310314, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates, 00m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[86.311473, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates, 01m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[96.312677, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates, 01m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[106.31328, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates, 01m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[116.314592, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates, 01m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[126.315803, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates, 01m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[136.316415, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates, 01m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[146.3169, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates, 02m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[156.318044, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Still destroying... [id=/apis/kappctrl.k14s.io/v1alpha1/namespaces/package-installs/apps/educates, 02m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[164.917913, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app: Destruction complete after 2m18s\u001b[0m\r\n"] +[164.965774, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app_secret: Destroying... [id=/api/v1/namespaces/package-installs/secrets/package-installs]\u001b[0m\u001b[0m\r\n"] +[165.095247, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.educates_app_secret: Destruction complete after 1s\u001b[0m\r\n"] +[165.143345, "o", "\u001b[0m\u001b[1mmodule.educates[0].time_sleep.k8s_app_rbac: Destroying... [id=2025-06-05T02:13:23Z]\u001b[0m\u001b[0m\r\n"] +[166.146322, "o", "\u001b[0m\u001b[1mmodule.educates[0].time_sleep.k8s_app_rbac: Destruction complete after 1s\u001b[0m\r\n"] +[166.195842, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.clusterrolebinding_app_installs: Destroying... [id=/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/package-installs]\u001b[0m\u001b[0m\r\n"] +[166.196543, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.clusterrolebinding_app_installs: Destruction complete after 0s\u001b[0m\r\n"] +[166.237479, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.serviceaccount_app_installs: Destroying... [id=/api/v1/namespaces/package-installs/serviceaccounts/package-installs]\u001b[0m\u001b[0m\r\n"] +[166.238162, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.serviceaccount_app_installs: Destruction complete after 0s\u001b[0m\r\n"] +[166.272265, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.namespace_app_installs: Destroying... [id=/api/v1/namespaces/package-installs]\u001b[0m\u001b[0m\r\n"] +[166.272756, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.namespace_app_installs: Destruction complete after 0s\u001b[0m\r\n"] +[166.304538, "o", "\u001b[0m\u001b[1mmodule.educates[0].time_sleep.wait_for_kapp_controller: Destroying... [id=2025-06-05T02:13:21Z]\u001b[0m\u001b[0m\r\n"] +[167.307031, "o", "\u001b[0m\u001b[1mmodule.educates[0].time_sleep.wait_for_kapp_controller: Destruction complete after 1s\u001b[0m\r\n"] +[167.356713, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/kapp-controller-cluster-role-binding\"]: Destroying... [id=/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/kapp-controller-cluster-role-binding]\u001b[0m\u001b[0m\r\n"] +[167.358599, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller\"]: Destroying... [id=/api/v1/namespaces/kapp-controller]\u001b[0m\u001b[0m\r\n"] +[167.359417, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/namespaces/kube-system/rolebindings/pkgserver-auth-reader\"]: Destroying... [id=/apis/rbac.authorization.k8s.io/v1/namespaces/kube-system/rolebindings/pkgserver-auth-reader]\u001b[0m\u001b[0m\r\n"] +[167.359785, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/pkg-apiserver:system:auth-delegator\"]: Destroying... [id=/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/pkg-apiserver:system:auth-delegator]\u001b[0m\u001b[0m\r\n\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiregistration.k8s.io/v1/apiservices/v1alpha1.data.packaging.carvel.dev\"]: Destroying... [id=/apis/apiregistration.k8s.io/v1/apiservices/v1alpha1.data.packaging.carvel.dev]\u001b[0m\u001b[0m\r\n"] +[167.359805, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packageinstalls.packaging.carvel.dev\"]: Destroying... [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packageinstalls.packaging.carvel.dev]\u001b[0m\u001b[0m\r\n"] +[167.36036, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackagemetadatas.internal.packaging.carvel.dev\"]: Destroying... [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackagemetadatas.internal.packaging.carvel.dev]\u001b[0m\u001b[0m\r\n"] +[167.362113, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller\"]: Destroying... [id=/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller]\u001b[0m\u001b[0m\r\n"] +[167.3758, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/apps.kappctrl.k14s.io\"]: Destroying... [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/apps.kappctrl.k14s.io]\u001b[0m\u001b[0m\r\n"] +[167.376352, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackages.internal.packaging.carvel.dev\"]: Destroying... [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackages.internal.packaging.carvel.dev]\u001b[0m\u001b[0m\r\n"] +[167.463065, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/kapp-controller-cluster-role-binding\"]: Destruction complete after 0s\u001b[0m\r\n"] +[167.50245, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller\"]: Destruction complete after 0s\u001b[0m\r\n\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/namespaces/kube-system/rolebindings/pkgserver-auth-reader\"]: Destruction complete after 0s\u001b[0m\r\n"] +[167.503045, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller-packaging-global\"]: Destroying... [id=/api/v1/namespaces/kapp-controller-packaging-global]\u001b[0m\u001b[0m\r\n"] +[167.568471, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/pkg-apiserver:system:auth-delegator\"]: Destruction complete after 0s\u001b[0m\r\n\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiregistration.k8s.io/v1/apiservices/v1alpha1.data.packaging.carvel.dev\"]: Destruction complete after 0s\u001b[0m\r\n"] +[167.569139, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/services/packaging-api\"]: Destroying... [id=/api/v1/namespaces/kapp-controller/services/packaging-api]\u001b[0m\u001b[0m\r\n"] +[167.572088, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packagerepositories.packaging.carvel.dev\"]: Destroying... [id=/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packagerepositories.packaging.carvel.dev]\u001b[0m\u001b[0m\r\n"] +[167.632407, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/apps.kappctrl.k14s.io\"]: Destruction complete after 0s\u001b[0m\r\n"] +[167.632937, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/serviceaccounts/kapp-controller-sa\"]: Destroying... [id=/api/v1/namespaces/kapp-controller/serviceaccounts/kapp-controller-sa]\u001b[0m\u001b[0m\r\n"] +[167.633501, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-cluster-role\"]: Destroying... [id=/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-cluster-role]\u001b[0m\u001b[0m\r\n"] +[167.66339, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-user-role\"]: Destroying... [id=/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-user-role]\u001b[0m\u001b[0m\r\n"] +[167.680731, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackages.internal.packaging.carvel.dev\"]: Destruction complete after 0s\u001b[0m\r\n"] +[167.706438, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packageinstalls.packaging.carvel.dev\"]: Destruction complete after 0s\u001b[0m\r\n"] +[167.730378, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackagemetadatas.internal.packaging.carvel.dev\"]: Destruction complete after 0s\u001b[0m\r\n\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller\"]: Destruction complete after 0s\u001b[0m\r\n"] +[167.806625, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller-packaging-global\"]: Destruction complete after 0s\u001b[0m\r\n"] +[167.841878, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/serviceaccounts/kapp-controller-sa\"]: Destruction complete after 0s\u001b[0m\r\n"] +[167.884337, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packagerepositories.packaging.carvel.dev\"]: Destruction complete after 0s\u001b[0m\r\n"] +[167.908391, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/services/packaging-api\"]: Destruction complete after 0s\u001b[0m\r\n\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-user-role\"]: Destruction complete after 0s\u001b[0m\r\n"] +[167.951414, "o", "\u001b[0m\u001b[1mmodule.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-cluster-role\"]: Destruction complete after 0s\u001b[0m\r\n"] +[167.995287, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster/nodePools/node-pool-workshops]\u001b[0m\u001b[0m\r\n"] +[177.996623, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[187.997502, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 00m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[197.998806, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 00m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[207.999564, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 00m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[218.000929, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 00m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[228.002058, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 01m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[238.003558, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 01m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[248.004718, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 01m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[258.005551, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 01m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[268.006414, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 01m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[278.007557, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 01m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[288.00852, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 02m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[298.009843, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 02m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[308.010855, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 02m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[318.012439, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 02m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[328.012475, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 02m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[338.01339, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 02m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[348.014656, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 03m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[358.014965, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 03m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[368.016218, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 03m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[378.016736, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 03m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[388.01882, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 03m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[398.019405, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 03m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[408.020447, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 04m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[418.021556, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Still destroying... [id=projects/educates-testing/locations/us-...-cluster/nodePools/node-pool-workshops, 04m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[422.264044, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]: Destruction complete after 4m15s\u001b[0m\r\n"] +[422.294087, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster]\u001b[0m\u001b[0m\r\n"] +[432.294939, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[442.296047, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 00m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[452.296563, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 00m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[462.296917, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 00m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[472.297908, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 00m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[482.299209, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 01m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[492.300475, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 01m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[502.301929, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 01m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[512.302566, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 01m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[522.303665, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 01m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[532.305042, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 01m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[542.305821, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 02m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[552.307063, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 02m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[562.307347, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 02m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[572.308765, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 02m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[582.309997, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 02m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[592.310607, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 02m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[602.310876, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 03m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[612.311808, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 03m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[622.312891, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 03m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[632.31416, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 03m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[642.315266, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 03m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[652.316577, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 03m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[662.317592, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 04m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[672.318835, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 04m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[682.319519, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 04m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[692.320027, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 04m30s elapsed]\u001b[0m\u001b[0m\r\n"] +[702.320534, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 04m40s elapsed]\u001b[0m\u001b[0m\r\n"] +[712.321528, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 04m50s elapsed]\u001b[0m\u001b[0m\r\n"] +[722.321822, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 05m00s elapsed]\u001b[0m\u001b[0m\r\n"] +[732.323172, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 05m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[742.324404, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Still destroying... [id=projects/educates-testing/locations/us-central1/clusters/demo-cluster, 05m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[745.899899, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.google_container_cluster.primary: Destruction complete after 5m23s\u001b[0m\r\n"] +[745.953422, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.default: Destroying... [id=projects/educates-testing/serviceAccounts/demo-cluster@educates-testing.iam.gserviceaccount.com]\u001b[0m\u001b[0m\r\n"] +[745.95391, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.subnets.google_compute_subnetwork.subnetwork[\"us-central1/demo-cluster-subnet\"]: Destroying... [id=projects/educates-testing/regions/us-central1/subnetworks/demo-cluster-subnet]\u001b[0m\u001b[0m\r\n"] +[746.436206, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.google_service_account.default: Destruction complete after 1s\u001b[0m\r\n"] +[755.954434, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.subnets.google_compute_subnetwork.subnetwork[\"us-central1/demo-cluster-subnet\"]: Still destroying... [id=projects/educates-testing/regions/us-central1/subnetworks/demo-cluster-subnet, 00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[765.955471, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.subnets.google_compute_subnetwork.subnetwork[\"us-central1/demo-cluster-subnet\"]: Still destroying... [id=projects/educates-testing/regions/us-central1/subnetworks/demo-cluster-subnet, 00m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[767.325259, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.subnets.google_compute_subnetwork.subnetwork[\"us-central1/demo-cluster-subnet\"]: Destruction complete after 22s\u001b[0m\r\n"] +[767.365771, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.vpc.google_compute_network.network: Destroying... [id=projects/educates-testing/global/networks/demo-cluster-vpc]\u001b[0m\u001b[0m\r\n"] +[777.366951, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.vpc.google_compute_network.network: Still destroying... [id=projects/educates-testing/global/networks/demo-cluster-vpc, 00m10s elapsed]\u001b[0m\u001b[0m\r\n"] +[787.367905, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.vpc.google_compute_network.network: Still destroying... [id=projects/educates-testing/global/networks/demo-cluster-vpc, 00m20s elapsed]\u001b[0m\u001b[0m\r\n"] +[789.097404, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.vpc.module.vpc.google_compute_network.network: Destruction complete after 22s\u001b[0m\r\n"] +[789.154219, "o", "\u001b[0m\u001b[1m\u001b[32m\r\nDestroy complete! Resources: 39 destroyed.\r\n\u001b[0m"] +[789.157605, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"] +[789.181449, "o", "\u001b]2;bkable@Mac:~/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u0007\u001b]1;..ucates-on-gke\u0007"] +[789.183418, "o", "\u001b]7;file://Mac.lan/Users/bkable/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u001b\\"] +[789.184044, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[01;34mgit:(\u001b[31mmain\u001b[34m) \u001b[33m✗\u001b[00m \u001b[K"] +[789.184098, "o", "\u001b[?1h\u001b="] +[789.184176, "o", "\u001b[?2004h"] +[830.608832, "o", "e"] +[830.821845, "o", "\bex"] +[830.923067, "o", "i"] +[831.09711, "o", "t"] +[831.296307, "o", "\u001b[?1l\u001b>"] +[831.296487, "o", "\u001b[?2004l\r\r\n"] +[831.298537, "o", "\u001b]2;exit\u0007\u001b]1;exit\u0007"] diff --git a/static/asciinemas/terraform-init.cast b/static/asciinemas/terraform-init.cast new file mode 100644 index 0000000..2898063 --- /dev/null +++ b/static/asciinemas/terraform-init.cast @@ -0,0 +1,99 @@ +{"version": 2, "width": 113, "height": 17, "timestamp": 1749087873, "env": {"SHELL": "/bin/zsh", "TERM": "xterm-256color"}} +[0.292512, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"] +[0.297627, "o", "\u001b]2;bkable@Mac:~/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u0007\u001b]1;..ucates-on-gke\u0007"] +[0.299332, "o", "\u001b]7;file://Mac.lan/Users/bkable/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u001b\\"] +[0.299814, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[K"] +[0.299937, "o", "\u001b[?1h\u001b=\u001b[?2004h"] +[0.323073, "o", "\r\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[01;34mgit:(\u001b[31mmain\u001b[34m)\u001b[00m \u001b[K"] +[1.616448, "o", "\u001b]7;file://Mac.lan/Users/bkable/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u001b\\"] +[1.617369, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[01;34mgit:(\u001b[31mmain\u001b[34m)\u001b[00m \u001b[K"] +[1.617496, "o", "\u001b[?1h\u001b="] +[1.617598, "o", "\u001b[?2004h"] +[5.204057, "o", "t"] +[5.293421, "o", "\bte"] +[5.588242, "o", "r"] +[5.736685, "o", "r"] +[5.919782, "o", "a"] +[6.013501, "o", "f"] +[6.036769, "o", "o"] +[6.275155, "o", "r"] +[6.395697, "o", "m"] +[6.876105, "o", " "] +[7.078385, "o", "i"] +[7.142926, "o", "n"] +[7.813317, "o", "i"] +[7.966468, "o", "t"] +[8.587028, "o", "\u001b[?1l\u001b>"] +[8.587087, "o", "\u001b[?2004l\r\r\n"] +[8.588645, "o", "\u001b]2;terraform init\u0007\u001b]1;terraform\u0007"] +[8.643366, "o", "\u001b[0m\u001b[1mInitializing the backend...\u001b[0m\r\n"] +[8.643728, "o", "\u001b[0m\u001b[1mInitializing modules...\u001b[0m\r\n"] +[8.645604, "o", "- educates in ../../platform/educates\r\n"] +[9.547658, "o", "Downloading registry.terraform.io/Invicton-Labs/deepmerge/null 0.1.6 for educates.deepmerge_aws_config...\r\n"] +[11.247248, "o", "- educates.deepmerge_aws_config in .terraform/modules/educates.deepmerge_aws_config\r\n"] +[11.292337, "o", "Downloading registry.terraform.io/Invicton-Labs/assertion/null 0.2.8 for educates.deepmerge_aws_config.asset_sufficient_levels...\r\n"] +[11.896206, "o", "- educates.deepmerge_aws_config.asset_sufficient_levels in .terraform/modules/educates.deepmerge_aws_config.asset_sufficient_levels\r\n"] +[11.896287, "o", "Downloading registry.terraform.io/Invicton-Labs/deepmerge/null 0.1.6 for educates.deepmerge_educates_app_config...\r\n"] +[11.915462, "o", "- educates.deepmerge_educates_app_config in .terraform/modules/educates.deepmerge_educates_app_config\r\n"] +[11.915481, "o", "Downloading registry.terraform.io/Invicton-Labs/assertion/null 0.2.8 for educates.deepmerge_educates_app_config.asset_sufficient_levels...\r\n"] +[11.921074, "o", "- educates.deepmerge_educates_app_config.asset_sufficient_levels in .terraform/modules/educates.deepmerge_educates_app_config.asset_sufficient_levels\r\n"] +[11.921144, "o", "Downloading registry.terraform.io/Invicton-Labs/deepmerge/null 0.1.6 for educates.deepmerge_gcp_config...\r\n"] +[11.945724, "o", "- educates.deepmerge_gcp_config in .terraform/modules/educates.deepmerge_gcp_config\r\nDownloading registry.terraform.io/Invicton-Labs/assertion/null 0.2.8 for educates.deepmerge_gcp_config.asset_sufficient_levels...\r\n"] +[11.95184, "o", "- educates.deepmerge_gcp_config.asset_sufficient_levels in .terraform/modules/educates.deepmerge_gcp_config.asset_sufficient_levels\r\n"] +[11.953424, "o", "- gke_for_educates in ../../infrastructure/gke-for-educates\r\n"] +[11.980665, "o", "Downloading registry.terraform.io/terraform-google-modules/kubernetes-engine/google 36.2.0 for gke_for_educates.gke...\r\n"] +[14.964183, "o", "- gke_for_educates.gke in .terraform/modules/gke_for_educates.gke\r\n"] +[14.964373, "o", "Downloading registry.terraform.io/terraform-google-modules/kubernetes-engine/google 36.2.0 for gke_for_educates.gke_auth...\r\n"] +[15.07583, "o", "- gke_for_educates.gke_auth in .terraform/modules/gke_for_educates.gke_auth/modules/auth\r\n"] +[15.113343, "o", "Downloading registry.terraform.io/terraform-google-modules/network/google 10.0.0 for gke_for_educates.vpc...\r\n"] +[16.419799, "o", "- gke_for_educates.vpc in .terraform/modules/gke_for_educates.vpc\r\n"] +[16.420948, "o", "- gke_for_educates.vpc.firewall_rules in .terraform/modules/gke_for_educates.vpc/modules/firewall-rules\r\n"] +[16.421424, "o", "- gke_for_educates.vpc.routes in .terraform/modules/gke_for_educates.vpc/modules/routes\r\n"] +[16.422072, "o", "- gke_for_educates.vpc.subnets in .terraform/modules/gke_for_educates.vpc/modules/subnets\r\n"] +[16.422816, "o", "- gke_for_educates.vpc.vpc in .terraform/modules/gke_for_educates.vpc/modules/vpc\r\n"] +[16.423432, "o", "- token-sa-kubeconfig in ../../infrastructure/token-sa-kubeconfig\r\n"] +[16.428549, "o", "\u001b[0m\u001b[1mInitializing provider plugins...\u001b[0m\r\n"] +[16.428603, "o", "- Finding latest version of hashicorp/local...\r\n"] +[16.504477, "o", "- Finding hashicorp/kubernetes versions matching \"~> 2.10, 2.36.0\"...\r\n"] +[16.579291, "o", "- Finding alekc/kubectl versions matching \"2.1.3\"...\r\n"] +[16.661075, "o", "- Finding latest version of hashicorp/time...\r\n"] +[16.756997, "o", "- Finding hashicorp/tls versions matching \"4.0.6\"...\r\n"] +[16.865719, "o", "- Finding hashicorp/random versions matching \">= 2.1.0\"...\r\n"] +[16.946651, "o", "- Finding hashicorp/google versions matching \">= 3.33.0, >= 3.83.0, >= 4.25.0, >= 4.47.0, != 4.49.0, != 4.50.0, >= 4.64.0, >= 6.14.0, 6.28.0, < 7.0.0\"...\r\n"] +[17.053964, "o", "- Finding hashicorp/google-beta versions matching \">= 4.64.0, >= 6.13.0, < 7.0.0\"...\r\n"] +[17.301445, "o", "- Finding hashicorp/cloudinit versions matching \"2.3.6\"...\r\n"] +[17.888943, "o", "- Installing hashicorp/local v2.5.3...\r\n"] +[18.844777, "o", "- Installed hashicorp/local v2.5.3 (signed by HashiCorp)\r\n"] +[20.119281, "o", "- Installing hashicorp/kubernetes v2.36.0...\r\n"] +[22.593252, "o", "- Installed hashicorp/kubernetes v2.36.0 (signed by HashiCorp)\r\n"] +[23.317462, "o", "- Installing alekc/kubectl v2.1.3...\r\n"] +[29.003637, "o", "- Installed alekc/kubectl v2.1.3 (self-signed, key ID \u001b[0m\u001b[1m772FB27A86DAFCE7\u001b[0m\u001b[0m)\r\n"] +[29.331598, "o", "- Installing hashicorp/time v0.13.1...\r\n"] +[30.464687, "o", "- Installed hashicorp/time v0.13.1 (signed by HashiCorp)\r\n"] +[30.683803, "o", "- Installing hashicorp/tls v4.0.6...\r\n"] +[31.859973, "o", "- Installed hashicorp/tls v4.0.6 (signed by HashiCorp)\r\n"] +[32.067387, "o", "- Installing hashicorp/random v3.7.2...\r\n"] +[33.111548, "o", "- Installed hashicorp/random v3.7.2 (signed by HashiCorp)\r\n"] +[33.305834, "o", "- Installing hashicorp/google-beta v6.38.0...\r\n"] +[38.428938, "o", "- Installed hashicorp/google-beta v6.38.0 (signed by HashiCorp)\r\n"] +[38.667796, "o", "- Installing hashicorp/cloudinit v2.3.6...\r\n"] +[39.786881, "o", "- Installed hashicorp/cloudinit v2.3.6 (signed by HashiCorp)\r\n"] +[40.005183, "o", "- Installing hashicorp/google v6.28.0...\r\n"] +[45.13357, "o", "- Installed hashicorp/google v6.28.0 (signed by HashiCorp)\r\nPartner and community providers are signed by their developers.\r\nIf you'd like to know more about provider signing, you can read about it here:\r\nhttps://developer.hashicorp.com/terraform/cli/plugins/signing\r\nTerraform has created a lock file \u001b[1m.terraform.lock.hcl\u001b[0m to record the provider\r\nselections it made above. Include this file in your version control repository\r\nso that Terraform can guarantee to make the same selections by default when\r\nyou run \"terraform init\" in the future.\u001b[0m\r\n"] +[45.134202, "o", "\r\n"] +[45.134212, "o", "\u001b[0m\u001b[1m\u001b[32mTerraform has been successfully initialized!\u001b[0m\u001b[32m\u001b[0m\r\n\u001b[0m\u001b[32m\r\nYou may now begin working with Terraform. Try running \"terraform plan\" to see\r\nany changes that are required for your infrastructure. All Terraform commands\r\nshould now work.\r\n\r\nIf you ever set or change modules or backend configuration for Terraform,\r\nrerun this command to reinitialize your working directory. If you forget, other\r\ncommands will detect it and remind you to do so if necessary.\u001b[0m\r\n"] +[45.136389, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"] +[45.159237, "o", "\u001b]2;bkable@Mac:~/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u0007\u001b]1;..ucates-on-gke\u0007"] +[45.160953, "o", "\u001b]7;file://Mac.lan/Users/bkable/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u001b\\"] +[45.161496, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[01;34mgit:(\u001b[31mmain\u001b[34m)\u001b[00m \u001b[K"] +[45.161553, "o", "\u001b[?1h\u001b="] +[45.16163, "o", "\u001b[?2004h"] +[45.19549, "o", "\r\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[01;34mgit:(\u001b[31mmain\u001b[34m) \u001b[33m✗\u001b[00m \u001b[K"] +[61.420088, "o", "e"] +[61.65843, "o", "\bex"] +[61.762167, "o", "i"] +[61.963643, "o", "t"] +[62.390588, "o", "\u001b[?1l\u001b>"] +[62.390651, "o", "\u001b[?2004l"] +[62.390661, "o", "\r\r\n"] +[62.393575, "o", "\u001b]2;exit\u0007\u001b]1;exit\u0007"] diff --git a/static/asciinemas/terraform-plan.cast b/static/asciinemas/terraform-plan.cast new file mode 100644 index 0000000..064e3be --- /dev/null +++ b/static/asciinemas/terraform-plan.cast @@ -0,0 +1,294 @@ +{"version": 2, "width": 113, "height": 17, "timestamp": 1749087980, "env": {"SHELL": "/bin/zsh", "TERM": "xterm-256color"}} +[0.286899, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"] +[0.295418, "o", "\u001b]2;bkable@Mac:~/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u0007\u001b]1;..ucates-on-gke\u0007"] +[0.297359, "o", "\u001b]7;file://Mac.lan/Users/bkable/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u001b\\"] +[0.297926, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[K"] +[0.298046, "o", "\u001b[?1h\u001b="] +[0.29806, "o", "\u001b[?2004h"] +[0.323532, "o", "\r\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[01;34mgit:(\u001b[31mmain\u001b[34m) \u001b[33m✗\u001b[00m \u001b[K"] +[8.657277, "o", "t"] +[8.800546, "o", "e"] +[8.980217, "o", "r"] +[9.148967, "o", "r"] +[9.31155, "o", "a"] +[9.401784, "o", "f"] +[9.464961, "o", "o"] +[9.684468, "o", "r"] +[10.4127, "o", "m"] +[10.614635, "o", " "] +[10.930361, "o", "p"] +[12.011751, "o", "l"] +[12.10817, "o", "a"] +[12.210565, "o", "n"] +[12.842407, "o", " -var-file ./main.tfvars"] +[14.347675, "o", "\u001b[?1l\u001b>"] +[14.347758, "o", "\u001b[?2004l\r\r\n"] +[14.35121, "o", "\u001b]2;terraform plan -var-file ./main.tfvars\u0007\u001b]1;terraform\u0007"] +[20.006799, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_compute_zones.this: Reading...\u001b[0m\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke_auth.data.google_client_config.provider: Reading...\u001b[0m\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_client_config.default: Reading...\u001b[0m\u001b[0m\r\n"] +[20.007235, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_container_engine_versions.gke_versions: Reading...\u001b[0m\u001b[0m\r\n"] +[20.091564, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke_auth.data.google_client_config.provider: Read complete after 0s [id=projects//regions//zones/]\u001b[0m\r\n\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_client_config.default: Read complete after 0s [id=projects//regions//zones/]\u001b[0m\r\n"] +[20.516883, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_container_engine_versions.gke_versions: Read complete after 1s [id=2025-06-05 01:46:40.592345 +0000 UTC]\u001b[0m\r\n"] +[20.591372, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.data.google_compute_zones.this: Read complete after 1s [id=projects/educates-testing/regions/us-central1]\u001b[0m\r\n"] +[20.593728, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.data.google_container_engine_versions.region: Reading...\u001b[0m\u001b[0m\r\n"] +[20.595454, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.data.google_container_engine_versions.zone: Reading...\u001b[0m\u001b[0m\r\n"] +[20.817239, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.data.google_container_engine_versions.region: Read complete after 0s [id=2025-06-05 01:46:40.888361 +0000 UTC]\u001b[0m\r\n"] +[20.947712, "o", "\u001b[0m\u001b[1mmodule.gke_for_educates.module.gke.data.google_container_engine_versions.zone: Read complete after 0s [id=2025-06-05 01:46:41.020772 +0000 UTC]\u001b[0m\r\n"] +[21.123411, "o", "\u001b[0m\u001b[1mmodule.educates[0].data.kubectl_file_documents.docs: Reading...\u001b[0m\u001b[0m\r\n"] +[21.141533, "o", "\u001b[0m\u001b[1mmodule.educates[0].data.kubectl_file_documents.docs: Read complete after 0s [id=3c9aab3defcb809a8b5de871a63a65a19e10c86ff7da30132924bd87456f0d80]\u001b[0m\r\n"] +[21.360761, "o", "\r\nTerraform used the selected providers to generate the following execution plan. Resource actions are indicated\r\nwith the following symbols:\r\n \u001b[32m+\u001b[0m create\u001b[0m\r\n \u001b[36m<=\u001b[0m read (data resources)\u001b[0m\r\n\r\nTerraform will perform the following actions:\r\n"] +[21.360863, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.clusterrolebinding_app_installs\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"clusterrolebinding_app_installs\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = true\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ClusterRoleBinding\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b"] +[21.36096, "o", "[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRoleBinding\r\n metadata:\r\n name: package-installs\r\n roleRef:\r\n apiGroup: rbac.authorization.k8s.io\r\n kind: ClusterRole\r\n name: cluster-admin\r\n subjects:\r\n - kind: ServiceAccount\r\n name: package-installs\r\n namespace: package-installs\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.361033, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.educates_app\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"educates_app\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"kappctrl.k14s.io/v1alpha1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"App\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"educates\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wai"] +[21.361114, "o", "t = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: kappctrl.k14s.io/v1alpha1\r\n kind: App\r\n metadata:\r\n name: educates\r\n namespace: package-installs\r\n spec:\r\n deploy:\r\n - kapp:\r\n rawOptions:\r\n - --app-changes-max-to-keep=5\r\n - --diff-changes=false\r\n - --wait-timeout=5m\r\n fetch:\r\n - imgpkgBundle:\r\n image: ghcr.io/educates/educates-installer:3.3.2\r\n path: bundle\r\n - inline:\r\n paths:\r\n disable-kapp-controller.yaml: |\r\n clusterPackages:\r\n kapp-controller:\r\n enabled: false\r\n path: values\r\n se"] +[21.361148, "o", "rviceAccountName: package-installs\r\n syncPeriod: 8760h0m0s\r\n template:\r\n - ytt:\r\n paths:\r\n - bundle/kbld/kbld-bundle.yaml\r\n - bundle/config/kapp\r\n - bundle/config/ytt\r\n valuesFrom:\r\n - path: bundle/kbld/kbld-images.yaml\r\n - secretRef:\r\n name: package-installs\r\n - path: values/disable-kapp-controller.yaml\r\n - kbld:\r\n paths:\r\n - bundle/.imgpkg/images.yml\r\n - '-'\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for {\r\n \u001b[32m+\u001b[0m\u001b[0m field {\r\n \u001b[32m+\u001b[0m\u001b[0m key = \"status.conditions.[0].type\"\r\n \u001b[32m+\u001b[0m\u001b[0m value = \"ReconcileSucceeded\"\r\n \u001b[32m+\u001b[0m\u001b[0m value_type = \"eq\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m field {\r\n \u001b[32m"] +[21.361189, "o", "+\u001b[0m\u001b[0m key = \"status.conditions.[0].status\"\r\n \u001b[32m+\u001b[0m\u001b[0m value = \"True\"\r\n \u001b[32m+\u001b[0m\u001b[0m value_type = \"eq\"\r\n }\r\n }\r\n }\r\n"] +[21.361259, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.educates_app_secret\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"educates_app_secret\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"Secret\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m w"] +[21.361285, "o", "ait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n data: (sensitive value)\r\n kind: Secret\r\n metadata:\r\n name: package-installs\r\n namespace: package-installs\r\n type: Opaque\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.36136, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"Namespace\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema "] +[21.361416, "o", " = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: Namespace\r\n metadata:\r\n name: kapp-controller\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.361459, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller-packaging-global\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"Namespace\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller-packaging-global\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b["] +[21.361537, "o", "32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: Namespace\r\n metadata:\r\n name: kapp-controller-packaging-global\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.361583, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/serviceaccounts/kapp-controller-sa\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ServiceAccount\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller-sa\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kapp-controller\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n "] +[21.361632, "o", " \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: ServiceAccount\r\n metadata:\r\n name: kapp-controller-sa\r\n namespace: kapp-controller\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.361692, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/api/v1/namespaces/kapp-controller/services/packaging-api\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"Service\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"packaging-api\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kapp-controller\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m vali"] +[21.361713, "o", "date_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: Service\r\n metadata:\r\n name: packaging-api\r\n namespace: kapp-controller\r\n spec:\r\n ports:\r\n - name: main\r\n port: 443\r\n protocol: TCP\r\n targetPort: api\r\n - name: metrics\r\n port: 8080\r\n protocol: TCP\r\n targetPort: metrics\r\n selector:\r\n app: kapp-controller\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.361841, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/apps.kappctrl.k14s.io\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"apps.kappctrl.k14s.io\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid "] +[21.361889, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n name: apps.kappctrl.k14s.io\r\n spec:\r\n group: kappctrl.k14s.io\r\n names:\r\n categories:\r\n - carvel\r\n kind: App\r\n listKind: AppList\r\n plural: apps\r\n singular: app\r\n scope: Namespaced\r\n versions:\r\n - additionalPrinterColumns:\r\n - description: Friendly description\r\n jsonPath: .status.friendlyDescription\r\n name: Description\r\n type: string\r\n - description: Last time app started bein"] +[21.36192, "o", "g deployed. Does not mean anything was\r\n changed.\r\n jsonPath: .status.deploy.startedAt\r\n name: Since-Deploy\r\n type: date\r\n - description: Time since creation\r\n jsonPath: .metadata.creationTimestamp\r\n name: Age\r\n type: date\r\n name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n description: 'An App is a set of Kubernetes resources. These resources could\r\n span any number of namespaces or could be cluster-wide (e.g. CRDs). An App\r\n is represented in kapp-controller using a App CR. The App CR comprises of\r\n three main sections: spec.fetch – declare source for fetching configuration\r\n and OCI images spec.template – declare templating tool and values spec.deploy\r\n – declare deployment tool and any deploy specific "] +[21.361963, "o", "configuration'\r\n properties:\r\n apiVersion:\r\n description: 'APIVersion defines the versioned schema of this representation\r\n of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers may infer this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: obj"] +[21.36203, "o", "ect\r\n spec:\r\n properties:\r\n canceled:\r\n description: Cancels current and future reconciliations (optional;\r\n default=false)\r\n type: boolean\r\n cluster:\r\n description: Specifies that app should be deployed to destination\r\n cluster; by default, cluster is same as where this resource resides\r\n (optional; v0.5.0+)\r\n properties:\r\n kubeconfigSecretRef:\r\n description: Specifies secret containing kubeconfig (required)\r\n properties:\r\n key:\r\n description: Specifies key that contains kubeconfig (optional)\r\n type: string\r\n "] +[21.362067, "o", " name:\r\n description: Specifies secret name within app's namespace\r\n (required)\r\n type: string\r\n type: object\r\n namespace:\r\n description: Specifies namespace in destination cluster (optional)\r\n type: string\r\n type: object\r\n defaultNamespace:\r\n description: Specifies the default namespace to install the App resources,\r\n by default this is same as the App's namespace (optional; v0.48.0+)\r\n type: string\r\n deploy:\r\n items:\r\n properties:\r\n kapp:\r\n description: Use kapp to deploy resources\r\n "] +[21.362109, "o", " properties:\r\n delete:\r\n description: Configuration for delete command (optional)\r\n properties:\r\n rawOptions:\r\n description: Pass through options to kapp delete (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n inspect:\r\n description: 'Configuration for inspect command (optional)\r\n as of kapp-controller v0.31.0, inspect is disabled by\r\n default add rawOptions or use an empty inspect config\r\n like `inspect: {}` to enable'\r\n "] +[21.362137, "o", " properties:\r\n rawOptions:\r\n description: Pass through options to kapp inspect (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n intoNs:\r\n description: Override namespace for all resources (optional)\r\n type: string\r\n mapNs:\r\n description: Provide custom namespace override mapping (optional)\r\n items:\r\n type: string\r\n type: array\r\n rawOptions:\r\n description: Pass through options to kapp de"] +[21.362176, "o", "ploy (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: array\r\n fetch:\r\n items:\r\n properties:\r\n git:\r\n description: Uses git to clone repository\r\n properties:\r\n depth:\r\n description: depth of commits to fetch; 1 (default) means\r\n only latest commit, 0 means everything (optional)\r\n format: int64\r\n type: integer\r\n forceHTTPBasicAuth:\r\n description: Fo"] +[21.362228, "o", "rce the usage of HTTP Basic Auth when Basic\r\n Auth is provided (optional)\r\n type: boolean\r\n lfsSkipSmudge:\r\n description: Skip lfs download (optional)\r\n type: boolean\r\n ref:\r\n description: Branch, tag, commit; origin is the name of\r\n the remote (optional)\r\n type: string\r\n refSelection:\r\n description: Specifies a strategy to resolve to an explicit\r\n ref (optional; v0.24.0+)\r\n properties:\r\n semver:\r\n properties:\r\n cons"] +[21.362271, "o", "traints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n secretRef:\r\n description: 'Secret with auth details. allowed keys: ssh-privatekey,\r\n ssh-knownhosts, username, password (optional) (if ssh-knownhosts\r\n is not specified, git will not perform strict host checking)'\r\n properties:\r\n "] +[21.362288, "o", " name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of repository (optional)\r\n type: string\r\n url:\r\n description: http or ssh urls are supported (required)\r\n type: string\r\n type: object\r\n helmChart:\r\n description: Uses helm fetch to fetch specified chart\r\n properties:\r\n name:\r\n description: 'Example: stable/redis'\r\n typ"] +[21.362349, "o", "e: string\r\n repository:\r\n properties:\r\n secretRef:\r\n properties:\r\n name:\r\n description: Object is expected to be within same\r\n namespace\r\n type: string\r\n type: object\r\n url:\r\n description: Repository url; scheme of oci:// will fetch\r\n experimental helm oci chart (v0.19.0+) (required)\r\n type: string\r\n type: object\r\n version:\r\n type: string\r\n ty"] +[21.362399, "o", "pe: object\r\n http:\r\n description: Uses http library to fetch file\r\n properties:\r\n secretRef:\r\n description: 'Secret to provide auth details (optional)\r\n Secret may include one or more keys: username, password'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n sha256:\r\n description: Checksum to verify after download (optional)\r\n type: string\r\n subPath:\r\n description: Grab "] +[21.362411, "o", "only portion of download (optional)\r\n type: string\r\n url:\r\n description: 'URL can point to one of following formats:\r\n text, tgz, zip http and https url are supported; plain\r\n file, tgz and tar types are supported (required)'\r\n type: string\r\n type: object\r\n image:\r\n description: Pulls content from Docker/OCI registry\r\n properties:\r\n secretRef:\r\n description: 'Secret may include one or more keys: username,\r\n password, token. By default anonymous access is used for\r\n authentication.'\r\n "] +[21.362455, "o", " properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of image (optional)\r\n type: string\r\n tagSelection:\r\n description: Specifies a strategy to choose a tag (optional;\r\n v0.24.0+) if specified, do not include a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n "] +[21.362478, "o", " prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n url:\r\n description: 'Docker image url; unqualified, tagged, or\r\n digest references supported (required) Example: username/app1-config:v0.1.0'\r\n type: string\r\n type: object\r\n imgpkgBundle:\r\n description: Pulls imgpkg bundle from Docker/OCI registry (v0.17.0+)\r\n "] +[21.362548, "o", " properties:\r\n image:\r\n description: Docker image url; unqualified, tagged, or digest\r\n references supported (required)\r\n type: string\r\n secretRef:\r\n description: 'Secret may include one or more keys: username,\r\n password, token. By default anonymous access is used for\r\n authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n tagSelection:\r\n description: Specifies a st"] +[21.362586, "o", "rategy to choose a tag (optional;\r\n v0.24.0+) if specified, do not include a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n type: object\r\n inlin"] +[21.362625, "o", "e:\r\n description: Pulls content from within this resource; or other\r\n resources in the cluster\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their content;\r\n not recommended for sensitive values as CR is not encrypted\r\n (optional)\r\n type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and config maps;\r\n data values are recommended to be placed in secrets (optional)\r\n items:\r\n properties:\r\n "] +[21.362656, "o", " configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files found\r\n in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files found\r\n in secret (optional)\r\n type: string\r\n "] +[21.362702, "o", " name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n description: Relative path to place the fetched artifacts\r\n type: string\r\n type: object\r\n type: array\r\n noopDelete:\r\n description: Deletion requests for the App will result in the App\r\n CR being deleted, but its associated resources will not be deleted\r\n (optional; default=false; v0.18.0+)\r\n type: boolean\r\n paused:\r\n description: Pauses _future_ reconciliation; does _not_ affect cur"] +[21.362724, "o", "rently\r\n running reconciliation (optional; default=false)\r\n type: boolean\r\n serviceAccountName:\r\n description: Specifies that app should be deployed authenticated via\r\n given service account, found in this namespace (optional; v0.6.0+)\r\n type: string\r\n syncPeriod:\r\n description: Specifies the length of time to wait, in time + unit\r\n format, before reconciling. Always >= 30s. If value below 30s is\r\n specified, 30s will be used. (optional; v0.9.0+; default=30s)\r\n type: string\r\n template:\r\n items:\r\n properties:\r\n cue:\r\n properties:\r\n inputE"] +[21.362768, "o", "xpression:\r\n description: Cue expression for single path component, can\r\n be used to unify ValuesFrom into a given field (optional)\r\n type: string\r\n outputExpression:\r\n description: Cue expression to output, default will export\r\n all visible fields (optional)\r\n type: string\r\n paths:\r\n description: Explicit list of files/directories (optional)\r\n items:\r\n type: string\r\n type: array\r\n valuesFrom:\r\n description: Provide values (optional)\r\n items:\r\n "] +[21.362809, "o", " properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n properties:\r\n fieldPath:\r\n description: 'Required: Selects a field\r\n of the app: only annotations, labels,\r\n uid, name and namespace are supported.'\r\n type: string\r\n"] +[21.362849, "o", " kappControllerVersion:\r\n description: 'Optional: Get running KappController\r\n version, defaults (empty) to retrieving\r\n the current running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running KubernetesAPIs\r\n from cluster, defaults (empty) to retrieving\r\n "] +[21.36288, "o", " the APIs from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running Kubernetes\r\n version from cluster, defaults (empty)\r\n to retrieving the vers"] +[21.362928, "o", "ion from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: s"] +[21.362958, "o", "tring\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n helmTemplate:\r\n description: Use helm template command to render helm chart\r\n properties:\r\n kubernetesAPIs:\r\n description: 'Optional: Use kubernetes group/versions resources\r\n available in the live cluster'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n "] +[21.362994, "o", " description: 'Optional: Get Kubernetes version, defaults\r\n (empty) to retrieving the version from the cluster. Can\r\n be manually overridden to a value instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n description: Set name explicitly, default is App CR's name\r\n (optional; v0.13.0+)\r\n type: string\r\n namespace:\r\n description: Set namespace explicitly, default is App CR's\r\n namespace (optional; v0.13.0+)\r\n type: string\r\n "] +[21.363026, "o", " path:\r\n description: Path to chart (optional; v0.13.0+)\r\n type: string\r\n valuesFrom:\r\n description: One or more secrets, config maps, paths that\r\n provide values (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n "] +[21.363064, "o", " properties:\r\n fieldPath:\r\n description: 'Required: Selects a field\r\n of the app: only annotations, labels,\r\n uid, name and namespace are supported.'\r\n type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running KappController\r\n version, defaults (empty) to retrieving\r\n the current running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n vers"] +[21.363125, "o", "ion:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running KubernetesAPIs\r\n from cluster, defaults (empty) to retrieving\r\n the APIs from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n "] +[21.363167, "o", " type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running Kubernetes\r\n version from cluster, defaults (empty)\r\n to retrieving the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n type: object\r\n "] +[21.363204, "o", " type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n jsonnet:\r\n description: TODO implement jsonnet\r\n type: object\r\n kbld:\r\n description: Use kbld to resolve image references to use digests\r\n properties:\r\n "] +[21.363246, "o", " paths:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kustomize:\r\n description: TODO implement kustomize\r\n type: object\r\n sops:\r\n description: Use sops to decrypt *.sops.yml files (optional;\r\n v0.11.0+)\r\n properties:\r\n age:\r\n properties:\r\n privateKeysSecretRef:\r\n description: Secret with private armored PGP private\r\n keys (required)\r\n properties:\r\n "] +[21.363284, "o", " name:\r\n type: string\r\n type: object\r\n type: object\r\n paths:\r\n description: Lists paths to decrypt explicitly (optional;\r\n v0.13.0+)\r\n items:\r\n type: string\r\n type: array\r\n pgp:\r\n description: Use PGP to decrypt files (required)\r\n properties:\r\n privateKeysSecretRef:\r\n description: Secret with private armored PGP private\r\n keys (required)\r\n properties:\r\n n"] +[21.363318, "o", "ame:\r\n type: string\r\n type: object\r\n type: object\r\n type: object\r\n ytt:\r\n description: Use ytt to template configuration\r\n properties:\r\n fileMarks:\r\n description: Control metadata about input files passed to\r\n ytt (optional; v0.18.0+) see https://carvel.dev/ytt/docs/latest/file-marks/\r\n for more details\r\n items:\r\n type: string\r\n type: array\r\n ignoreUnknownComments:\r\n description: Ignores comments that ytt doesn't recognize\r\n "] +[21.363328, "o", " (optional; default=false)\r\n type: boolean\r\n inline:\r\n description: Specify additional files, including data values\r\n (optional)\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their content;\r\n not recommended for sensitive values as CR is not\r\n encrypted (optional)\r\n type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and config\r\n "] +[21.363376, "o", " maps; data values are recommended to be placed in\r\n secrets (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files\r\n found in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n properties:\r\n "] +[21.363416, "o", " directoryPath:\r\n description: Specifies where to place files\r\n found in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n paths:\r\n description: Lists paths to provide to ytt explicitly (optional)\r\n items:\r\n type: string\r\n type: array\r\n strict:\r\n description: Forces strict m"] +[21.363447, "o", "ode https://github.com/k14s/ytt/blob/develop/docs/strict.md\r\n (optional; default=false)\r\n type: boolean\r\n valuesFrom:\r\n description: Provide values via ytt's --data-values-file\r\n (optional; v0.19.0-alpha.9)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n "] +[21.363484, "o", " properties:\r\n fieldPath:\r\n description: 'Required: Selects a field\r\n of the app: only annotations, labels,\r\n uid, name and namespace are supported.'\r\n type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running KappController\r\n version, defaults (empty) to retrieving\r\n the current running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n "] +[21.363512, "o", " version:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running KubernetesAPIs\r\n from cluster, defaults (empty) to retrieving\r\n the APIs from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n "] +[21.363574, "o", " type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running Kubernetes\r\n version from cluster, defaults (empty)\r\n to retrieving the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n "] +[21.363616, "o", " type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n status:\r\n properties:\r\n conditions:\r\n items:\r\n properties:\r\n mes"] +[21.363659, "o", "sage:\r\n description: Human-readable message indicating details about\r\n last transition.\r\n type: string\r\n reason:\r\n description: Unique, this should be a short, machine understandable\r\n string that gives the reason for condition's last transition.\r\n If it reports \"ResizeStarted\" that means the underlying persistent\r\n volume is being resized.\r\n type: string\r\n status:\r\n type: string\r\n type:\r\n description: ConditionType represents reconciler state\r\n type: string\r\n required:\r\n - status\r\n "] +[21.363706, "o", " - type\r\n type: object\r\n type: array\r\n consecutiveReconcileFailures:\r\n type: integer\r\n consecutiveReconcileSuccesses:\r\n type: integer\r\n deploy:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n finished:\r\n type: boolean\r\n kapp:\r\n description: KappDeployStatus contains the associated AppCR deployed\r\n resources\r\n properties:\r\n associatedResources:\r\n description: AssociatedResources contains the associated A"] +[21.363735, "o", "pp\r\n label, namespaces and GKs\r\n properties:\r\n groupKinds:\r\n items:\r\n description: GroupKind specifies a Group and a Kind,\r\n but does not force a version. This is useful for\r\n identifying concepts during lookup stages without\r\n having partially valid types\r\n properties:\r\n group:\r\n type: string\r\n kind:\r\n type: string\r\n required:\r\n - group\r\n - kind\r\n "] +[21.36376, "o", " type: object\r\n type: array\r\n label:\r\n type: string\r\n namespaces:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n startedAt:\r\n format: date-time\r\n type: string\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n fetch:\r\n "] +[21.36379, "o", " properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n startedAt:\r\n format: date-time\r\n type: string\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n friendlyDescription:\r\n type: string\r\n inspect:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n "] +[21.363829, "o", " type: integer\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n managedAppName:\r\n type: string\r\n observedGeneration:\r\n description: Populated based on metadata.generation when controller\r\n observes a change to the resource; if this value is out of data,\r\n other status fields do not reflect latest state\r\n format: int64\r\n type: integer\r\n template:\r\n properties:\r\n error:\r\n type: string\r\n "] +[21.363839, "o", " exitCode:\r\n type: integer\r\n stderr:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n usefulErrorMessage:\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n served: true\r\n storage: true\r\n subresources:\r\n status: {}\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.363902, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackagemetadatas.internal.packaging.carvel.dev\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"internalpackagemetadatas.internal.packaging.carvel.dev\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b"] +[21.363945, "o", "[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n name: internalpackagemetadatas.internal.packaging.carvel.dev\r\n spec:\r\n group: internal.packaging.carvel.dev\r\n names:\r\n kind: InternalPackageMetadata\r\n listKind: InternalPackageMetadataList\r\n plural: internalpackagemetadatas\r\n singular: internalpackagemetadata\r\n scope: Namespaced\r\n versions:\r\n - name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n properties:\r\n "] +[21.363976, "o", " apiVersion:\r\n description: 'APIVersion defines the versioned schema of this representation\r\n of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers may infer this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: object\r\n spec:\r\n propert"] +[21.364, "o", "ies:\r\n categories:\r\n description: Classifiers of the package (optional; Array of strings)\r\n items:\r\n type: string\r\n type: array\r\n displayName:\r\n description: Human friendly name of the package (optional; string)\r\n type: string\r\n iconSVGBase64:\r\n description: Base64 encoded icon (optional; string)\r\n type: string\r\n longDescription:\r\n description: Long description of the package (optional; string)\r\n type: string\r\n maintainers:\r\n description: List of maintainer info for the package. Currently only\r\n supports the name key. (optional; array of maintner info)\r\n "] +[21.364034, "o", " items:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n providerName:\r\n description: Name of the entity distributing the package (optional;\r\n string)\r\n type: string\r\n shortDescription:\r\n description: Short desription of the package (optional; string)\r\n type: string\r\n supportDescription:\r\n description: Description of the support available for the package\r\n (optional; string)\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n serv"] +[21.364087, "o", "ed: true\r\n storage: true\r\n subresources:\r\n status: {}\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.364168, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/internalpackages.internal.packaging.carvel.dev\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"internalpackages.internal.packaging.carvel.dev\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_s"] +[21.364199, "o", "ide_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n name: internalpackages.internal.packaging.carvel.dev\r\n spec:\r\n group: internal.packaging.carvel.dev\r\n names:\r\n kind: InternalPackage\r\n listKind: InternalPackageList\r\n plural: internalpackages\r\n singular: internalpackage\r\n scope: Namespaced\r\n versions:\r\n - name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n properties:\r\n apiVersion:\r\n description: "] +[21.364229, "o", "'APIVersion defines the versioned schema of this representation\r\n of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers may infer this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: object\r\n spec:\r\n properties:\r\n capacityRequirementsDesc"] +[21.364276, "o", "ription:\r\n description: 'System requirements needed to install the package. Note:\r\n these requirements will not be verified by kapp-controller on installation.\r\n (optional; string)'\r\n type: string\r\n includedSoftware:\r\n description: IncludedSoftware can be used to show the software contents\r\n of a Package. This is especially useful if the underlying versions\r\n do not match the Package version\r\n items:\r\n description: IncludedSoftware contains the underlying Software Contents\r\n of a Package\r\n properties:\r\n description:\r\n type: string\r\n displayName:\r\n type"] +[21.36432, "o", ": string\r\n version:\r\n type: string\r\n type: object\r\n type: array\r\n kappControllerVersionSelection:\r\n description: KappControllerVersionSelection specifies the versions\r\n of kapp-controller which can install this package\r\n properties:\r\n constraints:\r\n type: string\r\n type: object\r\n kubernetesVersionSelection:\r\n description: KubernetesVersionSelection specifies the versions of\r\n k8s which this package can be installed on\r\n properties:\r\n constraints:\r\n type: string\r\n type: object\r\n license"] +[21.364354, "o", "s:\r\n description: Description of the licenses that apply to the package\r\n software (optional; Array of strings)\r\n items:\r\n type: string\r\n type: array\r\n refName:\r\n description: The name of the PackageMetadata associated with this\r\n version Must be a valid PackageMetadata name (see PackageMetadata\r\n CR for details) Cannot be empty\r\n type: string\r\n releaseNotes:\r\n description: Version release notes (optional; string)\r\n type: string\r\n releasedAt:\r\n description: Timestamp of release (iso8601 formatted string; optional)\r\n format: date-time\r\n nullable: true\r\n "] +[21.36439, "o", " type: string\r\n template:\r\n properties:\r\n spec:\r\n properties:\r\n canceled:\r\n description: Cancels current and future reconciliations (optional;\r\n default=false)\r\n type: boolean\r\n cluster:\r\n description: Specifies that app should be deployed to destination\r\n cluster; by default, cluster is same as where this resource\r\n resides (optional; v0.5.0+)\r\n properties:\r\n kubeconfigSecretRef:\r\n description: Specifies secret containing kubeconfig (required)\r\n propert"] +[21.364427, "o", "ies:\r\n key:\r\n description: Specifies key that contains kubeconfig\r\n (optional)\r\n type: string\r\n name:\r\n description: Specifies secret name within app's namespace\r\n (required)\r\n type: string\r\n type: object\r\n namespace:\r\n description: Specifies namespace in destination cluster\r\n (optional)\r\n type: string\r\n type: object\r\n defaultNamespace:\r\n description: Specifies the default namesp"] +[21.364474, "o", "ace to install the\r\n App resources, by default this is same as the App's namespace\r\n (optional; v0.48.0+)\r\n type: string\r\n deploy:\r\n items:\r\n properties:\r\n kapp:\r\n description: Use kapp to deploy resources\r\n properties:\r\n delete:\r\n description: Configuration for delete command (optional)\r\n properties:\r\n rawOptions:\r\n description: Pass through options to kapp delete\r\n (optional)\r\n "] +[21.364529, "o", " items:\r\n type: string\r\n type: array\r\n type: object\r\n inspect:\r\n description: 'Configuration for inspect command\r\n (optional) as of kapp-controller v0.31.0, inspect\r\n is disabled by default add rawOptions or use an\r\n empty inspect config like `inspect: {}` to enable'\r\n properties:\r\n rawOptions:\r\n description: Pass through options to kapp inspect\r\n (optional)\r\n items:\r\n "] +[21.364561, "o", " type: string\r\n type: array\r\n type: object\r\n intoNs:\r\n description: Override namespace for all resources\r\n (optional)\r\n type: string\r\n mapNs:\r\n description: Provide custom namespace override mapping\r\n (optional)\r\n items:\r\n type: string\r\n type: array\r\n rawOptions:\r\n description: Pass through options to kapp deploy\r\n "] +[21.364594, "o", " (optional)\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: array\r\n fetch:\r\n items:\r\n properties:\r\n git:\r\n description: Uses git to clone repository\r\n properties:\r\n depth:\r\n description: depth of commits to fetch; 1 (default)\r\n means only latest commit, 0 means everything (optional)\r\n format: int64\r\n "] +[21.364638, "o", " type: integer\r\n forceHTTPBasicAuth:\r\n description: Force the usage of HTTP Basic Auth\r\n when Basic Auth is provided (optional)\r\n type: boolean\r\n lfsSkipSmudge:\r\n description: Skip lfs download (optional)\r\n type: boolean\r\n ref:\r\n description: Branch, tag, commit; origin is the\r\n name of the remote (optional)\r\n type: string\r\n refSelection:\r\n description: Specifies a strategy to resolve to\r\n "] +[21.36469, "o", " an explicit ref (optional; v0.24.0+)\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n secretRef:\r\n"] +[21.364726, "o", " description: 'Secret with auth details. allowed\r\n keys: ssh-privatekey, ssh-knownhosts, username,\r\n password (optional) (if ssh-knownhosts is not\r\n specified, git will not perform strict host checking)'\r\n properties:\r\n name:\r\n description: Object is expected to be within\r\n same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of repository (optional)\r\n type: string\r\n "] +[21.364766, "o", " url:\r\n description: http or ssh urls are supported (required)\r\n type: string\r\n type: object\r\n helmChart:\r\n description: Uses helm fetch to fetch specified chart\r\n properties:\r\n name:\r\n description: 'Example: stable/redis'\r\n type: string\r\n repository:\r\n properties:\r\n secretRef:\r\n properties:\r\n name:\r\n description: Object"] +[21.364791, "o", " is expected to be within\r\n same namespace\r\n type: string\r\n type: object\r\n url:\r\n description: Repository url; scheme of oci://\r\n will fetch experimental helm oci chart (v0.19.0+)\r\n (required)\r\n type: string\r\n type: object\r\n version:\r\n type: string\r\n type: object\r\n http:\r\n description: Uses http library to fetch file\r\n prop"] +[21.364827, "o", "erties:\r\n secretRef:\r\n description: 'Secret to provide auth details (optional)\r\n Secret may include one or more keys: username,\r\n password'\r\n properties:\r\n name:\r\n description: Object is expected to be within\r\n same namespace\r\n type: string\r\n type: object\r\n sha256:\r\n description: Checksum to verify after download (optional)\r\n type: string\r\n subPath:\r\n "] +[21.364867, "o", " description: Grab only portion of download (optional)\r\n type: string\r\n url:\r\n description: 'URL can point to one of following\r\n formats: text, tgz, zip http and https url are\r\n supported; plain file, tgz and tar types are supported\r\n (required)'\r\n type: string\r\n type: object\r\n image:\r\n description: Pulls content from Docker/OCI registry\r\n properties:\r\n secretRef:\r\n description: 'Secret may include one or more keys:\r\n "] +[21.364894, "o", " username, password, token. By default anonymous\r\n access is used for authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within\r\n same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of image (optional)\r\n type: string\r\n tagSelection:\r\n description: Specifies a strategy to choose a tag\r\n (optional; v0.24.0+) if specified, do no"] +[21.364921, "o", "t include\r\n a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n "] +[21.364972, "o", " url:\r\n description: 'Docker image url; unqualified, tagged,\r\n or digest references supported (required) Example:\r\n username/app1-config:v0.1.0'\r\n type: string\r\n type: object\r\n imgpkgBundle:\r\n description: Pulls imgpkg bundle from Docker/OCI registry\r\n (v0.17.0+)\r\n properties:\r\n image:\r\n description: Docker image url; unqualified, tagged,\r\n or digest references supported (required)\r\n type: string\r\n "] +[21.365003, "o", " secretRef:\r\n description: 'Secret may include one or more keys:\r\n username, password, token. By default anonymous\r\n access is used for authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within\r\n same namespace\r\n type: string\r\n type: object\r\n tagSelection:\r\n description: Specifies a strategy to choose a tag\r\n (optional; v0.24.0+) if specified, do not include\r\n a tag in url key\r\n "] +[21.365049, "o", " properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n type: object\r\n inline:\r\n "] +[21.365062, "o", " description: Pulls content from within this resource;\r\n or other resources in the cluster\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their\r\n content; not recommended for sensitive values\r\n as CR is not encrypted (optional)\r\n type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and config\r\n maps; data values are recommended to be placed\r\n "] +[21.365103, "o", " in secrets (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place\r\n files found in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n properties:\r\n directoryPath:\r\n "] +[21.365155, "o", " description: Specifies where to place\r\n files found in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n description: Relative path to place the fetched artifacts\r\n type: string\r\n type: object\r\n type: array\r\n noopDelete:\r\n description: Deleti"] +[21.377493, "o", "on requests for the App will result in\r\n the App CR being deleted, but its associated resources will\r\n not be deleted (optional; default=false; v0.18.0+)\r\n type: boolean\r\n paused:\r\n description: Pauses _future_ reconciliation; does _not_ affect\r\n currently running reconciliation (optional; default=false)\r\n type: boolean\r\n serviceAccountName:\r\n description: Specifies that app should be deployed authenticated\r\n via given service account, found in this namespace (optional;\r\n v0.6.0+)\r\n type: string\r\n syncPeriod:\r\n description: "] +[21.377549, "o", "Specifies the length of time to wait, in time\r\n + unit format, before reconciling. Always >= 30s. If value\r\n below 30s is specified, 30s will be used. (optional; v0.9.0+;\r\n default=30s)\r\n type: string\r\n template:\r\n items:\r\n properties:\r\n cue:\r\n properties:\r\n inputExpression:\r\n description: Cue expression for single path component,\r\n can be used to unify ValuesFrom into a given field\r\n (optional)\r\n type: string\r\n outputE"] +[21.377585, "o", "xpression:\r\n description: Cue expression to output, default will\r\n export all visible fields (optional)\r\n type: string\r\n paths:\r\n description: Explicit list of files/directories\r\n (optional)\r\n items:\r\n type: string\r\n type: array\r\n valuesFrom:\r\n description: Provide values (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties"] +[21.377614, "o", ":\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n properties:\r\n fieldPath:\r\n description: 'Required: Selects\r\n a field of the app: only annotations,\r\n labels, uid, name and namespace\r\n are supported.'\r\n "] +[21.377672, "o", " type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running\r\n KappController version, defaults\r\n (empty) to retrieving the current\r\n running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n "] +[21.377709, "o", " description: 'Optional: Get running\r\n KubernetesAPIs from cluster, defaults\r\n (empty) to retrieving the APIs\r\n from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n "] +[21.377768, "o", " kubernetesVersion:\r\n description: 'Optional: Get running\r\n Kubernetes version from cluster,\r\n defaults (empty) to retrieving\r\n the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n "] +[21.377812, "o", " type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n helmTemplate:\r\n description: Use helm template command to render helm\r\n chart\r\n "] +[21.377846, "o", " properties:\r\n kubernetesAPIs:\r\n description: 'Optional: Use kubernetes group/versions\r\n resources available in the live cluster'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get Kubernetes version,\r\n defaults (empty) to retrieving the version from\r\n the cluster. Can be manually overridden to a value\r\n "] +[21.377896, "o", " instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n description: Set name explicitly, default is App\r\n CR's name (optional; v0.13.0+)\r\n type: string\r\n namespace:\r\n description: Set namespace explicitly, default is\r\n App CR's namespace (optional; v0.13.0+)\r\n type: string\r\n path:\r\n description: Path to chart (optional; v0.13.0+)\r\n "] +[21.377935, "o", " type: string\r\n valuesFrom:\r\n description: One or more secrets, config maps, paths\r\n that provide values (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n "] +[21.377965, "o", " properties:\r\n fieldPath:\r\n description: 'Required: Selects\r\n a field of the app: only annotations,\r\n labels, uid, name and namespace\r\n are supported.'\r\n type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running\r\n KappController version, defaults\r\n (empty) to retrieving the current\r\n running version.."] +[21.378005, "o", " Can be manually\r\n supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running\r\n KubernetesAPIs from cluster, defaults\r\n (empty) to retrieving the APIs\r\n from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n "] +[21.378063, "o", " \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running\r\n Kubernetes version from cluster,\r\n defaults (empty) to retrieving\r\n the version from the cluster.\r\n "] +[21.378105, "o", " Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n type: object\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n "] +[21.378161, "o", " type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n jsonnet:\r\n description: TODO implement jsonnet\r\n type: object\r\n kbld:\r\n description: Use kbld to resolve image references to\r\n use digests\r\n properties:\r\n paths:\r\n items:\r\n type: string\r\n type: array\r\n typ"] +[21.378202, "o", "e: object\r\n kustomize:\r\n description: TODO implement kustomize\r\n type: object\r\n sops:\r\n description: Use sops to decrypt *.sops.yml files (optional;\r\n v0.11.0+)\r\n properties:\r\n age:\r\n properties:\r\n privateKeysSecretRef:\r\n description: Secret with private armored PGP\r\n private keys (required)\r\n properties:\r\n name:\r\n type: string\r\n "] +[21.378249, "o", " type: object\r\n type: object\r\n paths:\r\n description: Lists paths to decrypt explicitly (optional;\r\n v0.13.0+)\r\n items:\r\n type: string\r\n type: array\r\n pgp:\r\n description: Use PGP to decrypt files (required)\r\n properties:\r\n privateKeysSecretRef:\r\n description: Secret with private armored PGP\r\n private keys (required)\r\n properties:\r\n "] +[21.378282, "o", " name:\r\n type: string\r\n type: object\r\n type: object\r\n type: object\r\n ytt:\r\n description: Use ytt to template configuration\r\n properties:\r\n fileMarks:\r\n description: Control metadata about input files\r\n passed to ytt (optional; v0.18.0+) see https://carvel.dev/ytt/docs/latest/file-marks/\r\n for more details\r\n items:\r\n type: string\r\n type: array\r\n "] +[21.378324, "o", " ignoreUnknownComments:\r\n description: Ignores comments that ytt doesn't recognize\r\n (optional; default=false)\r\n type: boolean\r\n inline:\r\n description: Specify additional files, including\r\n data values (optional)\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their\r\n content; not recommended for sensitive values\r\n as CR "] +[21.378375, "o", "is not encrypted (optional)\r\n type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and\r\n config maps; data values are recommended to\r\n be placed in secrets (optional)\r\n items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place\r\n files found in secret (optional)\r\n t"] +[21.378412, "o", "ype: string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place\r\n files found in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n "] +[21.378423, "o", " type: array\r\n type: object\r\n paths:\r\n description: Lists paths to provide to ytt explicitly\r\n (optional)\r\n items:\r\n type: string\r\n type: array\r\n strict:\r\n description: Forces strict mode https://github.com/k14s/ytt/blob/develop/docs/strict.md\r\n (optional; default=false)\r\n type: boolean\r\n valuesFrom:\r\n description: Provide values via ytt's --data-values-file\r\n (optional; v0.19.0-alpha.9)\r\n"] +[21.378469, "o", " items:\r\n properties:\r\n configMapRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n downwardAPI:\r\n properties:\r\n items:\r\n items:\r\n properties:\r\n fieldPath:\r\n description: 'Required: Selects\r\n a field of the app: only "] +[21.3785, "o", "annotations,\r\n labels, uid, name and namespace\r\n are supported.'\r\n type: string\r\n kappControllerVersion:\r\n description: 'Optional: Get running\r\n KappController version, defaults\r\n (empty) to retrieving the current\r\n running version.. Can be manually\r\n supplied instead.'\r\n properties:\r\n version:\r\n "] +[21.378561, "o", " type: string\r\n type: object\r\n kubernetesAPIs:\r\n description: 'Optional: Get running\r\n KubernetesAPIs from cluster, defaults\r\n (empty) to retrieving the APIs\r\n from the cluster. Can be manually\r\n supplied instead, e.g [\"group/version\",\r\n \"group2/version2\"]'\r\n properties:\r\n groupVersions:\r\n items:\r\n "] +[21.378597, "o", " type: string\r\n type: array\r\n type: object\r\n kubernetesVersion:\r\n description: 'Optional: Get running\r\n Kubernetes version from cluster,\r\n defaults (empty) to retrieving\r\n the version from the cluster.\r\n Can be manually supplied instead.'\r\n properties:\r\n version:\r\n type: string\r\n "] +[21.378667, "o", " type: object\r\n name:\r\n type: string\r\n type: object\r\n type: array\r\n type: object\r\n path:\r\n type: string\r\n secretRef:\r\n properties:\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n "] +[21.378742, "o", " type: object\r\n type: object\r\n type: array\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n valuesSchema:\r\n description: valuesSchema can be used to show template values that\r\n can be configured by users when a Package is installed in an OpenAPI\r\n schema format.\r\n properties:\r\n openAPIv3:\r\n nullable: true\r\n type: object\r\n x-kubernetes-preserve-unknown-fields: true\r\n type: object\r\n version:\r\n description: Package version; Referenced by PackageInstall; Must be\r\n va"] +[21.378798, "o", "lid semver (required) Cannot be empty\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n served: true\r\n storage: true\r\n subresources:\r\n status: {}\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.378855, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packageinstalls.packaging.carvel.dev\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"packageinstalls.packaging.carvel.dev\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = fa"] +[21.378886, "o", "lse\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n name: packageinstalls.packaging.carvel.dev\r\n spec:\r\n group: packaging.carvel.dev\r\n names:\r\n categories:\r\n - carvel\r\n kind: PackageInstall\r\n listKind: PackageInstallList\r\n plural: packageinstalls\r\n shortNames:\r\n - pkgi\r\n singular: packageinstall\r\n scope: Namespaced\r\n versions:\r\n - additionalPrinterColumns:\r\n - description: PackageMetadata name\r\n jsonPath: .spec.pac"] +[21.378912, "o", "kageRef.refName\r\n name: Package name\r\n type: string\r\n - description: PackageMetadata version\r\n jsonPath: .status.version\r\n name: Package version\r\n type: string\r\n - description: Friendly description\r\n jsonPath: .status.friendlyDescription\r\n name: Description\r\n type: string\r\n - description: Time since creation\r\n jsonPath: .metadata.creationTimestamp\r\n name: Age\r\n type: date\r\n name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n description: A Package Install is an actual installation of a package and\r\n its underlying resources on a Kubernetes cluster. It is represented in kapp-controller\r\n by a PackageInstall CR. A PackageInstall CR must reference a Package CR.\r\n pr"] +[21.378951, "o", "operties:\r\n apiVersion:\r\n description: 'APIVersion defines the versioned schema of this representation\r\n of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers may infer this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: object\r\n spec:\r\n "] +[21.378975, "o", " properties:\r\n canceled:\r\n description: Canceled when set to true will stop all active changes\r\n type: boolean\r\n cluster:\r\n description: Specifies that Package should be deployed to destination\r\n cluster; by default, cluster is same as where this resource resides\r\n (optional)\r\n properties:\r\n kubeconfigSecretRef:\r\n description: Specifies secret containing kubeconfig (required)\r\n properties:\r\n key:\r\n description: Specifies key that contains kubeconfig (optional)\r\n type: string\r\n name:\r\n description: Specifies secret name wi"] +[21.379005, "o", "thin app's namespace\r\n (required)\r\n type: string\r\n type: object\r\n namespace:\r\n description: Specifies namespace in destination cluster (optional)\r\n type: string\r\n type: object\r\n defaultNamespace:\r\n description: Specifies the default namespace to install the Package\r\n resources, by default this is same as the PackageInstall namespace\r\n (optional; v0.48.0+)\r\n type: string\r\n noopDelete:\r\n description: When NoopDelete set to true, PackageInstall deletion\r\n should delete PackageInstall/App CR but preserve App's associated\r\n resources.\r\n "] +[21.379075, "o", " type: boolean\r\n packageRef:\r\n description: Specifies the name of the package to install (required)\r\n properties:\r\n refName:\r\n type: string\r\n versionSelection:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n paused:\r\n description: Paused when set to true "] +[21.379137, "o", "will ignore all pending changes,\r\n once it set back to false, pending changes will be applied\r\n type: boolean\r\n serviceAccountName:\r\n description: Specifies service account that will be used to install\r\n underlying package contents\r\n type: string\r\n syncPeriod:\r\n description: Controls frequency of App reconciliation in time + unit\r\n format. Always >= 30s. If value below 30s is specified, 30s will\r\n be used.\r\n type: string\r\n values:\r\n description: Values to be included in package's templating step (currently\r\n only included in the first templating step) (optional)\r\n items:\r\n proper"] +[21.379176, "o", "ties:\r\n secretRef:\r\n properties:\r\n key:\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n status:\r\n properties:\r\n conditions:\r\n items:\r\n properties:\r\n message:\r\n description: Human-readable message indicating details about\r\n last transition.\r\n type: string\r\n reason:\r\n description: Unique, this should be a short, machine understandab"] +[21.37922, "o", "le\r\n string that gives the reason for condition's last transition.\r\n If it reports \"ResizeStarted\" that means the underlying persistent\r\n volume is being resized.\r\n type: string\r\n status:\r\n type: string\r\n type:\r\n description: ConditionType represents reconciler state\r\n type: string\r\n required:\r\n - status\r\n - type\r\n type: object\r\n type: array\r\n friendlyDescription:\r\n type: string\r\n lastAttemptedVersion:\r\n description: LastAttemptedVersion specifies what version was last\r\n "] +[21.379257, "o", " attempted to be installed. It does _not_ indicate it was successfully\r\n installed.\r\n type: string\r\n observedGeneration:\r\n description: Populated based on metadata.generation when controller\r\n observes a change to the resource; if this value is out of data,\r\n other status fields do not reflect latest state\r\n format: int64\r\n type: integer\r\n usefulErrorMessage:\r\n type: string\r\n version:\r\n description: TODO this is desired resolved version (not actually deployed)\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n served: true\r\n "] +[21.37929, "o", " storage: true\r\n subresources:\r\n status: {}\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.379351, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/packagerepositories.packaging.carvel.dev\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apiextensions.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"CustomResourceDefinition\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"packagerepositories.packaging.carvel.dev\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply "] +[21.379393, "o", " = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiextensions.k8s.io/v1\r\n kind: CustomResourceDefinition\r\n metadata:\r\n annotations:\r\n packaging.carvel.dev/global-namespace: kapp-controller-packaging-global\r\n name: packagerepositories.packaging.carvel.dev\r\n spec:\r\n group: packaging.carvel.dev\r\n names:\r\n categories:\r\n - carvel\r\n kind: PackageRepository\r\n listKind: PackageRepositoryList\r\n plural: packagerepositories\r\n shortNames:\r\n - pkgr\r\n singular: packagerepository\r\n scope: Namespaced\r\n ve"] +[21.379444, "o", "rsions:\r\n - additionalPrinterColumns:\r\n - description: Time since creation\r\n jsonPath: .metadata.creationTimestamp\r\n name: Age\r\n type: date\r\n - description: Friendly description\r\n jsonPath: .status.friendlyDescription\r\n name: Description\r\n type: string\r\n name: v1alpha1\r\n schema:\r\n openAPIV3Schema:\r\n description: A package repository is a collection of packages and their metadata.\r\n Similar to a maven repository or a rpm repository, adding a package repository\r\n to a cluster gives users of that cluster the ability to install any of the\r\n packages from that repository.\r\n properties:\r\n apiVersion:\r\n description: 'APIVersion defines the versioned schema of this representation\r\n "] +[21.379481, "o", " of an object. Servers should convert recognized schemas to the latest\r\n internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'\r\n type: string\r\n kind:\r\n description: 'Kind is a string value representing the REST resource this\r\n object represents. Servers may infer this from the endpoint the client\r\n submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'\r\n type: string\r\n metadata:\r\n type: object\r\n spec:\r\n properties:\r\n fetch:\r\n properties:\r\n git:\r\n "] +[21.379519, "o", " description: Uses git to clone repository containing package list\r\n properties:\r\n depth:\r\n description: depth of commits to fetch; 1 (default) means\r\n only latest commit, 0 means everything (optional)\r\n format: int64\r\n type: integer\r\n forceHTTPBasicAuth:\r\n description: Force the usage of HTTP Basic Auth when Basic\r\n Auth is provided (optional)\r\n type: boolean\r\n lfsSkipSmudge:\r\n description: Skip lfs download (optional)\r\n type: boolean\r\n ref:\r\n description: Branch, tag, commit; or"] +[21.37953, "o", "igin is the name of the\r\n remote (optional)\r\n type: string\r\n refSelection:\r\n description: Specifies a strategy to resolve to an explicit\r\n ref (optional; v0.24.0+)\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n "] +[21.379597, "o", " type: object\r\n type: object\r\n secretRef:\r\n description: 'Secret with auth details. allowed keys: ssh-privatekey,\r\n ssh-knownhosts, username, password (optional) (if ssh-knownhosts\r\n is not specified, git will not perform strict host checking)'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of repository (optional)\r\n type: string\r\n url:\r\n descrip"] +[21.379635, "o", "tion: http or ssh urls are supported (required)\r\n type: string\r\n type: object\r\n http:\r\n description: Uses http library to fetch file containing packages\r\n properties:\r\n secretRef:\r\n description: 'Secret to provide auth details (optional) Secret\r\n may include one or more keys: username, password'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n sha256:\r\n description: Checksum to verify after download (optional)\r\n "] +[21.379679, "o", " type: string\r\n subPath:\r\n description: Grab only portion of download (optional)\r\n type: string\r\n url:\r\n description: 'URL can point to one of following formats: text,\r\n tgz, zip http and https url are supported; plain file, tgz\r\n and tar types are supported (required)'\r\n type: string\r\n type: object\r\n image:\r\n description: Image url; unqualified, tagged, or digest references\r\n supported (required)\r\n properties:\r\n secretRef:\r\n description: 'Secret may include one or more keys: username,\r\n "] +[21.379721, "o", " password, token. By default anonymous access is used for\r\n authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n subPath:\r\n description: Grab only portion of image (optional)\r\n type: string\r\n tagSelection:\r\n description: Specifies a strategy to choose a tag (optional;\r\n v0.24.0+) if specified, do not include a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n "] +[21.379769, "o", " constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n url:\r\n description: 'Docker image url; unqualified, tagged, or digest\r\n references supported (required) Example: username/app1-config:v0.1.0'\r\n type: string\r\n type: object\r\n imgpkgBundle:\r\n "] +[21.379813, "o", " description: Pulls imgpkg bundle from Docker/OCI registry\r\n properties:\r\n image:\r\n description: Docker image url; unqualified, tagged, or digest\r\n references supported (required)\r\n type: string\r\n secretRef:\r\n description: 'Secret may include one or more keys: username,\r\n password, token. By default anonymous access is used for\r\n authentication.'\r\n properties:\r\n name:\r\n description: Object is expected to be within same namespace\r\n type: string\r\n type: object\r\n tagSelection:\r\n "] +[21.37985, "o", " description: Specifies a strategy to choose a tag (optional;\r\n v0.24.0+) if specified, do not include a tag in url key\r\n properties:\r\n semver:\r\n properties:\r\n constraints:\r\n type: string\r\n prereleases:\r\n properties:\r\n identifiers:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n type: object\r\n type: object\r\n "] +[21.379888, "o", " inline:\r\n description: Pull content from within this resource; or other\r\n resources in the cluster\r\n properties:\r\n paths:\r\n additionalProperties:\r\n type: string\r\n description: Specifies mapping of paths to their content;\r\n not recommended for sensitive values as CR is not encrypted\r\n (optional)\r\n type: object\r\n pathsFrom:\r\n description: Specifies content via secrets and config maps;\r\n data values are recommended to be placed in secrets (optional)\r\n items:\r\n properties:\r\n "] +[21.37993, "o", " configMapRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files found\r\n in secret (optional)\r\n type: string\r\n name:\r\n type: string\r\n type: object\r\n secretRef:\r\n properties:\r\n directoryPath:\r\n description: Specifies where to place files found\r\n in secret (optional)\r\n type: string\r\n name:\r\n "] +[21.379943, "o", " type: string\r\n type: object\r\n type: object\r\n type: array\r\n type: object\r\n type: object\r\n paused:\r\n description: Paused when set to true will ignore all pending changes,\r\n once it set back to false, pending changes will be applied\r\n type: boolean\r\n syncPeriod:\r\n description: Controls frequency of PackageRepository reconciliation\r\n type: string\r\n required:\r\n - fetch\r\n type: object\r\n status:\r\n properties:\r\n conditions:\r\n items:\r\n properties:\r\n "] +[21.379987, "o", " message:\r\n description: Human-readable message indicating details about\r\n last transition.\r\n type: string\r\n reason:\r\n description: Unique, this should be a short, machine understandable\r\n string that gives the reason for condition's last transition.\r\n If it reports \"ResizeStarted\" that means the underlying persistent\r\n volume is being resized.\r\n type: string\r\n status:\r\n type: string\r\n type:\r\n description: ConditionType represents reconciler state\r\n type: string\r\n required:\r\n "] +[21.380008, "o", " - status\r\n - type\r\n type: object\r\n type: array\r\n consecutiveReconcileFailures:\r\n type: integer\r\n consecutiveReconcileSuccesses:\r\n type: integer\r\n deploy:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n finished:\r\n type: boolean\r\n kapp:\r\n description: KappDeployStatus contains the associated AppCR deployed\r\n resources\r\n properties:\r\n associatedResources:\r\n description: AssociatedResource"] +[21.38004, "o", "s contains the associated App\r\n label, namespaces and GKs\r\n properties:\r\n groupKinds:\r\n items:\r\n description: GroupKind specifies a Group and a Kind,\r\n but does not force a version. This is useful for\r\n identifying concepts during lookup stages without\r\n having partially valid types\r\n properties:\r\n group:\r\n type: string\r\n kind:\r\n type: string\r\n required:\r\n - group\r\n "] +[21.380075, "o", " - kind\r\n type: object\r\n type: array\r\n label:\r\n type: string\r\n namespaces:\r\n items:\r\n type: string\r\n type: array\r\n type: object\r\n type: object\r\n startedAt:\r\n format: date-time\r\n type: string\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n "] +[21.380116, "o", " fetch:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n startedAt:\r\n format: date-time\r\n type: string\r\n stderr:\r\n type: string\r\n stdout:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n friendlyDescription:\r\n type: string\r\n observedGeneration:\r\n description: Populated based on metadata.generation when controller\r\n observes a change to the resourc"] +[21.380156, "o", "e; if this value is out of data,\r\n other status fields do not reflect latest state\r\n format: int64\r\n type: integer\r\n template:\r\n properties:\r\n error:\r\n type: string\r\n exitCode:\r\n type: integer\r\n stderr:\r\n type: string\r\n updatedAt:\r\n format: date-time\r\n type: string\r\n type: object\r\n usefulErrorMessage:\r\n type: string\r\n type: object\r\n required:\r\n - spec\r\n type: object\r\n served: true\r\n storage: true\r\n subresources"] +[21.380168, "o", ":\r\n status: {}\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.380223, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apiregistration.k8s.io/v1/apiservices/v1alpha1.data.packaging.carvel.dev\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apiregistration.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"APIService\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"v1alpha1.data.packaging.carvel.dev\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m ui"] +[21.380271, "o", "d = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apiregistration.k8s.io/v1\r\n kind: APIService\r\n metadata:\r\n name: v1alpha1.data.packaging.carvel.dev\r\n spec:\r\n group: data.packaging.carvel.dev\r\n groupPriorityMinimum: 100\r\n service:\r\n name: packaging-api\r\n namespace: kapp-controller\r\n version: v1alpha1\r\n versionPriority: 100\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.380345, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/apps/v1/namespaces/kapp-controller/deployments/kapp-controller\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"apps/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"Deployment\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kapp-controller\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n "] +[21.380395, "o", " \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: apps/v1\r\n kind: Deployment\r\n metadata:\r\n annotations:\r\n kapp-controller.carvel.dev/version: v0.55.1\r\n kbld.k14s.io/images: |\r\n - origins:\r\n - local:\r\n path: /home/runner/work/kapp-controller/kapp-controller\r\n - git:\r\n dirty: true\r\n remoteURL: https://github.com/carvel-dev/kapp-controller\r\n sha: dd15f4ff05bc0d3a17ab739b3b86d84a1ae5d024\r\n tags:\r\n - v0.55.1\r\n url: ghcr.io/carvel-dev/kapp-controller@sha256:cf250cb1d03ba0f391fa35a9424ace7327a07bd69b41c94d62e69c58d143566e\r\n name: kapp-con"] +[21.380445, "o", "troller\r\n namespace: kapp-controller\r\n spec:\r\n replicas: 1\r\n revisionHistoryLimit: 0\r\n selector:\r\n matchLabels:\r\n app: kapp-controller\r\n template:\r\n metadata:\r\n labels:\r\n app: kapp-controller\r\n spec:\r\n containers:\r\n - args:\r\n - -packaging-global-namespace=kapp-controller-packaging-global\r\n - -enable-api-priority-and-fairness=True\r\n - -tls-cipher-suites=\r\n env:\r\n - name: KAPPCTRL_MEM_TMP_DIR\r\n value: /etc/kappctrl-mem-tmp\r\n - name: KAPPCTRL_SIDECAREXEC_SOCK\r\n value: /etc/kappctrl-mem-tmp/sidecarexec.sock\r\n - name: KAPPCTRL_SYSTEM_NAMESPACE\r\n valueFrom:\r\n fieldRef:\r\n "] +[21.380497, "o", "fieldPath: metadata.namespace\r\n - name: KAPPCTRL_API_PORT\r\n value: \"8443\"\r\n image: ghcr.io/carvel-dev/kapp-controller@sha256:cf250cb1d03ba0f391fa35a9424ace7327a07bd69b41c94d62e69c58d143566e\r\n name: kapp-controller\r\n ports:\r\n - containerPort: 8443\r\n name: api\r\n protocol: TCP\r\n - containerPort: 8080\r\n name: metrics\r\n protocol: TCP\r\n resources:\r\n requests:\r\n cpu: 120m\r\n memory: 100Mi\r\n securityContext:\r\n allowPrivilegeEscalation: false\r\n capabilities:\r\n drop:\r\n - ALL\r\n readOnlyRootFilesystem: true\r\n runAsNonRoot: true\r\n seccompProfile:\r\n "] +[21.380528, "o", " type: RuntimeDefault\r\n volumeMounts:\r\n - mountPath: /etc/kappctrl-mem-tmp\r\n name: template-fs\r\n - mountPath: /home/kapp-controller\r\n name: home\r\n - args:\r\n - --sidecarexec\r\n env:\r\n - name: KAPPCTRL_SIDECAREXEC_SOCK\r\n value: /etc/kappctrl-mem-tmp/sidecarexec.sock\r\n - name: IMGPKG_ACTIVE_KEYCHAINS\r\n value: gke,aks,ecr\r\n image: ghcr.io/carvel-dev/kapp-controller@sha256:cf250cb1d03ba0f391fa35a9424ace7327a07bd69b41c94d62e69c58d143566e\r\n name: kapp-controller-sidecarexec\r\n resources:\r\n requests:\r\n cpu: 120m\r\n memory: 100Mi\r\n securityContext:\r\n allowPrivilegeEscalation: false\r\n capabilities"] +[21.380568, "o", ":\r\n drop:\r\n - ALL\r\n readOnlyRootFilesystem: false\r\n runAsNonRoot: true\r\n seccompProfile:\r\n type: RuntimeDefault\r\n volumeMounts:\r\n - mountPath: /etc/kappctrl-mem-tmp\r\n name: template-fs\r\n - mountPath: /home/kapp-controller\r\n name: home\r\n - mountPath: /var/run/secrets/kubernetes.io/serviceaccount\r\n name: empty-sa\r\n serviceAccount: kapp-controller-sa\r\n volumes:\r\n - emptyDir:\r\n medium: Memory\r\n name: template-fs\r\n - emptyDir:\r\n medium: Memory\r\n name: home\r\n - emptyDir: {}\r\n name: empty-sa\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r"] +[21.380575, "o", "\r\n }\r\n"] +[21.38063, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/kapp-controller-cluster-role-binding\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ClusterRoleBinding\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller-cluster-role-binding\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = fals"] +[21.380669, "o", "e\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRoleBinding\r\n metadata:\r\n name: kapp-controller-cluster-role-binding\r\n roleRef:\r\n apiGroup: rbac.authorization.k8s.io\r\n kind: ClusterRole\r\n name: kapp-controller-cluster-role\r\n subjects:\r\n - kind: ServiceAccount\r\n name: kapp-controller-sa\r\n namespace: kapp-controller\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.380716, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/pkg-apiserver:system:auth-delegator\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ClusterRoleBinding\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"pkg-apiserver:system:auth-delegator\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r"] +[21.380734, "o", "\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRoleBinding\r\n metadata:\r\n name: pkg-apiserver:system:auth-delegator\r\n roleRef:\r\n apiGroup: rbac.authorization.k8s.io\r\n kind: ClusterRole\r\n name: system:auth-delegator\r\n subjects:\r\n - kind: ServiceAccount\r\n name: kapp-controller-sa\r\n namespace: kapp-controller\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.380805, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-cluster-role\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ClusterRole\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller-cluster-role\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid "] +[21.380856, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRole\r\n metadata:\r\n name: kapp-controller-cluster-role\r\n rules:\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - secrets\r\n verbs:\r\n - create\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - serviceaccounts\r\n verbs:\r\n - get\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - serviceaccounts/token\r\n verbs:\r\n - create\r\n - apiGroups:\r\n - kappctrl.k14s.io\r\n "] +[21.380892, "o", " resources:\r\n - apps\r\n - apps/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - packaging.carvel.dev\r\n resources:\r\n - packageinstalls\r\n - packageinstalls/status\r\n - packageinstalls/finalizers\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - packaging.carvel.dev\r\n resources:\r\n - packagerepositories\r\n - packagerepositories/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - internal.packaging.carvel.dev\r\n resources:\r\n - internalpackagemetadatas\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - data.packaging.carvel.dev\r\n resources:\r\n - packagemetadatas\r\n - packagemetadatas/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - inter"] +[21.380923, "o", "nal.packaging.carvel.dev\r\n resources:\r\n - internalpackages\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - data.packaging.carvel.dev\r\n resources:\r\n - packages\r\n - packages/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - configmaps\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - apiregistration.k8s.io\r\n resources:\r\n - apiservices\r\n verbs:\r\n - update\r\n - get\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - namespaces\r\n verbs:\r\n - list\r\n - watch\r\n - get\r\n - update\r\n - apiGroups:\r\n - admissionregistration.k8s.io\r\n resources:\r\n - mutatingwebhookconfigurations\r\n "] +[21.380935, "o", " - validatingwebhookconfigurations\r\n - validatingadmissionpolicies\r\n - validatingadmissionpolicybindings\r\n verbs:\r\n - list\r\n - watch\r\n - apiGroups:\r\n - authorization.k8s.io\r\n resources:\r\n - subjectaccessreviews\r\n verbs:\r\n - create\r\n - apiGroups:\r\n - flowcontrol.apiserver.k8s.io\r\n resources:\r\n - prioritylevelconfigurations\r\n - flowschemas\r\n verbs:\r\n - list\r\n - watch\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.381012, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/clusterroles/kapp-controller-user-role\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ClusterRole\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"kapp-controller-user-role\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid "] +[21.381024, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: ClusterRole\r\n metadata:\r\n name: kapp-controller-user-role\r\n rules:\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - secrets\r\n verbs:\r\n - create\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - serviceaccounts\r\n verbs:\r\n - get\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - serviceaccounts/token\r\n verbs:\r\n - create\r\n - apiGroups:\r\n - kappctrl.k14s.io\r\n "] +[21.381042, "o", " resources:\r\n - apps\r\n - apps/status\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - packaging.carvel.dev\r\n resources:\r\n - packageinstalls\r\n - packageinstalls/status\r\n - packageinstalls/finalizers\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - \"\"\r\n resources:\r\n - configmaps\r\n verbs:\r\n - '*'\r\n - apiGroups:\r\n - packaging.carvel.dev\r\n resources:\r\n - packagerepositories\r\n - packagerepositories/status\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - internal.packaging.carvel.dev\r\n resources:\r\n - internalpackagemetadatas\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n "] +[21.38105, "o", " - data.packaging.carvel.dev\r\n resources:\r\n - packagemetadatas\r\n - packagemetadatas/status\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - internal.packaging.carvel.dev\r\n resources:\r\n - internalpackages\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n - apiGroups:\r\n - data.packaging.carvel.dev\r\n resources:\r\n - packages\r\n - packages/status\r\n verbs:\r\n - get\r\n - list\r\n - watch\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.381133, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.kapp_controller[\"/apis/rbac.authorization.k8s.io/v1/namespaces/kube-system/rolebindings/pkgserver-auth-reader\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"rbac.authorization.k8s.io/v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = false\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"RoleBinding\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"pkgserver-auth-reader\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid"] +[21.381155, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: rbac.authorization.k8s.io/v1\r\n kind: RoleBinding\r\n metadata:\r\n name: pkgserver-auth-reader\r\n namespace: kube-system\r\n roleRef:\r\n apiGroup: rbac.authorization.k8s.io\r\n kind: Role\r\n name: extension-apiserver-authentication-reader\r\n subjects:\r\n - kind: ServiceAccount\r\n name: kapp-controller-sa\r\n namespace: kapp-controller\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n"] +[21.381217, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.namespace_app_installs\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"namespace_app_installs\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = true\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"Namespace\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r\n \u001b[32m+\u001b"] +[21.381244, "o", "[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: Namespace\r\n metadata:\r\n name: package-installs\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for {\r\n \u001b[32m+\u001b[0m\u001b[0m field {\r\n \u001b[32m+\u001b[0m\u001b[0m key = \"status.phase\"\r\n \u001b[32m+\u001b[0m\u001b[0m value = \"Active\"\r\n \u001b[32m+\u001b[0m\u001b[0m value_type = \"eq\"\r\n }\r\n }\r\n }\r\n"] +[21.381294, "o", "\r\n\u001b[1m # module.educates[0].kubectl_manifest.serviceaccount_app_installs\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubectl_manifest\" \"serviceaccount_app_installs\" {\r\n \u001b[32m+\u001b[0m\u001b[0m api_version = \"v1\"\r\n \u001b[32m+\u001b[0m\u001b[0m apply_only = true\r\n \u001b[32m+\u001b[0m\u001b[0m field_manager = \"kubectl\"\r\n \u001b[32m+\u001b[0m\u001b[0m force_conflicts = false\r\n \u001b[32m+\u001b[0m\u001b[0m force_new = false\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ServiceAccount\"\r\n \u001b[32m+\u001b[0m\u001b[0m live_manifest_incluster = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m live_uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"package-installs\"\r\n \u001b[32m+\u001b[0m\u001b[0m server_side_apply = false\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m validate_schema = true\r"] +[21.38133, "o", "\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_rollout = true\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_body_parsed = <<-EOT\r\n apiVersion: v1\r\n kind: ServiceAccount\r\n metadata:\r\n name: package-installs\r\n namespace: package-installs\r\n EOT\r\n \u001b[32m+\u001b[0m\u001b[0m yaml_incluster = (sensitive value)\r\n }\r\n\r\n\u001b[1m # module.educates[0].time_sleep.k8s_app_rbac\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"time_sleep\" \"k8s_app_rbac\" {\r\n \u001b[32m+\u001b[0m\u001b[0m create_duration = \"1s\"\r\n \u001b[32m+\u001b[0m\u001b[0m destroy_duration = \"1s\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n }\r\n\r\n\u001b[1m # module.educates[0].time_sleep.wait_for_kapp_controller\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"time_sleep\" \"wait_for_kapp_controller\" {\r\n \u001b[32m+\u001b[0m\u001b[0m create_duration = \"1s\"\r\n \u001b[32m+\u001b[0m\u001b[0m destroy_duration = \"1s\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known aft"] +[21.381341, "o", "er apply)\r\n }\r\n"] +[21.381371, "o", "\r\n\u001b[1m # module.gke_for_educates.google_project_iam_binding.cert-manager-and-external-dns-as-dns-admin\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_project_iam_binding\" \"cert-manager-and-external-dns-as-dns-admin\" {\r\n \u001b[32m+\u001b[0m\u001b[0m etag = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m members = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"serviceAccount:demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"serviceAccount:demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\",\r\n ]\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m role = \"roles/dns.admin\"\r\n }\r\n"] +[21.381421, "o", "\r\n\u001b[1m # module.gke_for_educates.google_service_account.cert-manager-gsa\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_service_account\" \"cert-manager-gsa\" {\r\n \u001b[32m+\u001b[0m\u001b[0m account_id = \"demo-cluster-cert-manager\"\r\n \u001b[32m+\u001b[0m\u001b[0m disabled = false\r\n \u001b[32m+\u001b[0m\u001b[0m display_name = \"Service Account created by TF for cert-manager for cluster demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m email = \"demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m member = \"serviceAccount:demo-cluster-cert-manager@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m name = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m unique_id = (known after apply)\r\n }\r\n\r\n\u001b[1m # module.gke_for_educates.google_service_account.default\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_service_account\" \"default\" {\r\n \u001b[32m+\u001b[0m\u001b["] +[21.381452, "o", "0m account_id = \"demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m disabled = false\r\n \u001b[32m+\u001b[0m\u001b[0m display_name = \"Service Account created by TF for cluster demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m email = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m member = \"serviceAccount:demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m name = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m unique_id = (known after apply)\r\n }\r\n\r\n"] +[21.38148, "o", "\u001b[1m # module.gke_for_educates.google_service_account.external-dns-gsa\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_service_account\" \"external-dns-gsa\" {\r\n \u001b[32m+\u001b[0m\u001b[0m account_id = \"demo-cluster-external-dns\"\r\n \u001b[32m+\u001b[0m\u001b[0m disabled = false\r\n \u001b[32m+\u001b[0m\u001b[0m display_name = \"Service Account created by TF for external-dns for cluster demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m email = \"demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m member = \"serviceAccount:demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m name = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m unique_id = (known after apply)\r\n }\r\n"] +[21.381507, "o", "\r\n\u001b[1m # module.gke_for_educates.google_service_account_iam_binding.cert-manager-link-ksa-to-gsa\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_service_account_iam_binding\" \"cert-manager-link-ksa-to-gsa\" {\r\n \u001b[32m+\u001b[0m\u001b[0m etag = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m members = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"serviceAccount:educates-testing.svc.id.goog[cert-manager/cert-manager]\",\r\n ]\r\n \u001b[32m+\u001b[0m\u001b[0m role = \"roles/iam.workloadIdentityUser\"\r\n \u001b[32m+\u001b[0m\u001b[0m service_account_id = (known after apply)\r\n }\r\n\r\n\u001b[1m # module.gke_for_educates.google_service_account_iam_binding.external-dns-link-ksa-to-gsa\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_service_account_iam_binding\" \"external-dns-link-ksa-to-gsa\" {\r\n \u001b[32m+\u001b[0m\u001b[0m etag = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m members "] +[21.381566, "o", " = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"serviceAccount:educates-testing.svc.id.goog[external-dns/external-dns]\",\r\n ]\r\n \u001b[32m+\u001b[0m\u001b[0m role = \"roles/iam.workloadIdentityUser\"\r\n \u001b[32m+\u001b[0m\u001b[0m service_account_id = (known after apply)\r\n }\r\n\r\n\u001b[1m # module.gke_for_educates.local_file.kubeconfig\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"local_file\" \"kubeconfig\" {\r\n \u001b[32m+\u001b[0m\u001b[0m content = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_base64sha256 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_base64sha512 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_md5 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_sha1 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_sha256 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_sha512 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m directory_permission = \"0777\"\r\n \u001b[32m+\u001b[0m\u001b[0m file_permission = \"0777\"\r\n \u001b[32m+\u001b[0m\u001b[0m filename = \"./kubeconfig"] +[21.381596, "o", "-demo-cluster.yaml\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n }\r\n"] +[21.381612, "o", "\r\n\u001b[1m # module.token-sa-kubeconfig.data.kubernetes_secret.automation\u001b[0m will be read during apply\r\n # (depends on a resource or a module with changes pending)\r\n\u001b[0m \u001b[36m<=\u001b[0m\u001b[0m data \"kubernetes_secret\" \"automation\" {\r\n \u001b[32m+\u001b[0m\u001b[0m data = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m immutable = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m type = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m metadata {\r\n \u001b[32m+\u001b[0m\u001b[0m generation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"automation\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n \u001b[32m+\u001b[0m\u001b[0m resource_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n }\r\n }\r\n"] +[21.38219, "o", "\r\n\u001b[1m # module.token-sa-kubeconfig.kubernetes_cluster_role_binding.automation[0]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubernetes_cluster_role_binding\" \"automation\" {\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m metadata {\r\n \u001b[32m+\u001b[0m\u001b[0m generation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"automation\"\r\n \u001b[32m+\u001b[0m\u001b[0m resource_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m role_ref {\r\n \u001b[32m+\u001b[0m\u001b[0m api_group = \"rbac.authorization.k8s.io\"\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ClusterRole\"\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"cluster-admin\"\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m subject {\r\n \u001b[32m+\u001b[0m\u001b[0m api_group = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kind = \"ServiceAccount\"\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"automation\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n }\r\n }\r\n"] +[21.382385, "o", "\r\n\u001b[1m # module.token-sa-kubeconfig.kubernetes_secret.automation\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubernetes_secret\" \"automation\" {\r\n \u001b[32m+\u001b[0m\u001b[0m binary_data_wo = (write-only attribute)\r\n \u001b[32m+\u001b[0m\u001b[0m data = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m data_wo = (write-only attribute)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m type = \"kubernetes.io/service-account-token\"\r\n \u001b[32m+\u001b[0m\u001b[0m wait_for_service_account_token = true\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m metadata {\r\n \u001b[32m+\u001b[0m\u001b[0m annotations = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"kubernetes.io/service-account.name\" = \"automation\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m generation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"automation\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n \u001b[32m+\u001b[0m\u001b[0m resource_version = (known af"] +[21.38245, "o", "ter apply)\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n }\r\n }\r\n\r\n\u001b[1m # module.token-sa-kubeconfig.kubernetes_service_account.automation[0]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubernetes_service_account\" \"automation\" {\r\n \u001b[32m+\u001b[0m\u001b[0m automount_service_account_token = true\r\n \u001b[32m+\u001b[0m\u001b[0m default_secret_name = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m metadata {\r\n \u001b[32m+\u001b[0m\u001b[0m generation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"automation\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n \u001b[32m+\u001b[0m\u001b[0m resource_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n }\r\n }\r\n\r\n\u001b[1m # module.token-sa-kubeconfig.local_file.kubeconfig\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"local_file\" \"kubeconfig\" {\r\n \u001b[32m+\u001b[0m\u001b[0m content "] +[21.382495, "o", " = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m content_base64sha256 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_base64sha512 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_md5 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_sha1 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_sha256 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m content_sha512 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m directory_permission = \"0777\"\r\n \u001b[32m+\u001b[0m\u001b[0m file_permission = \"0777\"\r\n \u001b[32m+\u001b[0m\u001b[0m filename = \"./kubeconfig-demo-cluster-token.yaml\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n }\r\n"] +[21.39134, "o", "\r\n\u001b[1m # module.gke_for_educates.module.gke.google_container_cluster.primary\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_container_cluster\" \"primary\" {\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_ipv4_cidr = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m datapath_provider = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m default_max_pods_per_node = 110\r\n \u001b[32m+\u001b[0m\u001b[0m deletion_protection = false\r\n \u001b[32m+\u001b[0m\u001b[0m disable_l4_lb_firewall_reconciliation = false\r\n \u001b[32m+\u001b[0m\u001b[0m effective_labels = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"goog-terraform-provisioned\" = \"true\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m enable_cilium_clusterwide_network_policy = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_fqdn_network_policy = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_intranode_visibility = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_kubernetes_alpha = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_l4_ilb_subsetting "] +[21.391395, "o", " = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_legacy_abac = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_multi_networking = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_shielded_nodes = true\r\n \u001b[32m+\u001b[0m\u001b[0m enable_tpu = false\r\n \u001b[32m+\u001b[0m\u001b[0m endpoint = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m label_fingerprint = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m location = \"us-central1\"\r\n \u001b[32m+\u001b[0m\u001b[0m logging_service = \"logging.googleapis.com/kubernetes\"\r\n \u001b[32m+\u001b[0m\u001b[0m master_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m min_master_version = \"1.32.4-gke.1415000\"\r\n \u001b[32m+\u001b[0m\u001b[0m monitoring_service = \"monitoring.googleapis.com/kubernetes\"\r\n \u001b["] +[21.39143, "o", "32m+\u001b[0m\u001b[0m name = \"demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m network = \"projects/educates-testing/global/networks/demo-cluster-vpc\"\r\n \u001b[32m+\u001b[0m\u001b[0m networking_mode = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_locations = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"us-central1-a\",\r\n ]\r\n \u001b[32m+\u001b[0m\u001b[0m node_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m operation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m private_ipv6_google_access = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m remove_default_node_pool = false\r\n \u001b[32m+\u001b[0m\u001b[0m self_link = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m services_ipv4_cidr = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m subnetwork "] +[21.391489, "o", " = \"projects/educates-testing/regions/us-central1/subnetworks/demo-cluster-subnet\"\r\n \u001b[32m+\u001b[0m\u001b[0m terraform_labels = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"goog-terraform-provisioned\" = \"true\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m tpu_ipv4_cidr_block = (known after apply)\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m addons_config {\r\n \u001b[32m+\u001b[0m\u001b[0m cloudrun_config (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m config_connector_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m dns_cache_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m gce_persistent_disk_csi_driver_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = true\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m gcp_filestore_csi_driver_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m gcs_fuse_csi_driver_config (known after appl"] +[21.391544, "o", "y)\r\n \u001b[32m+\u001b[0m\u001b[0m gke_backup_agent_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m horizontal_pod_autoscaling {\r\n \u001b[32m+\u001b[0m\u001b[0m disabled = false\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m http_load_balancing {\r\n \u001b[32m+\u001b[0m\u001b[0m disabled = true\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m network_policy_config {\r\n \u001b[32m+\u001b[0m\u001b[0m disabled = true\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m parallelstore_csi_driver_config (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m ray_operator_config (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m stateful_ha_config (known after apply)\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m authenticator_groups_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_autoscaling {\r\n \u001b[32m+\u001b[0m\u001b[0m auto_provisioning_locations = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m autoscaling_profile = \"BALANCED\"\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m "] +[21.39158, "o", "auto_provisioning_defaults (known after apply)\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m confidential_nodes (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m control_plane_endpoints_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m cost_management_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m database_encryption {\r\n \u001b[32m+\u001b[0m\u001b[0m state = \"DECRYPTED\"\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m default_snat_status {\r\n \u001b[32m+\u001b[0m\u001b[0m disabled = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m enterprise_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m gateway_api_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m identity_service_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m ip_allocation_policy {\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_ipv4_cidr_block = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_secondary_range_name = \"range-demo-cluster-pods\"\r\n \u001b[32m+\u001b[0m\u001b[0m services_ipv4_cidr_block = ("] +[21.391631, "o", "known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m services_secondary_range_name = \"range-demo-cluster-services\"\r\n \u001b[32m+\u001b[0m\u001b[0m stack_type = \"IPV4\"\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m pod_cidr_overprovision_config (known after apply)\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m logging_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m maintenance_policy {\r\n \u001b[32m+\u001b[0m\u001b[0m daily_maintenance_window {\r\n \u001b[32m+\u001b[0m\u001b[0m duration = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m start_time = \"05:00\"\r\n }\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m master_auth {\r\n \u001b[32m+\u001b[0m\u001b[0m client_certificate = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m client_key = (sensitive value)\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_ca_certificate = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m client_certificate_config {\r\n \u001b[32m+\u001b[0m\u001b[0m issue_client_certificate = false\r\n }\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m master_authorized_networks_config (known after a"] +[21.391679, "o", "pply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m mesh_certificates {\r\n \u001b[32m+\u001b[0m\u001b[0m enable_certificates = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m monitoring_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m network_policy {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m node_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m node_pool {\r\n \u001b[32m+\u001b[0m\u001b[0m initial_node_count = 0\r\n \u001b[32m+\u001b[0m\u001b[0m instance_group_urls = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m managed_instance_group_urls = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m max_pods_per_node = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"default-pool\"\r\n \u001b[32m+\u001b[0m\u001b[0m name_prefix = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_count = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_locations = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m version = (known after apply)\r"] +[21.391727, "o", "\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m management {\r\n \u001b[32m+\u001b[0m\u001b[0m auto_repair = true\r\n \u001b[32m+\u001b[0m\u001b[0m auto_upgrade = true\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m network_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m node_config {\r\n \u001b[32m+\u001b[0m\u001b[0m disk_size_gb = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m disk_type = \"pd-balanced\"\r\n \u001b[32m+\u001b[0m\u001b[0m effective_taints = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_confidential_storage = false\r\n \u001b[32m+\u001b[0m\u001b[0m image_type = \"COS_CONTAINERD\"\r\n \u001b[32m+\u001b[0m\u001b[0m labels = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m local_ssd_count = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m logging_variant = \"DEFAULT\"\r\n \u001b[32m+\u001b[0m\u001b[0m machine_type = \"e2-medium\"\r\n \u001b[32m+\u001b[0m\u001b[0m metadata = (known after apply)\r\n "] +[21.391741, "o", " \u001b[32m+\u001b[0m\u001b[0m min_cpu_platform = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m oauth_scopes = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m preemptible = false\r\n \u001b[32m+\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m spot = false\r\n \u001b[32m+\u001b[0m\u001b[0m tags = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"gke-demo-cluster\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"gke-demo-cluster-default-pool\",\r\n ]\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m confidential_nodes (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m gcfs_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m guest_accelerator (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m kubelet_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m shielded_instance_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enable_integrity_monitoring = true\r\n "] +[21.39179, "o", " \u001b[32m+\u001b[0m\u001b[0m enable_secure_boot = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m windows_node_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m workload_metadata_config {\r\n \u001b[32m+\u001b[0m\u001b[0m mode = \"GKE_METADATA\"\r\n }\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m upgrade_settings (known after apply)\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m node_pool_auto_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m node_pool_defaults {\r\n \u001b[32m+\u001b[0m\u001b[0m node_config_defaults {\r\n \u001b[32m+\u001b[0m\u001b[0m insecure_kubelet_readonly_port_enabled = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m logging_variant = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m gcfs_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n }\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m notification_config {\r\n \u001b[32m+\u001b[0m\u001b[0m pubsub {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n \u001b[90m# (1 unchanged attribut"] +[21.39181, "o", "e hidden)\u001b[0m\u001b[0m\r\n }\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m release_channel {\r\n \u001b[32m+\u001b[0m\u001b[0m channel = \"REGULAR\"\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m security_posture_config {\r\n \u001b[32m+\u001b[0m\u001b[0m mode = \"DISABLED\"\r\n \u001b[32m+\u001b[0m\u001b[0m vulnerability_mode = \"VULNERABILITY_DISABLED\"\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m service_external_ips_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m timeouts {\r\n \u001b[32m+\u001b[0m\u001b[0m create = \"45m\"\r\n \u001b[32m+\u001b[0m\u001b[0m delete = \"45m\"\r\n \u001b[32m+\u001b[0m\u001b[0m update = \"45m\"\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m vertical_pod_autoscaling {\r\n \u001b[32m+\u001b[0m\u001b[0m enabled = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m workload_identity_config {\r\n \u001b[32m+\u001b[0m\u001b[0m workload_pool = \"educates-testing.svc.id.goog\"\r\n }\r\n }\r\n"] +[21.391964, "o", "\r\n\u001b[1m # module.gke_for_educates.module.gke.google_container_node_pool.pools[\"node-pool-workshops\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_container_node_pool\" \"pools\" {\r\n \u001b[32m+\u001b[0m\u001b[0m cluster = \"demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m initial_node_count = 2\r\n \u001b[32m+\u001b[0m\u001b[0m instance_group_urls = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m location = \"us-central1\"\r\n \u001b[32m+\u001b[0m\u001b[0m managed_instance_group_urls = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m max_pods_per_node = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"node-pool-workshops\"\r\n \u001b[32m+\u001b[0m\u001b[0m name_prefix = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_count = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_locations = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m operation = (known after app"] +[21.392002, "o", "ly)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m version = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m autoscaling {\r\n \u001b[32m+\u001b[0m\u001b[0m location_policy = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m max_node_count = 2\r\n \u001b[32m+\u001b[0m\u001b[0m min_node_count = 2\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m management {\r\n \u001b[32m+\u001b[0m\u001b[0m auto_repair = true\r\n \u001b[32m+\u001b[0m\u001b[0m auto_upgrade = true\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m network_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m node_config {\r\n \u001b[32m+\u001b[0m\u001b[0m disk_size_gb = 100\r\n \u001b[32m+\u001b[0m\u001b[0m disk_type = \"pd-balanced\"\r\n \u001b[32m+\u001b[0m\u001b[0m effective_taints = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_confidential_storage = false\r\n \u001b[32m+\u001b[0m\u001b[0m image_type = \"COS_CONTAINERD\"\r\n \u001b[32m+\u001b[0m\u001b[0m labels = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"clust"] +[21.392037, "o", "er_name\" = \"demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m \"node_pool\" = \"node-pool-workshops\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m local_ssd_count = 0\r\n \u001b[32m+\u001b[0m\u001b[0m logging_variant = \"DEFAULT\"\r\n \u001b[32m+\u001b[0m\u001b[0m machine_type = \"e2-medium\"\r\n \u001b[32m+\u001b[0m\u001b[0m metadata = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"cluster_name\" = \"demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m \"disable-legacy-endpoints\" = \"true\"\r\n \u001b[32m+\u001b[0m\u001b[0m \"node_pool\" = \"node-pool-workshops\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m min_cpu_platform = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m oauth_scopes = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/cloud-platform\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/devstorage.read_only\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/logging.write\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.google"] +[21.392057, "o", "apis.com/auth/monitoring\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/service.management.readonly\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/servicecontrol\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"https://www.googleapis.com/auth/trace.append\",\r\n ]\r\n \u001b[32m+\u001b[0m\u001b[0m preemptible = false\r\n \u001b[32m+\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m spot = false\r\n \u001b[32m+\u001b[0m\u001b[0m tags = [\r\n \u001b[32m+\u001b[0m\u001b[0m \"gke-demo-cluster\",\r\n \u001b[32m+\u001b[0m\u001b[0m \"gke-demo-cluster-node-pool-workshops\",\r\n ]\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m confidential_nodes (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m gcfs_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m guest_accelerator (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m kubelet_config (known "] +[21.392097, "o", "after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m shielded_instance_config {\r\n \u001b[32m+\u001b[0m\u001b[0m enable_integrity_monitoring = true\r\n \u001b[32m+\u001b[0m\u001b[0m enable_secure_boot = false\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m windows_node_config (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m workload_metadata_config {\r\n \u001b[32m+\u001b[0m\u001b[0m mode = \"GKE_METADATA\"\r\n }\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m timeouts {\r\n \u001b[32m+\u001b[0m\u001b[0m create = \"45m\"\r\n \u001b[32m+\u001b[0m\u001b[0m delete = \"45m\"\r\n \u001b[32m+\u001b[0m\u001b[0m update = \"45m\"\r\n }\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m upgrade_settings {\r\n \u001b[32m+\u001b[0m\u001b[0m max_surge = 1\r\n \u001b[32m+\u001b[0m\u001b[0m max_unavailable = 0\r\n \u001b[32m+\u001b[0m\u001b[0m strategy = \"SURGE\"\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m blue_green_settings (known after apply)\r\n }\r\n }\r\n"] +[21.392134, "o", "\r\n\u001b[1m # module.gke_for_educates.module.gke.kubernetes_config_map.ip_masq_agent[0]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"kubernetes_config_map\" \"ip_masq_agent\" {\r\n \u001b[32m+\u001b[0m\u001b[0m data = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"config\" = <<-EOT\r\n nonMasqueradeCIDRs:\r\n - 10.0.0.0/8\r\n - 172.16.0.0/12\r\n - 192.168.0.0/16\r\n resyncInterval: 60s\r\n masqLinkLocal: false\r\n EOT\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m metadata {\r\n \u001b[32m+\u001b[0m\u001b[0m generation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m labels = {\r\n \u001b[32m+\u001b[0m\u001b[0m \"maintained_by\" = \"terraform\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"ip-masq-agent\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n \u001b[32m+\u001b[0m\u001b[0m resource_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m uid = (known after apply)\r\n "] +[21.392177, "o", " }\r\n }\r\n"] +[21.392382, "o", "\r\n\u001b[1m # module.gke_for_educates.module.gke_auth.data.google_container_cluster.gke_cluster\u001b[0m will be read during apply\r\n # (config refers to values not yet known)\r\n\u001b[0m \u001b[36m<=\u001b[0m\u001b[0m data \"google_container_cluster\" \"gke_cluster\" {\r\n \u001b[32m+\u001b[0m\u001b[0m addons_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m allow_net_admin = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m authenticator_groups_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m binary_authorization = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_autoscaling = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_ipv4_cidr = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m confidential_nodes = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m control_plane_endpoints_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m cost_management_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m "] +[21.392419, "o", "database_encryption = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m datapath_provider = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m default_max_pods_per_node = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m default_snat_status = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m deletion_protection = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m description = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m disable_l4_lb_firewall_reconciliation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m dns_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m effective_labels = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_autopilot = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_cilium_clusterwide_network_policy = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_fqdn_network_policy = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enab"] +[21.39246, "o", "le_intranode_visibility = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_k8s_beta_apis = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_kubernetes_alpha = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_l4_ilb_subsetting = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_legacy_abac = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_multi_networking = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_shielded_nodes = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_tpu = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m endpoint = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enterprise_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m fleet = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m gateway_api_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id "] +[21.39251, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m identity_service_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m initial_node_count = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m ip_allocation_policy = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m label_fingerprint = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m location = \"us-central1\"\r\n \u001b[32m+\u001b[0m\u001b[0m logging_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m logging_service = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m maintenance_policy = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m master_auth = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m master_authorized_networks_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m master_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m mesh_certificates "] +[21.392541, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m min_master_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m monitoring_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m monitoring_service = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m network = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m network_policy = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m networking_mode = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_locations = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_pool = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_pool_auto_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_pool_defaults "] +[21.392584, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_version = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m notification_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m operation = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m private_cluster_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m private_ipv6_google_access = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m release_channel = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m remove_default_node_pool = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m resource_labels = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m resource_usage_export_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m secret_manager_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m security_posture_config "] +[21.392596, "o", " = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m self_link = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m service_external_ips_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m services_ipv4_cidr = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m subnetwork = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m terraform_labels = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m tpu_ipv4_cidr_block = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m user_managed_keys_config = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m vertical_pod_autoscaling = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m workload_identity_config = (known after apply)\r\n }\r\n"] +[21.392667, "o", "\r\n\u001b[1m # module.gke_for_educates.module.vpc.module.subnets.google_compute_subnetwork.subnetwork[\"us-central1/demo-cluster-subnet\"]\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_compute_subnetwork\" \"subnetwork\" {\r\n \u001b[32m+\u001b[0m\u001b[0m creation_timestamp = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m enable_flow_logs = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m external_ipv6_prefix = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m fingerprint = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m gateway_address = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m internal_ipv6_prefix = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m ip_cidr_range = \"10.0.0.0/24\"\r\n \u001b[32m+\u001b[0m\u001b[0m ipv6_cidr_range = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m ipv6_gce_endpoint = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"demo-cluster-subnet\"\r\n \u001b[32m+\u001b[0m\u001b[0m"] +[21.392699, "o", " network = \"demo-cluster-vpc\"\r\n \u001b[32m+\u001b[0m\u001b[0m private_ip_google_access = true\r\n \u001b[32m+\u001b[0m\u001b[0m private_ipv6_google_access = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m purpose = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m region = \"us-central1\"\r\n \u001b[32m+\u001b[0m\u001b[0m self_link = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m stack_type = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m state = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m subnetwork_id = (known after apply)\r\n\r\n \u001b[32m+\u001b[0m\u001b[0m secondary_ip_range {\r\n \u001b[32m+\u001b[0m\u001b[0m ip_cidr_range = \"10.1.0.0/16\"\r\n \u001b[32m+\u001b[0m\u001b[0m range_name = \"range-demo-cluster-pods\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m secondary_ip_range {\r\n \u001b[32m+\u001b[0m\u001b[0m ip_cidr_range = \"10.2.0.0/20\"\r\n \u001b[32m+\u001b[0m\u001b[0m range_name = \"range-demo-cluster-services\"\r\n "] +[21.39271, "o", " }\r\n }\r\n"] +[21.392772, "o", "\r\n\u001b[1m # module.gke_for_educates.module.vpc.module.vpc.google_compute_network.network\u001b[0m will be created\r\n\u001b[0m \u001b[32m+\u001b[0m\u001b[0m resource \"google_compute_network\" \"network\" {\r\n \u001b[32m+\u001b[0m\u001b[0m auto_create_subnetworks = false\r\n \u001b[32m+\u001b[0m\u001b[0m bgp_always_compare_med = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m bgp_best_path_selection_mode = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m bgp_inter_region_cost = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m delete_default_routes_on_create = false\r\n \u001b[32m+\u001b[0m\u001b[0m enable_ula_internal_ipv6 = false\r\n \u001b[32m+\u001b[0m\u001b[0m gateway_ipv4 = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m internal_ipv6_range = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m mtu = 0\r\n \u001b[32m+\u001b[0m\u001b[0m name "] +[21.392832, "o", " = \"demo-cluster-vpc\"\r\n \u001b[32m+\u001b[0m\u001b[0m network_firewall_policy_enforcement_order = \"AFTER_CLASSIC_FIREWALL\"\r\n \u001b[32m+\u001b[0m\u001b[0m network_id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m numeric_id = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m project = \"educates-testing\"\r\n \u001b[32m+\u001b[0m\u001b[0m routing_mode = \"REGIONAL\"\r\n \u001b[32m+\u001b[0m\u001b[0m self_link = (known after apply)\r\n \u001b[90m# (1 unchanged attribute hidden)\u001b[0m\u001b[0m\r\n }\r\n\r\n\u001b[1mPlan:\u001b[0m 39 to add, 0 to change, 0 to destroy.\r\n\u001b[0m\r\nChanges to Outputs:\r\n \u001b[32m+\u001b[0m\u001b[0m educates = {\r\n \u001b[32m+\u001b[0m\u001b[0m educates_installer_version = \"ghcr.io/educates/educates-installer:3.3.2\"\r\n \u001b[32m+\u001b[0m\u001b[0m is_kapp_controller_installed = true\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m gke = {\r\n \u001b[32m+\u001b[0m\u001b[0m certmanager_service_account = \"demo-cluster-cert-manager@educates"] +[21.392869, "o", "-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m cluster_name = \"demo-cluster\"\r\n \u001b[32m+\u001b[0m\u001b[0m externaldns_service_account = \"demo-cluster-external-dns@educates-testing.iam.gserviceaccount.com\"\r\n \u001b[32m+\u001b[0m\u001b[0m kubernetes_version = \"1.32.4-gke.1415000\"\r\n \u001b[32m+\u001b[0m\u001b[0m network_uri = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m node_pools = [\r\n \u001b[32m+\u001b[0m\u001b[0m {\r\n \u001b[32m+\u001b[0m\u001b[0m auto_repair = true\r\n \u001b[32m+\u001b[0m\u001b[0m auto_upgrade = true\r\n \u001b[32m+\u001b[0m\u001b[0m disk_size_gb = 100\r\n \u001b[32m+\u001b[0m\u001b[0m disk_type = \"pd-balanced\"\r\n \u001b[32m+\u001b[0m\u001b[0m image_type = \"COS_CONTAINERD\"\r\n \u001b[32m+\u001b[0m\u001b[0m initial_node_count = 2\r\n \u001b[32m+\u001b[0m\u001b[0m machine_type = \"e2-medium\"\r\n \u001b[32m+\u001b[0m\u001b[0m max_count = 2\r\n \u001b[32m+\u001b[0m\u001b[0m min_count = 2\r\n \u001b[32m+\u001b[0m\u001b[0m name = \"n"] +[21.392881, "o", "ode-pool-workshops\"\r\n \u001b[32m+\u001b[0m\u001b[0m preemptible = false\r\n \u001b[32m+\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n },\r\n ]\r\n \u001b[32m+\u001b[0m\u001b[0m service_account = \"demo-cluster@educates-testing.iam.gserviceaccount.com\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m kubernetes = {\r\n \u001b[32m+\u001b[0m\u001b[0m host = (known after apply)\r\n \u001b[32m+\u001b[0m\u001b[0m kubeconfig_file = \"./kubeconfig-demo-cluster.yaml\"\r\n }\r\n \u001b[32m+\u001b[0m\u001b[0m token-sa-kubeconfig = {\r\n \u001b[32m+\u001b[0m\u001b[0m token-sa-kubeconfig = {\r\n \u001b[32m+\u001b[0m\u001b[0m kubeconfig_file = \"./kubeconfig-demo-cluster-token.yaml\"\r\n \u001b[32m+\u001b[0m\u001b[0m namespace = \"kube-system\"\r\n \u001b[32m+\u001b[0m\u001b[0m service_account = \"automation\"\r\n }\r\n }\r\n\u001b[90m\r\n────────────────────────────────────────────────────────────────────"] +[21.392942, "o", "────────────────────────────────────────────\u001b[0m\r\n\r\nNote: You didn't use the -out option to save this plan, so Terraform can't guarantee to take exactly these\r\nactions if you run \"terraform apply\" now.\r\n"] +[21.397123, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"] +[21.422759, "o", "\u001b]2;bkable@Mac:~/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u0007\u001b]1;..ucates-on-gke\u0007"] +[21.424621, "o", "\u001b]7;file://Mac.lan/Users/bkable/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u001b\\"] +[21.425175, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[01;34mgit:(\u001b[31mmain\u001b[34m) \u001b[33m✗\u001b[00m "] +[21.425183, "o", "\u001b[K"] +[21.425244, "o", "\u001b[?1h\u001b="] +[21.425304, "o", "\u001b[?2004h"] +[82.440049, "o", "e"] +[82.625373, "o", "\bex"] +[82.739733, "o", "i"] +[82.912307, "o", "t"] +[83.143972, "o", "\u001b[?1l\u001b>"] +[83.144404, "o", "\u001b[?2004l\r\r\n"] +[83.147182, "o", "\u001b]2;exit\u0007\u001b]1;exit\u0007"] diff --git a/static/asciinemas/terraform-verify-k8s-pods.cast b/static/asciinemas/terraform-verify-k8s-pods.cast new file mode 100644 index 0000000..546fbe6 --- /dev/null +++ b/static/asciinemas/terraform-verify-k8s-pods.cast @@ -0,0 +1,56 @@ +{"version": 2, "width": 172, "height": 40, "timestamp": 1749090144, "env": {"SHELL": "/bin/zsh", "TERM": "xterm-256color"}} +[0.568414, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"] +[0.573613, "o", "\u001b]2;bkable@Mac:~/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u0007\u001b]1;..ucates-on-gke\u0007"] +[0.575578, "o", "\u001b]7;file://Mac.lan/Users/bkable/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u001b\\"] +[0.576182, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[K"] +[0.57633, "o", "\u001b[?1h\u001b="] +[0.576394, "o", "\u001b[?2004h"] +[0.598772, "o", "\r\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[01;34mgit:(\u001b[31mmain\u001b[34m) \u001b[33m✗\u001b[00m \u001b[K"] +[2.219226, "o", "k"] +[2.560543, "o", "u"] +[2.658705, "o", "b"] +[2.872589, "o", "e"] +[3.690622, "o", "c"] +[3.955034, "o", "t"] +[4.065402, "o", "l"] +[4.462689, "o", " "] +[4.629384, "o", "g"] +[4.799214, "o", "e"] +[4.871655, "o", "t"] +[5.015938, "o", " "] +[5.352931, "o", "p"] +[5.432274, "o", "o"] +[5.658521, "o", "d"] +[5.750667, "o", "s"] +[6.144719, "o", " "] +[6.528644, "o", "-"] +[6.919131, "o", "A"] +[7.285324, "o", "\u001b[?1l\u001b>"] +[7.28551, "o", "\u001b[?2004l\r\r\n"] +[7.286311, "o", "\u001b]2;kubectl get pods -A\u0007\u001b]1;kubectl\u0007"] +[7.668041, "o", "NAMESPACE NAME READY STATUS RESTARTS AGE\r\ncert-manager cert-manager-6c8f7fd46d-vcw44 1/1 Running 0 8m39s\r\ncert-manager cert-manager-cainjector-7795b4bd58-4hr96 1/1 Running 0 8m39s"] +[7.668101, "o", "\r\ncert-manager cert-manager-webhook-df588cb44-cnvvh 1/1 Running 0 8m39s\r\neducates image-puller-n86r7 1/1 Running 0 7m5s\r\neducates image-puller-qc59m 1/1 Running 0 7m5s\r\neducates image-puller-snl8w 1/1 Running 0 7m5s\r\neducates lookup-service-77b9f785b5-snjlz 1/1 Running"] +[7.668299, "o", " 0 7m5s\r\neducates secrets-manager-5d544fc78f-25ps4 1/1 Running 0 7m5s\r\neducates session-manager-cf9c49964-6kkjb 1/1 Running 0 7m5s\r\nexternal-dns external-dns-c8b9c4d48-9kzgm 1/1 Running 0 7m47s\r\ngke-managed-cim kube-state-metrics-0 2/2 Running 0 28m\r\ngmp-system collector-9kdg4 2/2 Running 0 9m38s\r\ngmp-system collector-b92pq 2/2 Running 0 26m\r\ngmp-system collector-g2dzr 2/2 Running 0 26m\r\ngmp-system gmp-operator-56745bffd-rjnxp 1/1 Running 0 27m\r\n"] +[7.668428, "o", "kapp-controller kapp-controller-574b667fb5-2dgns 2/2 Running 0 11m\r\nkube-system event-exporter-gke-77684ccdbc-h8j77 2/2 Running 0 28m\r\nkube-system fluentbit-gke-9mrqt 3/3 Running 0 9m38s\r\nkube-system fluentbit-gke-kmrbr 3/3 Running 0 26m\r\nkube-system fluentbit-gke-kthb4 3/3 Running 0 26m\r\nkube-system gke-metadata-server-49wpr 1/1 Running 0 9m37s\r\nkube-system gke-metadata-server-jcl4t 1/1 Running 0 26m\r\nkube-system gke-metadata-server-q5bgb 1/1 Running 0 26m\r\nkube-system gke-metrics-agent-"] +[7.66846, "o", "52jkq 2/2 Running 0 9m38s\r\nkube-system gke-metrics-agent-fmh9m 2/2 Running 0 26m\r\nkube-system gke-metrics-agent-mm56q 2/2 Running 0 26m\r\nkube-system konnectivity-agent-7c8d4d47cf-5fn42 "] +[7.66851, "o", " 2/2 Running 0 26m\r\nkube-system konnectivity-agent-7c8d4d47cf-bmsjx 2/2 Running 0 27m\r\nkube-system konnectivity-agent-7c8d4d47cf-vlbpz 2/2 Running 0 9m29s\r\nkube-system konnectivity-agent-autoscaler-96469d8b-gmz28 1/1 Running 0 27m\r\nkube-system kube-dns-55c4d88476-2zhp6 4/4 Running 0 26m\r\n"] +[7.668548, "o", "kube-system kube-dns-55c4d88476-9dzh6 4/4 Running 0 28m\r\nkube-system kube-dns-autoscaler-fcdb4966-r2nbl 1/1 Running"] +[7.668614, "o", " 0 27m\r\nkube-system kube-proxy-gke-demo-cluster-node-pool-workshops-3a0fbcb6-d8vd 1/1 Running 0 26m\r\nkube-system kube-proxy-gke-demo-cluster-node-pool-workshops-3a0fbcb6-gmh8 1/1 Running 0 9m38s\r\nkube-system kube-proxy-gke-demo-cluster-node-pool-workshops-3a0fbcb6-kh73 1/1 Running 0 26m\r\nkube-system metrics-server-v1.32.2-6c8f69756b-pczjs 1/1 Running 0 27m\r\nkube-system netd-7d7c7 3/3 "] +[7.66866, "o", "Running 0 26m\r\nkube-system netd-92lgm 3/3 Running 0 9m37s\r\nkube-system netd-w58jj 3/3 Running 0 26m\r\nkube-system pdcsi-node-7tzlj 2/2 Running 0 26m\r\nkube-system pdcsi-node-d645q 2/2 Running "] +[7.668764, "o", "0 26m\r\nkube-system pdcsi-node-g7wlm 2/2 Running 1 (8m56s ago) 9m37s\r\nkyverno kyverno-admission-controller-5cd8f99fdd-bt4hr "] +[7.668782, "o", "1/1 Running 0 7m33s\r\nkyverno kyverno-background-controller-d8cbdb8c4-rp27p 1/1 Running 0 7m33s\r\nkyverno kyverno-cleanup-admission-reports-29151500-lmkz5 0/1 Completed 0 2m32s\r\nkyverno kyverno-cleanup-cluster-admission-reports-29151500-hgnlk 0/1 Completed 0 2m32s\r\nkyverno kyverno-cleanup-controller-79c6fb5798-mxd2h 1/1 Running 0 7m33s\r\nkyverno kyverno-reports-controller-5997664574-wmrln 1/1 Running 0 7m33s\r\nprojectcontour contour-5f778654d5-bq2rz 1/1 Running 0 8m24s\r\nprojectcontour contour-5f778654d5-wts79 1/1 Running 0 8m24s\r\nprojectcontour contour-certgen-v1-30-2-gwgzk 0/1 Completed 0 "] +[7.668878, "o", " 8m24s\r\nprojectcontour envoy-b5g28 "] +[7.668983, "o", " 2/2 Running 0 8m24s\r\nprojectcontour envoy-csbv5 2/2 Running 0 8m24s\r\nprojectcontour envoy-zptvj 2/2 Running 0 8m24s\r\n"] +[7.670626, "o", "\u001b[1m\u001b[7m%\u001b[27m\u001b[1m\u001b[0m \r \r"] +[7.678514, "o", "\u001b]2;bkable@Mac:~/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u0007\u001b]1;..ucates-on-gke\u0007"] +[7.680725, "o", "\u001b]7;file://Mac.lan/Users/bkable/workspace/educates/educates-terraform-modules/root-modules/educates-on-gke\u001b\\"] +[7.681721, "o", "\r\u001b[0m\u001b[27m\u001b[24m\u001b[J\u001b[01;32m➜ \u001b[36meducates-on-gke\u001b[00m \u001b[01;34mgit:(\u001b[31mmain\u001b[34m) \u001b[33m✗\u001b[00m \u001b[K"] +[7.682098, "o", "\u001b[?1h\u001b="] +[7.682113, "o", "\u001b[?2004h"] +[13.883737, "o", "e"] +[14.09922, "o", "\bex"] +[14.182192, "o", "i"] +[14.387049, "o", "t"] +[14.620023, "o", "\u001b[?1l\u001b>"] +[14.620106, "o", "\u001b[?2004l\r\r\n"] +[14.623411, "o", "\u001b]2;exit\u0007\u001b]1;exit\u0007"]