agile-learning-institute / mentorHub-person-api

GoLang Person API
Apache License 2.0
2 stars 3 forks source link

Peer review person API #28

Open FlatBallFlyer opened 8 months ago

FlatBallFlyer commented 8 months ago

I'm interested in thoughts about the config dependency injection pattern, the roll-my-own mongo store approach, and the intersection of store code with the mongosh code used to manage schema's. The API should be pretty observable with a /config and /health endpoint. There are some open issues, make sure to look at those. Please open issues for any recommended changes.

dvuyyuru commented 7 months ago

I want to understand more on the below requirement, I am not clear on the below line..Kindly help me to understand

"I'm interested in thoughts about the config dependency injection pattern, the roll-my-own mongo store approach, and the intersection of store code with the mongosh code used to manage schema's."

In terms of the issues, I have found the below 3 links are not working so far.

  1. In readme file, under “Using the Database Container”If you want a local database, with test data preloaded, you can run the database containers locally with the following command. See here for details (link is not working) on how to stop/start the database. Please find the link below

    https://github.com/agile-learning-institute/mentorHub/blob/main/docker-compose/README.md is not found

  2. In readme file, curl https://raw.githubusercontent.com/agile-learning-institute/institute/main/docker-compose/run-local-db.sh is not found

  3. In the file src/docker/docker-build.sh - curl https://raw.githubusercontent.com/agile-learning-institute/mentorhub/main/docker-compose/run-local-person-api.sh, Incorect path

Kindly let me know, if anything is not needed.

FlatBallFlyer commented 7 months ago

Thank you very much, I have just merged a pull request that should fix these issues. Kindly re-test.

The dependency injection is accomplished with the config object that is constructed and initialized and then passed as a constructor parameter into the other objects where that information is used.