-
-
Notifications
You must be signed in to change notification settings - Fork 182
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
[feature] make list of autodeploy expath packages configurable via conf.xml #3802
Comments
First of all @duncdrum , thank you for sharing the command line flag to control which packages make it into autodeploy. That is valuable information. Regarding your request: I think it is a useful enhancement for users who do not build from source but use any kind of installer. |
@duncdrum Interesting idea. A few questions: Am I right in imagining that the conf.xml entry would be auto-generated and auto-inserted when eXist is built? I can see how this would allow users to remove packages that they don't want installed upon first start-up, but I am a little unclear about the behavior in the following scenarios:
I ask because in all other respects, settings in conf.xml affect the next startup, so users may expect the |
Not sure i understand about the
Firstly the
Yes a custom package set in
That is the idea, yes . The main user scenario for this, however, is modifying an instance before / whenever it is initially booted. @line-o the maven command is how i woudl imagine an alternative, i have not tested if this particular command exists, or what it does. |
Hmm... I don't really understand the context/use-case for this (yet)...
I actually think that mechanism is quite bad. You can also override it at Runtime if you know the magic tricks! It gives an illusion of safety rather than a control mechanism. I had envisaged in future having a much better system of control, whereby individual functions (and/or modules of functions) can be associated with roles, this would allow fine-grained control over who can do what, and get us away from the "only a DBA" can run these arbitrary functions. We had something like that once upon a time based around XACML, but it was far to complex at that time. |
CI, Containers, Pupper, Ansible, …
my point, i can't just run xquery to modify the configuration of my instance, i have to disable modules in one, and then do file-system stuff someplace else.
just as with other modifications of
see 2., you could however build your own installer…
nothing wrong with overriding at run-time as such, as it makes sense to remove a package from autodeploy, but require it to be manually installed. its that way for all but 5 or 6 packages and there is nothing bad about that either.
i fail to see the connection, i want my instances to e.g. not have dashboard when they are spun up by a replicator or by a load-balancer. Who can make this kind of modification is a separate question, to how that goal can be easily achieved in the first place. |
I am still not quite getting it I guess... if I am installing from Puppet or Ansible I would always start with a .tar.gz or Docker image which can be or has been customised already. I am not necessarily against what you are suggesting, I just can't see a use-case for it yet...
You would have to use the File Module to modify the conf.xml from XQuery. That would require DBA, same was as you need DBA to use the File Module to remove a file from the filesystem... No?
If you were building your own installer, wouldn't you just customise the autodeploy folder at that point instead?
I think we are talking about different things... I am saying that if you remove a Module from conf.xml, then if you "know how" you can still cause it to be loaded and executed at run-time; that should not be possible. |
Is your feature request related to a problem? Please describe.
Users can fine tune xquery modules for a give instances via
conf.xml
yet they cannot do the same for expath packages, which ship by default. Having a central place where both aspects can be processed via xml tooling would make sense.Describe the solution you'd like
Control the list of
.xars
within/autodeploy
via a dedicated section inconf.xml
. Something like:Describe alternatives you've considered
Manually removing files from the directory, using
-Dautodeploy=http://exist-db.org/apps/dashboard
build flags, all are cumbersome. I see no reason why this data shouldn't be onconf.xml
Additional context
Add any other context or screenshots about the feature request here.
The text was updated successfully, but these errors were encountered: