Vireo 4 deployment
The Vireo 4 Thesis and Dissertation Management System is ready for deployment and use following several years of development.
Vireo provides institutions with the capability to customize workflows and use specific controlled vocabularies. Submitted documents can be reviewed by the student's committee and be annotated for licenses and embargoes.
Vireo is available for download or as a service hosted by Texas Digital Library.
Vireo 4, built using java and spring-boot, is both a technical and functional update from Vireo 3.
Dependencies
tools: git, maven, npm, nodejs-legacy, grunt-cli
java: default-jdk (version 1.8 or newer)
database: PostgreSQL (MySQL not supported yet)
other dependencies brought in by maven
System Requirements
2GB memory minimum (test-etd.tdl.org runs on a t2.medium which has 4GB)
nodes-legacy vs specific AWS node version - need further testing
Deploy
Install dependencies
Create account specific to vireo
Clone vireo4 repository
Set deployment specific fields: port, smtp-relay, database,...
Set asset storage area for deposited files (e.g. /opt/vireo/)
Deploy as a service
Add proxy server with SSL (nginx or apache2)
Demo
Run with 'mvn clean spring-boot:run -Drun.arguments=console'
vireo> generate 3
generates 3 submissions for testing
vireo> accounts 5
generates student1@example.com...student5@example.com, reviewer1@example.com...reviewer5@example.com, manager1@example.com...manager5@example.com with password 'password'
vireo> admin_accounts 1
generates admin1@example.com with password 'password'
Post Deploy
One account needs ROLE_ADMIN per institution which can be set manually in the database after registration. This account can then grant permissions to all other registered in the institution.
Set up database backups. Provide backup for files in assets storage directory.
Development
Issues tracked in GitHub
Issues prioritized by Product Owner
Issue sizing by team
2 week sprints for fixing prioritized bugs
Pull from sprint branch and merge into sprint-staging branch, merge all at end of sprint into 4.0.x branch
Team communication via GitHub and slack
Near Term Tasks
ProQuest export fix (in progress)
Deployment document (nearly done)
Change from Release Candidate to Release once above 2 issues are complete
Ongoing fixes of bugs new and old. Next round of issue priorities set in Vireo Go-Live Mid-August Storyboard listed in References
Create migration mapping and software.
Medium Term Tasks
Provision select pilot institutions with Vireo 4 for use in production for fall submissions. Use Vireo 3 to complete in process submissions. (Texas Tech, UTexas Southwestern, UTexas Houston)
Migrate user accounts, submissions, and action logs from Vireo 3 to production Vireo 4. Some institutions have been using Vireo 3 as a repository rather than strictly a tool to generate an export to an IR - may require extra work.
Record and prioritize bugs uncovered in pilot deployment and migration.
Longer Term Tasks
Complete migrations for all hosted institutions.
Determine and share lessons learned.
Formalize process and documents for community contributions and code standards.
Establish community communications (slack, google groups, etc) for developers.
Inform community about our processes for issue submission and Pull Requests.
Create processes for community members to propose and contribute new features.
Survey other communities such as DSpace to find best practices.
References
Vireo Source: https://github.com/TexasDigitalLibrary/Vireo
Deployment Instructions: https://github.com/TexasDigitalLibrary/Vireo/wiki/4.0.0-Vireo-Deployment
Dockerizing Vireo4 (private repo for now as it needs documentation cleanup): https://github.com/TexasDigitalLibrary/Vireo4Docker
Migration From 3 to 4 (private repo, for in-house use, work in progress): https://github.com/TexasDigitalLibrary/MigrateVireo3To4
Vireo Go-live Mid-August Storyboard: https://github.com/TexasDigitalLibrary/Vireo/projects/20
Weaver Webservice Source: https://github.com/TAMULib/Weaver-Webservice-Core
WeaverUI Core Source: https://github.com/TAMULib/Weaver-UI-Core
Vireo Users Group: https://vireoetd.org/vireo/
Vireo User Documentation: Vireo 4.0 User Documentation