Skip to content
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

WIP: Make revad start on a per directory basis #416

Merged
merged 2 commits into from
Dec 9, 2019
Merged

WIP: Make revad start on a per directory basis #416

merged 2 commits into from
Dec 9, 2019

Conversation

refs
Copy link
Member

@refs refs commented Dec 6, 2019

Added a new --dir flag that allows for starting revad on any directory with a set of config files.

Having a directory like so:

~/code/reva
❯ tree ~/automation/reva/separate
/Users/aunger/automation/reva/separate
├── auth.toml
├── frontend-oidc.toml
├── frontend.toml
├── gateway.toml
├── phoenix.oidc.config.json
├── storage-home.toml
├── storage.toml
└── users.demo.json

Would allow for revad to launch every service defined on each config file on the given folder like:

> revad --dir ~/automation/reva/separate

This is a preliminary implementation.

It all lives under the same terminal session so all logs are printed on STDOUT. This is more intended to speed up development as it does not handle graceful shutdown just yet.

@refs refs requested a review from labkode as a code owner December 6, 2019 13:03
@madsi1m
Copy link
Contributor

madsi1m commented Dec 7, 2019

Good idea, but i prefer to run each bit in its own container so i can filter logs easy

@refs
Copy link
Member Author

refs commented Dec 7, 2019

it is still possible to run each bit on it's own process :D, this would just make it faster to spin something up

@labkode
Copy link
Member

labkode commented Dec 7, 2019

Hi @refs, @madsi1m, for testing/dev purposes we can have such funcionality and even with restart logic, we just need to fork one chidren process per configuration file in the directory and the master process will be a dummy process.

Is not the responsibility of Reva to handle the orchestration and observability of the different services, that is delegated to enterprise-grade components like Istio/Envoy and K8s.

Each tool for the right thing

@refs
Copy link
Member Author

refs commented Dec 9, 2019

Is not the responsibility of Reva to handle the orchestration and observability of the different services, that is delegated to enterprise-grade components like Istio/Envoy and K8s.

100% agree, although that was not the intention of this PR. As more people join the project we're in the case that we need to explain how to run each individual config "strategy" (strategy as in 1 single file vs n files) when Reva, for some, is a mean to an end as they're working on the oC clients.

I'm more than open to suggestions on how to improve this, as I believe it will streamline development.

@labkode
Copy link
Member

labkode commented Dec 9, 2019

@refs I agree for on boarding and developing against make sense.

Can you change the flag name to dev-dir instead of dir so is clear that is only for dev purposes?

Thanks!

@madsi1m
Copy link
Contributor

madsi1m commented Dec 9, 2019

Great idea

@labkode labkode merged commit 8ebea92 into cs3org:master Dec 9, 2019
@labkode
Copy link
Member

labkode commented Dec 9, 2019

@refs merged :)

@refs
Copy link
Member Author

refs commented Dec 9, 2019

💃 thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants