-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Cloud Based API Instance for Developers #1428
Comments
@noman2002 @kb-0311 I can give this issue a try |
there is file named |
|
@kirtanchandak Please proceed with this. You can use that file, you just need to do some minor changes. But I would suggest please check other solutions like render.com instead of Heroku. |
Hi @noman2002 @kirtanchandak, I have been working on this same issue containerization talawa-api using docker here - #1418 that was merged yesterday and was working on developing a ci/cd pipeline for this exact use case, @kirtanchandak can I work on this issue if you haven't made any significant progress yet? |
One issue per person |
Okay |
This issue did not get any activity in the past 10 days and will be closed in 180 days if no update occurs. Please check if the develop branch has fixed it and report again or close the issue. |
@kirtanchandak Are you still working on this? |
@palisadoes I can work on this if @kirtanchandak is not working on this |
Assigning to@vasujain275. Please work with @noman2002 and @kb-0311 for comments, advice and reviewing the PR |
Hi @noman2002 and @kb-0311, I did some research and found that the MongoDB Atlas free tier is good enough for our use case. I looked into redis free tier at render.com, it has 25 MB of memory with a 50 connection limit and no persistence storage. We can also host our API on render.com but it will be shut down after an inactivity of 5 minutes and will be restarted when called again. Will that render.com's inactivity delay or redis free tier will be a problem? |
|
@kb-0311 We can use the AWS free tier, which will have a t2.micro ec2 instance free for 12 months per account ( we will need a credit card to avail this 12-month free tier ). We can use the docker file and docker-compose file I created in a recent issue, we can set a ci/cd pipeline to push our image to the docker hub on each push and then pull to e2c using GitHub actions. We can then run docker-compose on e2c also using GitHub ci/cd that can run containers of both redis and MongoDB, although I think it will be best to run MongoDB on Atlas as it has a good free tier and will reduce the load on our t2.micro ec2 instance if we run it on atlas. We can also use azure/gcp, they also have this exact free tier of 12 months that requires a credit card on signup. |
@vasujain275 Ideally we also want:
Other:
|
Q. How can github actions do all the changes in our aws instance? My proposed solution -
@noman2002 @kb-0311 , appreciate your feedback on possible improvements in this approach |
|
|
@kb-0311 |
|
@palisadoes Okay I will keep that in mind |
We don't need two different environments for talawa api, the production one will be sufficient to handle both requests from talawa admin/app and developers. Do we also need Apollo Graphql Playground Hosted on the VPS? Because it will be resource intensive as it requires self hosting a standalone apollo server. Currently the prod build disables the Apollo playground i.e. |
The production environment should be enough. Although having a development instance would be nice since we can then implement CD pipelines which would make deployment more easier. But due to limited resources, the best course of action would be to just have the prod instance. The current PR workflow should be sufficient to handle most cases. Occasionally, any errors can be addressed when the main branch is merged with the develop branch, if necessary. |
|
@palisadoes There is no need to remove dev docker files, developers can use that on their local machines for local development. We will use production docker files in cloud instance anyway. |
Thanks |
Here is the issue |
I will in the meantime update the cloud instance scripts, production docker files and test them on |
This will be an interesting issue. Get ready for the migration! |
Should I wait for this postgres migration to complete first? Or are we planning to go with mongodb for now? |
|
Okay, I will wait for the merge then modify the docker files and scripts for postgres only. |
|
I am free this weekend, will try to get this running by this monday |
|
|
|
@palisadoes Sorry for the inactivity and delayed response, due to personal reasons I am not able to give time to this issue and will not able to meet the GSOC deadline. |
I hope you persevere to overcome the recent challenges. Please stay in touch. |
@palisadoes @noman2002 @kb-0311 I would like to continue working on this issue. Please assign me and provide any necessary details to proceed. Thanks! |
@palisadoes i want to work on this issue. please assign i will solve it. |
@noman2002 @kb-0311 please assign i will try to solve it. |
This is being worked on |
I'm going to close this. It's mostly solved. |
We need to have a cloud based API instance for developers to test against. It must:
Please coordinate these efforts with @noman2002 and @kb-0311. Ask to be assigned this task by them.
The text was updated successfully, but these errors were encountered: