Giter Site home page Giter Site logo

jbossdemocentral / coolstore-microservice Goto Github PK

View Code? Open in Web Editor NEW
299.0 36.0 324.0 13.73 MB

CoolStore is a containerised polyglot microservices application consisting of services based on JBoss, NodeJS, Spring Boot, WildFly Swarm, Vert.x, Netflix OSS and more running on OpenShift

Java 5.95% HTML 0.61% JavaScript 92.14% CSS 0.02% Shell 1.18% Dockerfile 0.01% TSQL 0.10%

coolstore-microservice's Introduction

Red Hat Cool Store Microservice Demo Build Status

This is an example demo showing a retail store consisting of several microservices based on Red Hat OpenShift Application Runtimes (Spring Boot, WildFly Swarm, Vert.x, JBoss EAP and Node.js) deployed to OpenShift.

It demonstrates how to wire up small microservices into a larger application using microservice architectural principals.

Development Branch

⚠️ Please note that master is our development branch and may contain untested features. For stable branch use a version branch like 1.2.x

Services

There are several individual microservices and infrastructure components that make up this app:

  1. Catalog Service - Java application running on JBoss Web Server (Tomcat) and MongoDB, serves products and prices for retail products
  2. Cart Service - Spring Boot application running on JDK which manages shopping cart for each customer
  3. Inventory Service - Java EE application running on JBoss EAP 7 and PostgreSQL, serves inventory and availability data for retail products
  4. Pricing Service - Business rules application for product pricing on JBoss BRMS
  5. Review Service - WildFly Swarm service running on JDK for writing and displaying reviews for products
  6. Rating Service - Vert.x service running on JDK for rating products
  7. Coolstore Gateway - Spring Boot + Camel application running on JDK serving as an API gateway to the backend services
  8. Web UI - A frontend based on AngularJS and PatternFly running in a Node.js container.

Architecture Screenshot

Architecture Screenshot

Prerequisites

In order to deploy the CoolStore microservices application, you need an OpenShift environment with

Deploy CoolStore Microservices Application

Deploy the CoolStore microservices application using this template openshift/coolstore-template.yaml:

oc login -u developer
oc new-project coolstore
oc process -f openshift/coolstore-template.yaml | oc create -f -

When all pods are deployed, verify all services are functioning:

oc rsh $(oc get pods -o name -l app=coolstore-gw)
curl http://catalog:8080/api/products
curl http://inventory:8080/api/availability/329299
curl http://cart:8080/api/cart/FOO
curl http://rating:8080/api/rating/329299
curl http://review:8080/api/review/329299

Deploy Demo: CoolStore Microservices with CI/CD

Use the Ansible deployer for deploying the CoolStore demos: https://github.com/siamaksade/openshift-demos-ansible

Troubleshooting

  • If you see an error like An error occurred while starting the build.imageStream ... it might be due to RHEL or JBoss imagestreams not being installed on your OpenShift environment. Contact the OpenShift admin to install these imagestreams:

    oc login -u system:admin
    oc create -n openshift -f https://raw.githubusercontent.com/jboss-fuse/application-templates/master/fis-image-streams.json
    oc create -n openshift -f https://raw.githubusercontent.com/jboss-openshift/application-templates/ose-v1.4.14/eap/eap64-image-stream.json
    oc create -n openshift -f https://raw.githubusercontent.com/jboss-openshift/application-templates/ose-v1.4.14/openjdk/openjdk18-image-stream.json
    oc create -n openshift -f https://raw.githubusercontent.com/jboss-openshift/application-templates/ose-v1.4.14/processserver/processserver64-image-stream.json
    oc create -n openshift -f https://raw.githubusercontent.com/jboss-openshift/application-templates/ose-v1.4.14/webserver/jws31-tomcat8-image-stream.json
    oc create -n openshift -f https://raw.githubusercontent.com/jboss-openshift/application-templates/ose-v1.4.14/eap/eap70-image-stream.json
    oc create -n openshift -f https://raw.githubusercontent.com/jboss-openshift/application-templates/ose-v1.4.14/decisionserver/decisionserver64-image-stream.json
    oc create -n openshift -f https://raw.githubusercontent.com/jboss-openshift/application-templates/ose-v1.4.14/datagrid/datagrid65-image-stream.json
    
    
  • If you attempt to deploy any of the services, and nothing happens, it may just be taking a while to download the Docker builder images. Visit the OpenShift web console and navigate to Browse->Events and look for errors, and re-run the 'oc delete ; oc create' commands to re-install the images (as outlined at the beginning.)

coolstore-microservice's People

Contributors

btison avatar chrira avatar ddoyle-redhat avatar duncandoyle avatar hurzelpurzel avatar jamesfalkner avatar karstengresch avatar siamaksade avatar sshaaf avatar tqvarnst avatar weimeilin79 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

coolstore-microservice's Issues

Introduce Zipkin

It would be nice to use this example to also demo distributed tracing. We have support here via camel-zipkin with FIS and we should show it off with zipkin server

Make the provision script check for images streams

If a user tries to install the coolstore in a OCP environment that is lack necessary imagestreams they won't see an error message until the build fails. To avoid this the provision script should first verify if the necessary imagestreams are available.

If the user has sufficient rights the script could automatically install the imagestream, but we do not require that so as a last failover the script should immediately return a nice error message that explain what is wrong and how to solve it

Quota limits reach in OpenShift online

Due to the quota limit of resource on OpenShift Online, running this demo can be difficult.
Please state it somewhere in the doc, adding the CPU/RAM requirement for running this demo.

Very often the cart service fails to deploy properly

We now use CoolStore as part of our tests for Minishift, however very often the cart service fails to deploy properly:

https://ci.centos.org/job/minishift-pr/1490/console

We use the following scenario:

@coolstore
Feature: Cool Store
  In order to test Minishift under load
  I need to setup a test environment
  Using CentOS and 4G of memory
  After which I will import image streams
  Finally I will deploy the Cool Store
  
  Scenario: Enabling 'xpaas' add-on
    Given Minishift has state "Does Not Exist"
     When executing "minishift addons enable xpaas"
     Then stdout should contain
      """
      Add-on 'xpaas' enabled
      """

  Scenario: Starting Minishift
    Given Minishift has state "Does Not Exist"
     When executing "minishift start --memory 4096 --iso-url centos" succeeds
     Then Minishift should have state "Running"

  Scenario: User can create new namespace 'coolstore'
   Given Minishift has state "Running"
    When executing "oc new-project coolstore" succeeds
    Then stdout should contain
     """
     Now using project "coolstore"
     """
  
  Scenario: User can create a template for coolstore
   Given Minishift has state "Running"
    When executing "oc create -f ./templates/coolstore.yaml" succeeds
    Then stdout should contain
     """
     template "coolstore" created
     """

  Scenario: User can deploy the coolstore template to namespace 'coolstore' 
   Given Minishift has state "Running"
    When executing "oc new-app --template=coolstore" succeeds
    Then stdout should contain
     """
     Success
     """

  Scenario: Successfully deployed services to namespace coolstore
   Given Minishift has state "Running"
    When services "web-ui, inventory, catalog, cart, coolstore-gw" rollout successfully
     And executing "oc status -v" succeeds
    Then stdout should not contain
     """
     has failed
     """

  Scenario: Should be able to get the pod identifier for the API gateway 
   Given Minishift has state "Running"
    When setting scenario variable "coolstore-gw" to the stdout from executing "oc get pods -o name -l application=coolstore-gw" when succeeds
    Then scenario variable "coolstore-gw" should not be empty

  Scenario: Able to interact with the catalog service from the API gateway
   Given Minishift has state "Running"
    When executing "oc rsh $(coolstore-gw) curl -sSL http://catalog:8080/api/products" succeeds
    Then stdout should not contain
     """
     threw exception
     """
     And stdout should contain
     """
     Fedora
     """

  Scenario: Able to interact with the inventory service from the API gateway
   Given Minishift has state "Running"
    When executing "oc rsh $(coolstore-gw) curl -sSL http://inventory:8080/api/availability/329299" succeeds
    Then stdout should contain
     """
     Raleigh
     """

  Scenario: Able to interact with the cart service from the API gateway
   Given Minishift has state "Running"
    When executing "oc rsh $(coolstore-gw) curl -sSL http://cart:8080/api/cart/FOO" succeeds
    Then stdout should contain
     """
     cartTotal
     """

coolstore-bw build constantly fails (Maven build error)

Hi all,

trying to get a running coolstore-gw image running, it fails during the Maven build process:

Caused by: org.eclipse.aether.transfer.ArtifactNotFoundException: Could not find artifact io.fabric8:fabric8-project-bom-camel-spring-boot:pom:2.2.170.redhat-000010 in jboss.fuse (https://repo.fusesource.com/nexus/content/groups/public/)
at org.eclipse.aether.connector.basic.ArtifactTransportListener.transferFailed(ArtifactTransportListener.java:39)
at org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run(BasicRepositoryConnector.java:355)
at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:67)
at org.eclipse.aether.connector.basic.BasicRepositoryConnector$DirectExecutor.execute(BasicRepositoryConnector.java:581)
at org.eclipse.aether.connector.basic.BasicRepositoryConnector.get(BasicRepositoryConnector.java:249)
at org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads(DefaultArtifactResolver.java:520)
at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:421)
... 27 more
[ERROR]     'dependencies.dependency.version' for org.apache.camel:camel-spring-boot-starter:jar is missing. @ line 37, column 20
[ERROR]     'dependencies.dependency.version' for org.springframework.boot:spring-boot-starter-web:jar is missing. @ line 41, column 17
[ERROR]     'dependencies.dependency.version' for org.springframework.boot:spring-boot-starter-actuator:jar is missing. @ line 45, column 17
[ERROR]     'dependencies.dependency.version' for org.apache.camel:camel-servlet-starter:jar is missing. @ line 49, column 17
[ERROR]     'dependencies.dependency.version' for org.apache.camel:camel-hystrix-starter:jar is missing. @ line 53, column 20
[ERROR]     'dependencies.dependency.version' for org.apache.camel:camel-http4-starter:jar is missing. @ line 58, column 15
[ERROR]     'dependencies.dependency.version' for org.apache.camel:camel-jsonpath-starter:jar is missing. @ line 62, column 15
[ERROR]     'dependencies.dependency.version' for org.apache.camel:camel-jackson-starter:jar is missing. @ line 66, column 15
[ERROR]     'dependencies.dependency.version' for org.apache.camel:camel-swagger-java-starter:jar is missing. @ line 70, column 16
[ERROR]     'dependencies.dependency.version' for junit:junit:jar is missing. @ line 78, column 15
[ERROR]     'dependencies.dependency.version' for org.springframework:spring-test:jar is missing. @ line 83, column 15
[ERROR]     'dependencies.dependency.version' for org.springframework.boot:spring-boot-starter-test:jar is missing. @ line 88, column 15
[ERROR]     'dependencies.dependency.version' for org.jboss.arquillian.junit:arquillian-junit-container:jar is missing. @ line 93, column 15
[ERROR]
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException
[ERROR] [Help 2] http://cwiki.apache.org/confluence/display/MAVEN/UnresolvableModelException
Aborting due to error code 1 for Maven build    
error: build error: non-zero (13) exit code from registry.access.redhat.com/jboss-fuse-6/fis-java-openshift@sha256:efec2da0909b700711f819791d10dfcb6c7a33fdbf454c870cebdbacb18c1ff4

(Full details: 2017-03-24_coolstore-gw-build.txt).

Any chance getting the demo running on my machine (32 GByte, 8core, SSDs) running?

Set up as per instructions, build fails after

oc process -f openshift/coolstore-template.yaml | oc create -f -

not the provision-demo script.

Thanks!

Best wishes,

Karsten

Inventory and Catalog services fail if started after their databases

Inventory and Catalog service are dependent on a PostgreSQL and MongoDB container. If they get started before their database, the container starts but the service doesnät function correctly.

Health probes should be adjusted to test the db connection and restart the pod till the database pods are ready.

Question about imagestreams in troubleshooting

Before being able to deploy the application, several imagestreams need to be available. For instance on minishift this is needed before being able to build. In the troubleshooting I see:

$ oc login -u system:admin
$ oc create -n openshift -f 'https://raw.githubusercontent.com/jboss-openshift/application-templates/master/jboss-image-streams.json'
$ oc create -n openshift -f 'https://raw.githubusercontent.com/openshift/openshift-ansible/master/roles/openshift_examples/files/examples/v1.3/image-streams/image-streams-rhel7.json'

But this seems to be wrong. The last templates defines a lot of same imagestreams as the first file, and it also misses:

  • fis-java-openshift

I had to use:

$ oc login -u system:admin
$ oc create -n openshift -f 'https://raw.githubusercontent.com/jboss-openshift/application-templates/master/jboss-image-streams.json'
$ oc create -n openshift -f 'https://raw.githubusercontent.com/jboss-fuse/application-templates/master/fis-image-streams.json'

Note: I think we need a blessed location for the imagestream templates. WDYT?

"Nexus still not ready, I GIVE UP!" - plain setup on 32 GByte, 8-Core + SSD Fedora 25 Notebook

Hi all,

tried to get the coolstore demo running (latest version tried: 9dc4d65) since several days, assuming that the documentation in https://github.com/jbossdemocentral/coolstore-microservice/blob/master/openshift/scripts/README.md is up to date:

--maven-mirror-url  Use the given Maven repository for builds. If not specifid, a Nexus container is deployed in the demo

I.e., I have not set up any other external Maven repo nor provided the Red Hat GA repo URL.

Environment:

$> uname -a
Linux w701-f25 4.10.5-200.fc25.x86_64 #1 SMP Wed Mar 22 20:37:08 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

$>oc version
oc v3.4.1.10
kubernetes v1.4.0+776c994
features: Basic-Auth GSSAPI Kerberos SPNEGO

Server https://127.0.0.1:8443
openshift v3.4.1.10
kubernetes v1.4.0+776c994

Followed these steps using oc cluster:

# cd <coolstore-microservice-clone-root>
oc-cluster up coolstore --image="registry.access.redhat.com/openshift3/ose" --version=v3.4.1.10
# after oc cluster was finally up
oc login -u system:admin
oc project default
oc adm policy add-cluster-role-to-user cluster-admin developer
oc adm policy add-cluster-role-to-user cluster-admin admin

oc login -u developer
# added user param to hopefully avoid any confusion
./openshift/scripts/provision-demo.sh --project-suffix bank --user developer

The nexus pod log only says:

--> Scaling nexus-2 to 1
--> Waiting up to 10m0s for pods in deployment nexus-2 to become ready
error: update acceptor rejected nexus-2: pods for deployment "nexus-2" took longer than 600 seconds to become ready

Any troubleshooting idea here? This demo just doesn't run on my laptop.

Thanks and best whishes,

Karsten

Project needs to be created and template needs to be processed as "developer" user

If you follow the installation documentation, the "coolstore" project is created under the "system:admin" user. The template is also processed as this user. You can't login with this user in the OpenShift console, which makes it impossible to see the project in the console.

We need to specify that you need to change user to "developer" before creating the project,

Add JBoss Data Virtualization for Catalog service

Current the catalog service connects to a Mongo environment. Make sense to change it to using JDV. Catalog Service using JDV should retrieve product data from existing PostgreSQL and Mongo pods.

api-gateway process is needing SSO_URL param

running the oc process -f api-gateway.json | oc create -f -

error: error processing the template "api-gateway": Template "api-gateway" is invalid: template.parameters[1]: Required value: template.parameters[1]: parameter SSO_URL is required and must be specified
error: no objects passed to create

I see the https://secure-sso-. in the api-gateway.json and updated it according to my server instance but it is still throwing the error

coolstore-gw are not using MAVEN_MIRROR_URL

The fis-java-openshift:2.0 image is not capable of using MAVEN_MIRROR_URL. The solution is to add a custom setting.xml. We are in discussion with engineering to add support MAVEN_MIRROR_URL.

provision_demo.sh doesn't populate gogs repo

provision_demo.sh has an issue where it tries to extract a zip file using tar. This causes an issue where the gogs repo is not populated.

There is a workaround involving unzip and moving the files around to mimic "--strip 1"

Failure due to insufficient Nexus cache space

The nexus template defines just 2Gi volume size.
After a fresh demo installation it requires 3,7Gi

This produces errors during the first builds.

I would suggest setting it almost at 5Gi or 6Gi to cover potential future grow.

WHERE:
the lab-prepare.sh, in deploy_nexus() function downloads the following template:
https://raw.githubusercontent.com/OpenShiftDemos/nexus/master/nexus2-persistent-template.yaml

This template has the parameter which should be fixed:.

...
parameters:
- description: Sonatype Nexus service name
...
- description: Volume space available for Sonatype Nexus e.g. 512Mi, 2Gi
  name: VOLUME_CAPACITY
  required: true
  value: 2Gi

api-gateway generates lots of 'failed to register node to keycloak' errors in log

Although it seems to function, the api-gateway generates tons of

19:27:03,902 WARN  [org.keycloak.adapters.authentication.ClientCredentialsProviderUtils] (pool-11-thread-1) Client 'coolstore-api-gateway' doesn't have secret available
19:27:03,915 ERROR [org.keycloak.adapters.NodesRegistrationManagement] (pool-11-thread-1) failed to register node to keycloak
19:27:03,915 ERROR [org.keycloak.adapters.NodesRegistrationManagement] (pool-11-thread-1) status from server: 500
19:27:03,915 ERROR [org.keycloak.adapters.NodesRegistrationManagement] (pool-11-thread-1)    <html><head><title>Error</title></head><body>Internal Server Error</body></html>
19:27:08,903 WARN  [org.keycloak.adapters.authentication.ClientCredentialsProviderUtils] (pool-11-thread-1) Client 'coolstore-api-gateway' doesn't have secret available
19:27:08,910 ERROR [org.keycloak.adapters.NodesRegistrationManagement] (pool-11-thread-1) failed to register node to keycloak
19:27:08,910 ERROR [org.keycloak.adapters.NodesRegistrationManagement] (pool-11-thread-1) status from server: 500
19:27:08,910 ERROR [org.keycloak.adapters.NodesRegistrationManagement] (pool-11-thread-1)    <html><head><title>Error</title></head><body>Internal Server Error</body></html>
19:27:13,902 WARN  [org.keycloak.adapters.authentication.ClientCredentialsProviderUtils] (pool-11-thread-1) Client 'coolstore-api-gateway' doesn't have secret available
19:27:13,909 ERROR [org.keycloak.adapters.NodesRegistrationManagement] (pool-11-thread-1) failed to register node to keycloak
19:27:13,909 ERROR [org.keycloak.adapters.NodesRegistrationManagement] (pool-11-thread-1) status from server: 500
19:27:13,909 ERROR [org.keycloak.adapters.NodesRegistrationManagement] (pool-11-thread-1)    <html><head><title>Error</title></head><body>Internal Server Error</body></html>

Increase the livenessProbe to 2 min for services

The liveness probe will kill a pod that is not responding within (current value 15 sec). Depending on the underlaying infrastructure, in a limited environment such as CDK this may cause pods to get killed before they are even started leading to a race condition. Setting this to 2 min should be enough for most environments.

Nexus Ephemeral Server - ci vs coolstore namespace

Should we install the nexus server under by example the ci namespace or within coolstore namespace ?
I ask you this question as I get this error when the build of the cart-service is started

[WARNING] The requested profile "openshift" could not be activated because it does not exist.
[ERROR] Plugin org.apache.maven.plugins:maven-resources-plugin:2.5 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-resources-plugin:jar:2.5: Could not transfer artifact org.apache.maven.plugins:maven-resources-plugin:pom:2.5 from/to mirror.default (http://nexus-ci.192.168.64.51.xip.io/content/groups/public/): nexus-ci.192.168.64.51.xip.io: Name or service not known: Unknown host nexus-ci.192.168.64.51.xip.io: Name or service not known -> [Help 1]
org.apache.maven.plugin.PluginResolutionException: Plugin org.apache.maven.plugins:maven-resources-plugin:2.5 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-resources-plugin:jar:2.5
at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolve(DefaultPluginDependenciesResolver.java:129)

Remark : I can access the nexus server at the address "nexus-ci.192.168.64.51.xip.io"

Cart pod not starting correctly

Hi,
after countless trials, I still cannot see the cart pod started correctly. Everything else starts fine.
I'm running the demo on OCP 3.5, maybe it's relevant ?

The log excerpt from the failing pod (problem seems related to DecisionServer):

2017-04-21 10:45:11.738 INFO 1 --- [ main] .s.ShoppingCartServiceImplDecisionServer : Initializing DecisionServer client.
2017-04-21 10:45:17.483 WARN 1 --- [ main] ationConfigEmbeddedWebApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'shoppingCartServiceImplDecisionServer': Invocation of init method failed; nested exception is org.kie.remote.common.rest.KieRemoteHttpRequestException: Error occurred when trying to retrieve response code
2017-04-21 10:45:17.484 INFO 1 --- [ main] s.c.a.AnnotationConfigApplicationContext : Closing org.springframework.context.annotation.AnnotationConfigApplicationContext@233795b6: startup date [Fri Apr 21 10:45:11 UTC 2017]; parent: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@61a485d2
2017-04-21 10:45:17.486 INFO 1 --- [ main] o.apache.catalina.core.StandardService : Stopping service Tomcat
2017-04-21 10:45:17.503 INFO 1 --- [ main] utoConfigurationReportLoggingInitializer :
Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled.
2017-04-21 10:45:17.511 ERROR 1 --- [ main] o.s.boot.SpringApplication : Application startup failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'shoppingCartServiceImplDecisionServer': Invocation of init method failed; nested exception is org.kie.remote.common.rest.KieRemoteHttpRequestException: Error occurred when trying to retrieve response code
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:137) ~[spring-beans-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:408) ~[spring-beans-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1575) ~[spring-beans-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:553) ~[spring-beans-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) ~[spring-beans-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:754) ~[spring-beans-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:866) ~[spring-context-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:542) ~[spring-context-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) ~[spring-boot-1.4.2.RELEASE.jar!/:1.4.2.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:761) [spring-boot-1.4.2.RELEASE.jar!/:1.4.2.RELEASE]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:371) [spring-boot-1.4.2.RELEASE.jar!/:1.4.2.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) [spring-boot-1.4.2.RELEASE.jar!/:1.4.2.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1186) [spring-boot-1.4.2.RELEASE.jar!/:1.4.2.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1175) [spring-boot-1.4.2.RELEASE.jar!/:1.4.2.RELEASE]
at com.redhat.coolstore.CartServiceApplication.main(CartServiceApplication.java:12) [classes!/:1.0.0-SNAPSHOT]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_121]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_121]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_121]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_121]
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) [cart-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87) [cart-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:50) [cart-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:58) [cart-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
Caused by: org.kie.remote.common.rest.KieRemoteHttpRequestException: Error occurred when trying to retrieve response code
at org.kie.remote.common.rest.KieRemoteHttpRequest.responseCode(KieRemoteHttpRequest.java:1331) ~[kie-remote-common-6.4.0.Final-redhat-10.jar!/:6.4.0.Final-redhat-10]
at org.kie.remote.common.rest.KieRemoteHttpRequest.get(KieRemoteHttpRequest.java:707) ~[kie-remote-common-6.4.0.Final-redhat-10.jar!/:6.4.0.Final-redhat-10]
at org.kie.server.client.impl.AbstractKieServicesClientImpl.makeHttpGetRequestAndCreateServiceResponse(AbstractKieServicesClientImpl.java:143) ~[kie-server-client-6.4.0.Final-redhat-10.jar!/:6.4.0.Final-redhat-10]
at org.kie.server.client.impl.KieServicesClientImpl.getServerInfo(KieServicesClientImpl.java:137) ~[kie-server-client-6.4.0.Final-redhat-10.jar!/:6.4.0.Final-redhat-10]
at org.kie.server.client.impl.KieServicesClientImpl.init(KieServicesClientImpl.java:82) ~[kie-server-client-6.4.0.Final-redhat-10.jar!/:6.4.0.Final-redhat-10]
at org.kie.server.client.impl.KieServicesClientImpl.(KieServicesClientImpl.java:68) ~[kie-server-client-6.4.0.Final-redhat-10.jar!/:6.4.0.Final-redhat-10]
at org.kie.server.client.KieServicesFactory.newKieServicesClient(KieServicesFactory.java:101) ~[kie-server-client-6.4.0.Final-redhat-10.jar!/:6.4.0.Final-redhat-10]
at com.redhat.coolstore.service.ShoppingCartServiceImplDecisionServer.initialize(ShoppingCartServiceImplDecisionServer.java:74) ~[classes!/:1.0.0-SNAPSHOT]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_121]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_121]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_121]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_121]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:366) ~[spring-beans-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:311) ~[spring-beans-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:134) ~[spring-beans-4.3.4.RELEASE.jar!/:4.3.4.RELEASE]
... 26 common frames omitted
Caused by: java.net.SocketTimeoutException: connect timed out
at java.net.PlainSocketImpl.socketConnect(Native Method) ~[na:1.8.0_121]
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) ~[na:1.8.0_121]
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) ~[na:1.8.0_121]
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) ~[na:1.8.0_121]
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[na:1.8.0_121]
at java.net.Socket.connect(Socket.java:589) ~[na:1.8.0_121]
at sun.net.NetworkClient.doConnect(NetworkClient.java:175) ~[na:1.8.0_121]
at sun.net.www.http.HttpClient.openServer(HttpClient.java:432) ~[na:1.8.0_121]
at sun.net.www.http.HttpClient.openServer(HttpClient.java:527) ~[na:1.8.0_121]
at sun.net.www.http.HttpClient.(HttpClient.java:211) ~[na:1.8.0_121]
at sun.net.www.http.HttpClient.New(HttpClient.java:308) ~[na:1.8.0_121]
at sun.net.www.http.HttpClient.New(HttpClient.java:326) ~[na:1.8.0_121]
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1202) ~[na:1.8.0_121]
at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1138) ~[na:1.8.0_121]
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1032) ~[na:1.8.0_121]
at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:966) ~[na:1.8.0_121]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1546) ~[na:1.8.0_121]
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1474) ~[na:1.8.0_121]
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480) ~[na:1.8.0_121]
at org.kie.remote.common.rest.KieRemoteHttpRequest.responseCode(KieRemoteHttpRequest.java:1329) ~[kie-remote-common-6.4.0.Final-redhat-10.jar!/:6.4.0.Final-redhat-10]
... 40 common frames omitted

Move FIS imagestream out of the templates

FIS imagestream should be treated like other imagestreams and be moved to a separate json/yaml file or just document to have those imagestreams (EAP, JWS, FIS, etc) available

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.