up to all Development Components for VIVO 1.5
Component description
Improve the process of installing and configuring VIVO
- Make the process easier to understand
- Make the commonplace installation easy to accomplish
- Make the unusual installation possible
- Make errors less likely
- Make it easier to detect errors when they occur
- Make it easier to diagnose and fix errors
Scope of the component for v1.5
Smaller tasks – 15 existing JIRA issues:
- Continue developing startup tests and warnings
- Write documentation about Tomcat/Apache configurations for VIVO
- Scan the mailing lists to find commonly occurring problems. Address with better documentation, simpler configuration options, or better error detection.
Larger tasks:
Re-implement the Solr installation
- The most pressing
- By default, Solr should be included within the VIVO webapp, eliminating many of the issues associated with Solr configuration.
- Solr could also be installed in a separate webapp, perhaps on a separate server, for scalability.
Design and document our configuration hierarchy
Divide configuration options into categories:
- Used during the build/deploy process
- Loaded the first time VIVO is run
- Loaded every time VIVO is run
For each of these, what happens when the site upgrades to a newer version of VIVO?
Produce a collection of short “recipe” pages to assist our developers.
What about optional modules? Do they need to be treated differently?
Design and implement an interactive process for configuration
This requires the previous task: “Design and document our configuration hierarchy”
What would it look like?
- The Wordpress installation process is frequently cited as a model
- Require only build/deploy properties to be configured in advance
- All other properties would be configured on first-time startup
- Root user could choose to repeat the configuration process
Design work needed for the component
- There are technical issues to be determined regarding the Solr installation.
- We need to design an overall configuration scheme.
- It would be good if this scheme anticipate the modularity/extension framework.
- Functional design and visual design for the interactive configuration process.
Can this component be addressed in stages?
|
Task |
Depends on |
Time |
---|---|---|---|
1. |
Existing JIRA issues (not counting those related to Solr installation) |
|
5 days |
2a. |
Change Solr installation so Solr is internal to VIVO |
|
4 days |
2b. |
Enhance Solr installation to allow Solr to be either internal or external |
2a. |
1 day |
3a. |
Design of what our configuration hierarchy should become. |
|
3 days |
3b. |
Document our existing configuration hierarchy. |
|
1 day |
3c. |
Implement the improved configuration hierarchy. |
3a. |
Depends on design |
4a. |
Functional design of interactive configuration process. |
3a. |
2 days |
4b. |
Visual design of interactive configuration process. |
4a. |
2 days |
4c. |
Implementation of interactive configuration process. |
4a., 4b. |
Depends on design |
Dependency on any other component
Essentially none, although the configuration design should take the extension framework into account.
A suggested incremental plan
For release 1.5:
- Address most of the existing JIRA issues
- Re-implement the Solr installation
- Design the configuration hierarchy
- Document the existing configuration conventions as an aid to developers
- Functional design of the interactive configuration process
For later releases:
- Implement the configuration hierarchy
- Visual design of the interactive configuration process
- Implement the interactive configuration process