eiffel-community / eiffel-easy2use

A sandbox to be used to try out the Eiffel protocol and related services
Apache License 2.0
10 stars 19 forks source link

Eiffel bundle: Mongo-Seed service is not started when '-s' flag provided #28

Closed tobiasake closed 1 year ago

tobiasake commented 5 years ago

Description

When Eiffel bundle is started with few components with "-s" flag then "mongo-seed" service is not started/loaded and no subscriptions becomes available in Eiffel-Intelligence.

Fix so Mongo-seed service is launched also when few Eiffel components configured to start.

This issues is seen in Docker. Check also that this issue don't occur when executed in Kubernetes.

Motivation

Exemplification

Benefits

Possible Drawbacks

pef-ericsson commented 1 year ago

@e-backmark-ericsson @m-linner-ericsson @tobiasake Perhaps that's not a bug, if I understood correctly the issue here. Yet, the valid service name is "mongo_seed" instead of "mongo-seed". I have tested it on Docker and K8S and the installation was correct as it's shown in the attached photo. mongo_seed service

e-backmark-ericsson commented 1 year ago

I think the issue is that if not the full Eiffel bundle but just parts of it (like RabbitMQ, Jenkins, EI and ER for example) are explicitly requested through -s flags, then the mongodb seeding is not done. So, try to start using e.g. something like './easy2use start Eiffel -s <rabbit> -s <jenkins> -s <ei-frontend> -s <ei-backend-artifacts>-s er' (replace services in <> with real service names)

m-linner-ericsson commented 1 year ago

@tobiasake Would you expect that mongo_seed should be started with the Eiffel Intelligence or was there any other service it should be connected with? Could you provide a example of a working command and one where it doesn't work?

tobiasake commented 1 year ago

Hi, This is really old stuff and I don't remember all details.

I guess user need to provide mongo-seed manually today when -s flag is provided with a list of services, and if EI is specified without monog-seed then no subscription will be seeded to mongoDb instance. I think the goal with this ticket is about if EI are specified on -s flag, then there should be some kind of dependencies to mongo-seed so mongo-seed is deployed and executed as well, even if mongo-seed are not specified on the -s flag.

I think in docker-compose it exist a dependency field per service that could be used maybe for this and in Kubernetes I think this could be configured as a sidecar job in the helm charts or something similar when EI are deployed. Now I am speculating without knowing the full technically details :)

m-linner-ericsson commented 1 year ago

@tobiasake If I interpret you correct, this ticket is about starting the mongo_seed when EI is started.

tobiasake commented 1 year ago

@m-linner-ericsson Yes, some dependency start of mongo_seed. But sametime maybe there is use-cases where user just want to start Eiffel-Intelligence without subscriptions loaded from mongo_seed. So maybe its better to have it like is today and add some docs about mongo_seed application name need to be specified to -s flag if user want to have the subscription loaded from mongo_seed application/container.

pef-ericsson commented 1 year ago

@tobiasake @emichaf @m-linner-ericsson "mongo_seed" service's job does not complete at all even if we deploy Eiffel bundle with all services. The reason is that EIFFEL_MONGODB_VERSION=4.4.1 and the container image bitnami/mongodb that is used, it is always the latest. The raised error is "mongo command not found" which for mongodb>=6.0 the command is mongosh.

The service works pulling bitnami/mongodb:4.4.1.

Regarding mongo_seed dependencies, we could document it as it has been mentioned in other comments.

m-linner-ericsson commented 1 year ago

Closing this as https://github.com/eiffel-community/eiffel-easy2use/pull/84 is merged