Skip to content

Plan again the project #4

@mauriciogeneroso

Description

@mauriciogeneroso

Initially the idea was to create an ecommerce and create a basket but it was going to add some complexity like race-conditions and product management because I like creating a complete examples and the idea of closing a basket would have some race condition to resolve that I don't think is necessary to include this kind of complexity this portfolio project.

So, re-design the project to be:

  • A service for registering support tickets
    • Two level of users, the customer and the support
    • Both can add comments in the ticket
    • Tickets will have statuses
    • validade statuses change
    • Create some endpoints to create ticket, update ticket, add comment, delete comment (admin permission), and close ticket
    • send kafka events for audit
  • audit-service
    • this is going to be simple in functionality, it will consume from kafka messages and log the events

Tasks:

Part 1:

  • Update service-dicovery
  • Update gateway
  • Study about the frontend and how it better integrate with keycloak
    • Is is better to redirect from gateway or use the gateway as a resource-server only?
    • There is not a better option, but both options are valid, as I would like to introduce a bit of frontend and isolate the backend from redirecting the requests I'll make the gateway a resoruce server that will validade the request/JWT via JWK

Part 2:

  • Once the security pattern is decided, update identity-service

Part 3:

  • Update the Readme with the new functionalities
  • Create diagrams
  • Create tickets in other services to implement

Part 4:

  • Implement it

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status

    In Progress

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions