Skip to content
This repository was archived by the owner on May 30, 2025. It is now read-only.
This repository was archived by the owner on May 30, 2025. It is now read-only.

[GCP-Container] Nodepool reconciliation fails when gvisor enabled #491

Description

@josephprem

What happened?

A nodepool was deleted manually, crossplane tries to reconcile and fails with the message

message: 'create failed: cannot create GKE node pool: googleapi: Error 400:
Node taints with key "sandbox.gke.io/runtime" are managed by GKE and must
not be manually specified., badRequest'
reason: ReconcileError

After deleteing the taints from the live CR object, nodepool was successfully reconciled.

How can we reproduce it?

  1. Create a nodepool with forProvider.config.sandboxConfig.type: gvisor
apiVersion: container.gcp.crossplane.io/v1beta1
kind: NodePool
metadata:
  name: xp-demo-cluster-np
spec:
  forProvider:
    autoscaling:
      autoprovisioned: false
      enabled: true
      maxNodeCount: 5
      minNodeCount: 2 
    clusterRef:
      name: xp-demo-cluster
    config:
      machineType: n1-standard-1
      sandboxConfig:
        type: gvisor
      diskSizeGb: 120
      diskType: pd-ssd
      imageType: cos_containerd
      labels:
        test-label: crossplane-created
      oauthScopes:
      - "https://www.googleapis.com/auth/devstorage.read_only"
      - "https://www.googleapis.com/auth/logging.write"
      - "https://www.googleapis.com/auth/monitoring"
      - "https://www.googleapis.com/auth/servicecontrol"
      - "https://www.googleapis.com/auth/service.management.readonly"
      - "https://www.googleapis.com/auth/trace.append"      
    initialNodeCount: 2
    locations:
      - "us-east4-a"
  providerConfigRef:
    name: my-gcp-config
  1. Delete the nodepool through console or gcloud
  2. Gcp-controller tries to reconcile without success

What environment did it happen in?

Crossplane version: 1.11.0
gcp_provider : crossplane/provider-gcp:master
Deployed on vcluster on a OCP project

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions