-
Notifications
You must be signed in to change notification settings - Fork 21
changes in README #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
| Very similar to the test plan certificates can be injected into the container. A secret may be used for this purpose rather than a configMap. A java keystore containing the broker certificates has been created in the <<../../enmasse/README.adoc#,EnMasse section>>. A password is also necessary to access the keystore and may be provided as environment variable. Both can be injected with a single secret running the following command in the same directory that was used for the creation of the java keystore. | ||
|
|
||
| $ oc create secret generic broker-jks --from-literal=J_JKS_PWD=xxxxxx --from-file=./amqp-certs/amqp.jks | ||
| $ oc create secret generic broker-jks --from-literal=JKS_PWD=xxxxxx --from-file=./amqp-certs/amqp.jks |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
JMeter requires a plugin to read environment variables. As a quick workaround the JMeter run script passes env variables with J_ prefix as system parameters. In that case J_JKS_PWD is correct. Alternatively we could add the plugin, remove the logic from script and use env() in the test plan
| [source,bash] | ||
| ---- | ||
| $ oc new-project perftest | ||
| create a persitence volume as statefulset requires it,one can use the template provided here(oc create -f brokerpv.yaml ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes you are right we should state that a 2GB PV is required for the provisioning of EnMasse. That said we don't have brokerpv.yaml in the repo and the file would be different for every OCP cluster. We could just have before "In short the following will ..." something like: "Note that you need to have a 2 GB persistent volume available"
| The container image can easily be build with the fabric8 build target, which uses the S2I strategy provided you are connected to OpenShift. Once you have cloned the git repository execute the following commands: | ||
|
|
||
| $ cd auto-perf-test/camel-amq-fakeapp | ||
| Change amqp.host in the following file |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good point. Can you move the instruction before the code part so that we only have the command there?
|
|
||
| $ oc login | ||
| $ mvn fabric8:build | ||
| $ mvn package fabric8:build |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fabric8 does an S2I build. IIRC it takes the code from the git repo
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it does the binary build.if you check the camel-amq-fakeapp-bc.yaml there is no mention of the git repo and it specifies type as binary.
| camel-amq-fakeapp/src/main/openshift/camel-amq-fakeapp-props-cm.yaml | ||
| camel-amq-fakeapp/src/main/resources/application.properties | ||
|
|
||
| Create certificate as described below in section as prerequisite. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need that here? The certificate is not required until deployment, is it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes,otherwise test case will not run successfully.one has to run it with -DskipTest option.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok good point. We can have the change in application.properties made and the jks created here. It also makes sense to have it in the build phase as it is close to the code. ConfigMap and secrets can then be created during deployment. In a real project (and we may do that later) I would use an embedded broker for the component test not to have any external dependency. git clone, mvn package should just work
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi Shrish. Thanks for the input. Can you have a look at my comments? Mind that I haven't been consistent with code markup: sometimes with space, sometimes with "----" around the snippet but it would be good to keep the separation between commands and explanations
Some changes are required in order to get everything running.