Skip to content
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

Get Stock Trader working with Artemis MQ #10

Open
jwalcorn opened this issue Aug 10, 2022 · 0 comments
Open

Get Stock Trader working with Artemis MQ #10

jwalcorn opened this issue Aug 10, 2022 · 0 comments

Comments

@jwalcorn
Copy link
Member

We have Stock Trader (Account as the sender, Messaging as the receiver) working with IBM MQ and with the classic flavor of Apache Active MQ (which Amazon hosts as a managed service called Amazon MQ, that Ryan uses in AWS). Need to add support for the new Artemis flavor of Apache Active MQ as well. This will likely mean adding a new artemis enum value for the mq.kind field in the CR yaml and correspondingly in the CRD and CSV in my operator, and then adding a new src/main/liberty/config/includes/artemis.xml for both the Account and Messaging microservices to use that. And the pom.xml will need a dependency added in both microservcies for where to find the .rar file that will need to get copied into the container, and pointed to from that new XML file. This is what we had to do when we added the classic Active MQ support for Ryan in AWS, so it should be the same pattern for Brian in GCP.

For now, Brian is going to get a sample working in a pod in GKE that talks to the Artemis we just got deployed in his GKE cluster, that ideally does a JMS put of a message to a queue, and that can receive that message via JMS as well. In the meantime, I'll need to make the following updates:

  1. Update the pom.xml for Account to add the Artemis rar dependency
  2. Update the Dockerfile for Account to copy that rar into the container
  3. Add a src/main/liberty/config/includes/artemis.xml that configures this rar to work in Liberty
  4. Do the above 3 steps also for the sibling Messaging microservice
  5. Update the CRD and CSV files in the operator to teach it the new enum value for mq.kind
  6. Update the account.yaml and messaging.yaml in the helm chart inside the operator to pass the needed values as env var, that will be referred to from the new artemis.xml in each microservice. I think Ryan needed a URL to be passed for classic Active MQ, so perhaps Artemis will need the same -we'll see.

Note this seems to have some good communication with the Liberty team on making it work with Artemis, so I'll likely copy what I see there to make my artemis.xml: https://gitter.im/OpenLiberty/development?at=5eebb4dcb8152d34844da14e. This too make be helpful for the pom.xml dependency: https://mvnrepository.com/artifact/org.apache.activemq/artemis-ra

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant