Azure / appcat-rulesets

Repository for maintaining Rulesets for Windup
Eclipse Public License 2.0
6 stars 10 forks source link

Create rule "Local message queue or message hub" #4

Closed agoncal closed 1 year ago

agoncal commented 1 year ago

This rule highlights use of on-premises message queues which will need replaced with Azure alternatives such as Azure Service Bus or Azure Storage Queues. Specific patterns for identifying these vary based on the specific dependencies, but the most common are:

These metadata are interesting to both Azure App Service and containerized targets.

Java specific things to review:

Existing WindUp Rules

Existing Azure Documentation

WindUp Discovered Messaging Services

The connect.windup.groovy technology rule already checks for:

Supported Azure Messaging Services

### PRs
- [ ] https://github.com/Azure/windup-rulesets/pull/53
- [ ] https://github.com/windup/windup-rulesets/pull/979
- [ ] https://github.com/Azure/windup-rulesets/pull/114
showpune commented 1 year ago

We need to think it from serveral layer 1) Message server you are using ( rabbit, kalfka): jar file and configuration file 2) message framework: jms, spring-message: jar file and configuration jms is server independent, but spring-message sometime is server dependent, like 1) in server bus, the annotation ServiceBusListener 2) in rabbitmq, the annothation RabbitListener

agoncal commented 1 year ago

We already have a SpringBoot rule on MQ: https://github.com/Azure/windup-rulesets/blob/main/rules/rules-reviewed/azure/springboot/spring-boot-to-azure-mq-config.windup.xml

@brunoborges @showpune as we only have an Active MQ rule for now, shall we create/override rules on:

brunoborges commented 1 year ago

I think Kafka is a must for the MVP.

agoncal commented 1 year ago

PR on its way: https://github.com/Azure/windup-rulesets/pull/114