kabanero-io / kabanero-command-line-services

This repo will be archived soon.
Apache License 2.0
3 stars 7 forks source link

Bug: Kabanero CLI cmd to list stacks returns an error #200

Closed tkulik closed 4 years ago

tkulik commented 4 years ago

Environment Information:

Kabanero/ICPA Version: CP4Apps 4.2.0-rc.2
OpenShift Version: OCP 4.4.3
Platform: Fyre, 3 masters, 3 workers

Describe the bug:

I have configured Kabanero CLI, but when running kabanero list cmd getting this error:

./kabanero list
String index out of range: 0

To Reproduce:

  1. Installed Kabanero CLI file kabanero-0.9.0-linux-amd64.tar, got it from: https://github.com/kabanero-io/kabanero-command-line/releases/tag/0.9.0

    1. Login to Kabanero CLI.

I used the GitHub Personal Access Token for Password value:

./kabanero login kabanero-cli-kabanero.apps.braises.cp.fyre.ibm.com -u tkulik
Password:
Are you sure you want to continue with an insecure connection to kabanero-cli-kabanero.apps.braises.cp.fyre.ibm.com (y/n): y

Logged in to Kabanero instance: kabanero-cli-kabanero.apps.braises.cp.fyre.ibm.com
  1. Run kabanero list cmd
    ./kabanero list
    String index out of range: 0

    I tried ./kabanero help and it worked.

Here is additional info.

  1. Output from the logs of kabanero cli pod showing error:
    
    oc log kabanero-cli-56b78685b4-8f8d8

curatedStacksMap (after packaging): [{versions=[{images=[{"image":"default-route-openshift-image-registry.apps.braises.cp.fyre.ibm.com\/kabanero\/java-openliberty:0.2.12"}], reponame=central, version=0.2.12}], name=java-openliberty}, {versions=[{images=[{"image":"default-route-openshift-image-registry.apps.braises.cp.fyre.ibm.com\/kabanero\/java-spring-boot2:0.3.29"}], reponame=central, version=0.3.29}], name=java-spring-boot2}, {versions=[{images=[{"image":"default-route-openshift-image-registry.apps.braises.cp.fyre.ibm.com\/kabanero\/java-websphere-traditional:0.3.1"}], reponame=central, version=0.3.1}], name=java-websphere-traditional}, {versions=[{images=[{"image":"default-route-openshift-image-registry.apps.braises.cp.fyre.ibm.com\/kabanero\/nodejs-express:0.4.8"}], reponame=central, version=0.4.8}], name=nodejs-express}, {versions=[{images=[{"image":"default-route-openshift-image-registry.apps.braises.cp.fyre.ibm.com\/kabanero\/nodejs:0.3.6"}], reponame=central, version=0.3.6}], name=nodejs}, {versions=[{images=[{"image":"default-route-openshift-image-registry.apps.braises.cp.fyre.ibm.com\/kabanero\/quarkus:0.3.6"}], reponame=central, version=0.3.6}], name=quarkus}] curated stack for namespace: kabanero kab group: kabanero.io=[JSON Generation Error: [java.io.IOException: attempting to serialize object with an invalid property value: '[{images=[{"image":"default-route-openshift-image-registry.apps.braises.cp.fyre.ibm.com\/kabanero\/java-openliberty:0.2.12"}], reponame=central, version=0.2.12}]'], JSON Generation Error: [java.io.IOException: attempting to serialize object with an invalid property value: '[{images=[{"image":"default-route-openshift-image-registry.apps.braises.cp.fyre.ibm.com\/kabanero\/java-spring-boot2:0.3.29"}], reponame=central, version=0.3.29}]'], JSON Generation Error: [java.io.IOException: attempting to serialize object with an invalid property value: '[{images=[{"image":"default-route-openshift-image-registry.apps.braises.cp.fyre.ibm.com\/kabanero\/java-websphere-traditional:0.3.1"}], reponame=central, version=0.3.1}]'], JSON Generation Error: [java.io.IOException: attempting to serialize object with an invalid property value: '[{images=[{"image":"default-route-openshift-image-registry.apps.braises.cp.fyre.ibm.com\/kabanero\/nodejs-express:0.4.8"}], reponame=central, version=0.4.8}]'], JSON Generation Error: [java.io.IOException: attempting to serialize object with an invalid property value: '[{images=[{"image":"default-route-openshift-image-registry.apps.braises.cp.fyre.ibm.com\/kabanero\/nodejs:0.3.6"}], reponame=central, version=0.3.6}]'], JSON Generation Error: [java.io.IOException: attempting to serialize object with an invalid property value: '[{images=[{"image":"default-route-openshift-image-registry.apps.braises.cp.fyre.ibm.com\/kabanero\/quarkus:0.3.6"}], reponame=central, version=0.3.6}]']] getting digest for: java-openliberty, versionToFind: 0.2.12 containerRegistryURL=default-route-openshift-image-registry.apps.braises.cp.fyre.ibm.com Entering getSecret(kabanero) stackName=java-openliberty versionNumber=0.2.12 namespace=kabanero crNamespace=kabanero Could not find one of the digests. Kab digest=null, imageDigest=image not found in container registry [err] java.lang.StringIndexOutOfBoundsException: String index out of range: 0 [err] at java.lang.String.substring(String.java:2726) [err] at application.rest.StackUtils.digestCheck(StackUtils.java:446) [err] at application.rest.StackUtils.allStacks(StackUtils.java:491) [err] at application.rest.StacksAccess.listStacks(StacksAccess.java:226) [err] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [err] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [err] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [err] at java.lang.reflect.Method.invoke(Method.java:498) [err] at com.ibm.ws.jaxrs20.cdi.component.JaxRsFactoryImplicitBeanCDICustomizer.serviceInvoke(JaxRsFactoryImplicitBeanCDICustomizer.java:334) [err] at [internal classes] [err] at javax.servlet.http.HttpServlet.service(HttpServlet.java:686) [err] at com.ibm.websphere.jaxrs.server.IBMRestServlet.service(IBMRestServlet.java:96) [err] at [internal classes] [err] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [err] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [err] at java.lang.Thread.run(Thread.java:821) [err] java.lang.StringIndexOutOfBoundsException: String index out of range: 0 [err] at java.lang.String.substring(String.java:2726) [err] at application.rest.StackUtils.digestCheck(StackUtils.java:446) [err] at application.rest.StackUtils.allStacks(StackUtils.java:491) [err] at application.rest.StacksAccess.listStacks(StacksAccess.java:226) [err] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [err] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [err] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [err] at java.lang.reflect.Method.invoke(Method.java:498) [err] at com.ibm.ws.jaxrs20.cdi.component.JaxRsFactoryImplicitBeanCDICustomizer.serviceInvoke(JaxRsFactoryImplicitBeanCDICustomizer.java:334) [err] at [internal classes] [err] at javax.servlet.http.HttpServlet.service(HttpServlet.java:686) [err] at com.ibm.websphere.jaxrs.server.IBMRestServlet.service(IBMRestServlet.java:96) [err] at [internal classes] [err] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [err] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [err] at java.lang.Thread.run(Thread.java:821) podInstanceFromJWT=1591206145874 Authentication.podinstance=1591206145874 It is true that this JWT is from this pod


2.  kabanero instance yaml file:

Please edit the object below. Lines beginning with a '#' will be ignored,

and an empty file will abort the edit. If an error occurs while saving this file will be

reopened with the relevant failures.

# apiVersion: kabanero.io/v1alpha2 kind: Kabanero metadata: annotations: kubectl.kubernetes.io/last-applied-configuration: | {"apiVersion":"kabanero.io/v1alpha2","kind":"Kabanero","metadata":{"annotations":{},"name":"kabanero","namespace":"kabanero"},"spec":{"codeReadyWorkspaces":{"enable":false},"github":{"apiUrl":"https://github.ibm.com/api/v3","organization":"tkulik-cp4apps420","teams":["cp4apps420-team"]},"landing":{"enable":false},"stacks":{"pipelines":[{"https":{"url":"https://github.com/kabanero-io/kabanero-pipelines/releases/download/0.9.0/default-kabanero-pipelines.tar.gz"},"id":"default","sha256":"63b98242b60f6a1cf240b430d24659b9727d16013935553a798be1e6c122c479"}],"repositories":[{"https":{"url":"http://kabanero-index-kabanero.apps.braises.cp.fyre.ibm.com/kabanero-index.yaml"},"name":"central"}]},"targetNamespaces":["kabanero"],"version":"0.9.0"}} creationTimestamp: "2020-05-29T17:10:46Z" finalizers:

./kabanero version
kabanero cli version: 0.9.0
kabanero command line service image: kabanero/kabanero-command-line-services:0.9.0
davco01a commented 4 years ago

fixed and merged