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

Add options to deploy specific apps using provision #36

Open
ananyo2012 opened this issue Mar 21, 2020 · 4 comments
Open

Add options to deploy specific apps using provision #36

ananyo2012 opened this issue Mar 21, 2020 · 4 comments

Comments

@ananyo2012
Copy link
Contributor

Running provision deploys all the applications managed by magudi. We need options to deploy specific applications.

@palnabarun
Copy link
Member

I think the whole point of a declarative configuration is to declare a state which you want your resources to be in. so, when you need to change one application, just change the configuration for that and ask your tooling to apply that. It would ensure the target state is equal to your desired state.

Right now, if you change only a subset of the salt formulas, only the changes would get applied and rest would be ensured that they maintain their state. In that essence, salt is already designed to do that.

Do you still think this is relevant then?

PS: Nearly all configuration management software work along the same lines. :)

@ananyo2012
Copy link
Contributor Author

ananyo2012 commented Mar 21, 2020

So my suggestion is to not change magudi but the provision script somehow to deploy one application. Like if we want to deploy only current inpycon website then we don't need to resync junction or other year websites. We still may want to abstract the inside details for running multiple commands and use just one command to deloy. Just sync the specific app and deploy. Is that possible using passing option to salt command ?

@palnabarun
Copy link
Member

If you don't change any configuration for resources other than what you are trying to change, those reources are untouched. That's what I am trying to convey. That's the whole paradigm of declarative state management.

@ananyo2012
Copy link
Contributor Author

What about changes to the app or something like cert update. We use magudi for these things as well. When I am updating 2020 website or doing a cert update I don't want to run changes on other resources. I want it to be selective. Doing it manually like syncing the code or running certbot manually is a option but that also requires some steps and adequate knowledge of the tool. The purpose of magudi is to abstract all these steps and make it seamless.

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

No branches or pull requests

2 participants