GoogleContainerTools / GoogleContainerTools/skaffold

ConfigConnector CRD status checking

Open
#7,207 4 comments 1 reaction 0 assignees View on GitHub
area/status-check kind/bug priority/p2
Dominant language
Go
Stars
15.9k
Forks
1.7k
Avg merge
3d 9h
Merged PRs (30d)
10

Description

### Expected behavior

`skaffold apply` of a manifest which contains a `ConfigConnector` CRD should succeed once the resource becomes healthy.

i.e. https://cloud.google.com/config-connector/docs/how-to/install-upgrade-uninstall#addon-configuring

### Actual behavior

```
BUILD
Pulling image: gcr.io/k8s-skaffold/skaffold:v1.35.2
v1.35.2: Pulling from k8s-skaffold/skaffold
Digest: sha256:dd7b38c20839d081a2e17f3c99b7639c0e201bca8e2804ca66bdd462df714d3d
Status: Downloaded newer image for gcr.io/k8s-skaffold/skaffold:v1.35.2
gcr.io/k8s-skaffold/skaffold:v1.35.2

Operation completed over 3 objects/3.4 KiB.
Fetching cluster endpoint and auth data.
kubeconfig entry generated for CLUSTER
Starting deploy...
- configconnector.core.cnrm.cloud.google.com/configconnector.core.cnrm.cloud.google.com configured
Waiting for deployments to stabilize...
- :config-connector-resource/core.cnrm.cloud.google.com/v1beta1, Kind=ConfigConnector, Name=configconnector.core.cnrm.cloud.google.com: could not stabilize within 10m0s
- :config-connector-resource/core.cnrm.cloud.google.com/v1beta1, Kind=ConfigConnector, Name=configconnector.core.cnrm.cloud.google.com failed. Error: could not stabilize within 10m0s.
1/1 deployment(s) failed
ERROR
ERROR: build step 0 "gcr.io/k8s-skaffold/skaffold:v1.35.2" failed: step exited with non-zero status: 1
```

Checking the resource show's it's `Healthy` and up to date:

```
kubectl describe configconnector configconnector.core.cnrm.cloud.google.com
Name: configconnector.core.cnrm.cloud.google.com
Namespace:
Labels: app.kubernetes.io/managed-by=google-cloud-deploy
deploy.cloud.google.com/delivery-pipeline-id=config-connector
deploy.cloud.google.com/location=XXX
deploy.cloud.google.com/project-id=XXX
deploy.cloud.google.com/release-id=XXX
deploy.cloud.google.com/target-id=XXX
skaffold.dev/run-id=XXX
Annotations:
API Version: core.cnrm.cloud.google.com/v1beta1
Kind: ConfigConnector
Metadata:
Creation Timestamp: 2021-09-24T05:13:04Z
Finalizers:
configconnector.cnrm.cloud.google.com/finalizer
Generation: 4
Managed Fields:
API Version: core.cnrm.cloud.google.com/v1beta1
Fields Type: FieldsV1
fieldsV1:
f:spec:
Manager: gke_addon_poststart
Operation: Update
Time: 2021-09-24T05:13:04Z
API Version: core.cnrm.cloud.google.com/v1beta1
Fields Type: FieldsV1
fieldsV1:
f:metadata:
f:finalizers:
.:
v:"configconnector.cnrm.cloud.google.com/finalizer":
f:status:
.:
f:healthy:
Manager: manager
Operation: Update
Time: 2021-09-24T05:13:06Z
API Version: core.cnrm.cloud.google.com/v1beta1
Fields Type: FieldsV1
fieldsV1:
f:metadata:
f:annotations:
.:
f:kubectl.kubernetes.io/last-applied-configuration:
f:labels:
.:
f:app.kubernetes.io/managed-by:
f:deploy.cloud.google.com/delivery-pipeline-id:
f:deploy.cloud.google.com/location:
f:deploy.cloud.google.com/project-id:
f:deploy.cloud.google.com/release-id:
f:deploy.cloud.google.com/target-id:
f:skaffold.dev/run-id:
f:spec:
f:googleServiceAccount:
f:mode:
Manager: kubectl-client-side-apply
Operation: Update
Time: 2022-03-21T03:38:20Z
Resource Version: 294911712
UID: cc821634-355a-4de5-8b21-6f7bac53ccba
Spec:
Google Service Account: XXX@XXX.iam.gserviceaccount.com
Mode: cluster
Status:
Healthy: true
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal UpToDate 4m49s (x24532 over 16d) configconnector-controller ConfigConnector is up to date
```

### Information

- Skaffold version: 1.35.2
- Operating system: Linux
- Installed via: Cloud Deploy/Cloud Build (docker)
- Contents of skaffold.yaml:

```yaml
apiVersion: skaffold/v2beta16
kind: Config
metadata:
name: config-connector
profiles:
- name: dev
deploy:
kubectl:
manifests:
- configconnector.yaml
```

### Steps to reproduce the behavior

create a `configconnector.yaml`:

```yaml
# configconnector.yaml
apiVersion: core.cnrm.cloud.google.com/v1beta1
kind: ConfigConnector
metadata:
# the name is restricted to ensure that there is only one
# ConfigConnector resource installed in your cluster
name: configconnector.core.cnrm.cloud.google.com
spec:
mode: cluster
googleServiceAccount: "SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com"
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.