kudobuilder/kudo

first-operator sample pipe-task does not work on OCP 4.7.45

dove-young opened this issue · 0 comments

What happened:

  • found these log msgs in kudo controller pod
2022/06/02 05:47:07 PlanExecution: 'genwww' task(s) (instance: default/first-operator-instance) of the deploy.main.genfiles are not ready
2022/06/02 05:47:07 PlanExecution: 'genfiles,app' step(s) (instance: default/first-operator-instance) of the deploy.main are not ready
2022/06/02 05:47:07 InstanceController: Received Reconcile request for instance default/first-operator-instance
2022/06/02 05:47:07 InstanceController: Going to proceed with execution of the scheduled plan 'deploy' on instance default/first-operator-instance
2022/06/02 05:47:08 HealthUtil: pod default/firstoperatorinstance.deploy.main.genfiles.genwww.pipepod is not running yet: Pending
2022/06/02 05:47:08 TaskExecution: object default/firstoperatorinstance.deploy.main.genfiles.genwww.pipepod is NOT healthy: pod default/firstoperatorinstance.deploy.main.genfiles.genwww.pipepod is not
 running yet: Pending
2022/06/02 05:47:08 PlanExecution: 'genwww' task(s) (instance: default/first-operator-instance) of the deploy.main.genfiles are not ready
2022/06/02 05:47:08 PlanExecution: 'genfiles,app' step(s) (instance: default/first-operator-instance) of the deploy.main are not ready
2022/06/02 05:47:08 InstanceController: Received Reconcile request for instance default/first-operator-instance
2022/06/02 05:47:08 InstanceController: Going to proceed with execution of the scheduled plan 'deploy' on instance default/first-operator-instance
2022/06/02 05:47:08 HealthUtil: pod default/firstoperatorinstance.deploy.main.genfiles.genwww.pipepod is not running yet: Pending
2022/06/02 05:47:08 TaskExecution: object default/firstoperatorinstance.deploy.main.genfiles.genwww.pipepod is NOT healthy: pod default/firstoperatorinstance.deploy.main.genfiles.genwww.pipepod is not
 running yet: Pending
2022/06/02 05:47:08 PlanExecution: 'genwww' task(s) (instance: default/first-operator-instance) of the deploy.main.genfiles are not ready
2022/06/02 05:47:08 PlanExecution: 'genfiles,app' step(s) (instance: default/first-operator-instance) of the deploy.main are not ready
2022/06/02 05:47:08 InstanceController: Received Reconcile request for instance default/first-operator-instance
2022/06/02 05:47:08 InstanceController: Going to proceed with execution of the scheduled plan 'deploy' on instance default/first-operator-instance
2022/06/02 05:47:08 PipeTask: default/first-operator-instance copying pipe files
2022/06/02 05:47:08 PipeTask: default/first-operator-instance copying pipe file /tmp/index.html
2022/06/02 05:47:08 PipeTask: default/first-operator-instance creating pipe artifacts
2022/06/02 05:47:08 PipeTask: default/first-operator-instance deleting pipe pod
2022/06/02 05:47:08 HealthUtil: deployment "nginx-deployment" is not healthy: Waiting for deployment spec update to be observed...
2022/06/02 05:47:08 TaskExecution: object default/nginx-deployment is NOT healthy: deployment "nginx-deployment" is not healthy: Waiting for deployment spec update to be observed...
2022/06/02 05:47:08 PlanExecution: 'app' task(s) (instance: default/first-operator-instance) of the deploy.main.app are not ready
2022/06/02 05:47:08 PlanExecution: 'app' step(s) (instance: default/first-operator-instance) of the deploy.main are not ready
2022/06/02 05:47:08 InstanceController: Received Reconcile request for instance default/first-operator-instance
2022/06/02 05:47:08 InstanceController: Going to proceed with execution of the scheduled plan 'deploy' on instance
  • check nginx pod, there is no www volume
  volumes:
  - name: default-token-x7mgz
    secret:
      defaultMode: 420
      secretName: default-token-x7mgz

What you expected to happen:

How to reproduce it (as minimally and precisely as possible):

Anything else we need to know?:

  • And when I changed pipe-pod.yaml and added && tail -f /tmp/index.html to the command args and installed it again. I did not found the command changed.
apiVersion: v1
kind: Pod
spec:
  volumes:
  - name: shared-data
    emptyDir: {}
  initContainers:
    - name: init
      image: busybox
      command: [ "/bin/sh", "-c" ]
      args:
        - wget -O /tmp/index.html 'http://cowsay.morecode.org/say?message=Good+things+come+when+you+least+expect+them&format=html' && tail -f /tmp/index.html
      volumeMounts:
        - name: shared-data
          mountPath: /tmp
  • what I did while re-install it is find instance, uninstall it and re-install again.
[root@st2 ~]# kubectl kudo get instances
List of current installed instances in namespace "default":
.
└── first-operator-instance

[root@st2 ~]#
[root@st2 ~]# kubectl kudo uninstall --instance first-operator-instance
instance.kudo.dev/v1beta1/first-operator-instance deleted

[root@st2 ~]#
[root@st2 ~]# kubectl kudo install ./first-operator -v 9
repo configs: { name:community, url:https://kudo-repository.storage.googleapis.com/v1 }

repository used { name:community, url:https://kudo-repository.storage.googleapis.com/v1 }
acquiring kudo client
getting operator package
determining package type of /root/first-operator
local operator discovered: /root/first-operator
folder walking through directory first-operator
folder walking through directory templates
Preparing default/first-operator:0.1.0 for installation
parameters in use: map[]
operator.kudo.dev default/first-operator unchanged
operatorversion default/first-operator-1.7.9-0.1.0 already installed
instance first-operator-instance created in namespace default
instance default/first-operator-instance created
[root@st2 ~]#
  • then I tried to update operator version and tried to use kubectl kudo upgrade, the pipe-task did not come again.
[root@st2-bastion-dev21 ~]# kubectl kudo get all
List of current installed operators including versions and instances in namespace "default":
.
└── first-operator
    └── first-operator-1.7.9-0.1.0
        └── first-operator-instance

[root@st2 ~]# ^C
[root@st2 ~]# kubectl kudo upgrade first-operator --instance first-operator-instance
operatorversion default/first-operator-0.2.0 created
instance default/first-operator-instance updated
[root@st2 ~]# kubectl kudo get all
List of current installed operators including versions and instances in namespace "default":
.
└── first-operator
    ├── first-operator-0.2.0
    │   └── first-operator-instance
    └── first-operator-1.7.9-0.1.0

[root@st2 ~]#

Environment:

  • Kubernetes version (use kubectl version):
  • Kudo version (use kubectl kudo version):
  • Operator:
  • operatorVersion:
  • Cloud provider or hardware configuration:
  • OS (e.g. from /etc/os-release):
  • Kernel (e.g. uname -a):
  • Install tools:
  • Others: