-
Notifications
You must be signed in to change notification settings - Fork 189
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
Dockerize dependency service #2830
Comments
The it requires a text file called
to run it successfully. The way I am thinking to generate this is:
However, this might create a humongous container (if my understanding of how Docker works is right). There might be a better way to do this. |
This is an interesting problem. I think we should solve it in a simple way to begin: run the command outside the Docker container and copy the I'd run your script in our cc'ing @manekenpix and @raygervais in case they have a better solution. |
That approach would be the most ideal, but sadly I think it only fits for deploying. For development, we would have change other files to generate The only problem would be that you won't be able to build the image separately like in the other services. |
Another option we could consider is adding this script to a I think that running this any more often than when we tag might be too much. |
That sounds wonderful. I don't think the |
So the only issue I see with this approach, is that your script depends on being run in a POSIX shell. If students are trying to do the release on Windows, it will fail. We could run your script in our release workflow, but by then the git However, we could write a little container that copies your script and the lock file in, runs it, and spits out the result. This would let us run it on any system with docker. Or we could rewrite your script in JS and make it portable. Or we could get all our devs to switch to Linux/macOS :) |
I think we could write a JS script so that it is portable. When I was writing #2797, I wanted to write a JS script, but back then I was using |
I thought about this a bit and I came up with a different approach. We could try to take advantage of Consider this at a service level (it'd happen inside of every microservice):
The advantages of this approach:
I'd like to hear opinions, ideas, pros, cons, dreams, nightmares... about this approach. |
The only issue I can see is that not all aspects of our system are based on Satellite: web and docs, for example. We'd have to figure out how those would get added. |
The way we decided while writing #2838 was a script that gets run before the However, the idea itself does sound promising. One genuine concern is the one that @humphd mentions: the front-end and the docs are not really based off of Satellite, and I am not sure how easy it would be to make them to include it, especially the docs. There is also the dependencies listed in the root Either way, I cannot think of many "cons", and the "pros" are very appealing. I am open to this kind of idea and I would prefer to discuss it more during next week and in the meetings. Thank you @manekenpix! |
In #2797 we are adding a dependency service, and we need to dockerize it, and connect it to our Traefik API gateway for routing.
There are lots of examples of how to do this with other services.
The text was updated successfully, but these errors were encountered: