The quarterly openEQUELLA Open Source Support (OSS) Briefing is an opportunity to share the contributions performed by Unicon on behalf of the OSS program, highlight Unicon's perspective on contributions, share happenings in the community, and describe opportunities to engage further with Unicon.
Discussions for the openEQUELLA Q3 2019 Support Briefing focused on community news, the latest releases of openEQUELLA, sustaining engineering, looking ahead to the release of openEQUELLA 2019.2, and upcoming events.
On Thursday, October 3, 2019, the Unicon Open Source Support team held the openEQUELLA OSS Briefing summarizing OSS activities for Q2 and Q3 of 2019.
The community continues to have three primary regular discussion groups - the Community Developer Meeting (CDM), the Security Group, and the Advisory Board. We reported on the activities of each one.
During the past few months, the openEQUELLA CDM’s theme was code management alignment, with topics ranging from switching to a forking model to defining a more effective way to grant and manage committership in the community. The CDM also discussed various features as they emerged and reviewed issues that could become technical debt in the future. In addition, the CDM guided the process to move openEQUELLA into its own GitHub organization, and that move is now complete. openEQUELLA, along with its supporting documentation and repositories, can be found at https://github.com/openequella/ .
For more details, agendas and minutes of each CDM are located on the wiki: https://github.com/openequella/openEQUELLA/wiki. If you are interested in joining the openEQUELLA development community, the CDM is a great way to connect with them. Please join the CDM, which meets on the first Friday of each month!
Switching from general development to security, the openEQUELLA Security Group worked primarily on two topics - handling security issues from the community, and rating dependency security risks.
The process for fielding openEQUELLA security issues has been approved by the Security Group and Advisory Board, and will soon be made public on the openEQUELLA project site. At a high level, anyone in the community with a security concern is encouraged to send an email to email@example.com with a description of the issue, and the openEQUELLA Security Group will field the issue. Note that the Security Group’s objective is not necessarily to fix issues, but guide the community in fixing them, and inform the Advisory Board of any concerns.
The other main Security Group topic was the effort to rate dependency security risks. This process was defined over the last couple of quarters and has already been exercised in a few security reviews. While security risks come in different forms, this type of security analysis is static and uses the build files to generate the list of dependencies to review. This list of dependencies is then correlated with community security vulnerability databases and compiled into a report.
The last community group we discussed in the briefing was the openEQUELLA Advisory Board. They focused on the major decisions around openEQUELLA in the community - such as the process to move the code to a separate project on GitHub, and creation of the dependency analysis process. The Advisory Board has also been reviewing the community guidelines and looking to formalize some of the guidelines to help keep folks engaged while having an appropriate level of monitoring in place.
Open Apereo 2019 Review
After reviewing the highlights from the various community groups, we discussed one of openEQUELLA’s primary events - Open Apereo 2019.
The Open Apereo conference this year was held in Los Angeles and featured several presentations to increase folks’ awareness of the openEQUELLA application and its advantages.
- An introductory workshop - Provided a guide to install, run, and explore openEQUELLA
- The Many Faces of openEQUELLA - Served as an openEQUELLA showcase and highlighted the openEQUELLA institution of one of the co-presenters, Annemarie Haar, from California College of the Arts
- openEQUELLA and uPortal Integration - A presentation on how openEQUELLA and another Apereo product called uPortal could leverage each other’s strengths
- The State of openEQUELLA - where are we at, and where are we going as a community
- Cloud Providers - a new feature that Edalex developed that allows openEQUELLA to be extended with custom cloud solutions, such as auto-discovery of tags for file attachments
One of the primary themes from Open Apereo this year was integration - the presentations and discussions were aimed at helping the Apereo communities understand the capabilities of openEQUELLA and where it can provide a value-add in their educational ecosystem. The feedback was that having more concrete examples would help potential adopters get behind openEQUELLA. In the briefing, we asked, “what integrations do you have in place, especially open source integrations, that you could showcase?” Please use the openEQUELLA mailing lists if you have ideas to share. Also, please consider making a contribution to the community repository of any example code or artifacts.
Over the summer, openEQUELLA 2019.1, and a hotfix, 2019.1.1 were released. Highlights of the major release (2019.1) included:
- Admin console standalone launcher - This launcher comes with a bundled OpenJDK-based JRE, so clients no longer need to have Java installed locally. There is an exception - if they are using the optional File Manager or In Place File Editor applets in the contribution forms, they will still need a local install of Java. With the Admin Console launcher, the requirement for Oracle Java is now removed.
- Cloud providers - This feature enables the adoption of new, cloud-based functionality without the need for an openEQUELLA upgrade. The first implementation of an openEQUELLA cloud provider is Edalex Content Services’ (ECS) ‘Autotag’ feature for openEQUELLA attachments.
- Blackboard LTI / REST integration - This was introduced as a proof of concept, with an MVP feature set in the 2019.2 roadmap. Due to Blackboard (Bb) SOAP web services being retired, we encourage folks to review and vet the new integration before Q2 2020.
- Pre-login notice editor - Provides an enhanced landing page that can be configured with rich text / HTML using TinyMCE.
- Lucene languages - Configuration to leverage Lucene’s core abilities to target install-wide specific languages besides English.
- Enhanced naming scheme - 2019.1 is also the first release to have the new version naming scheme of YYYY.#.rev.
The openEQUELLA hotfix 2019.1.1 contained a few bug fixes. You can see the list of improvements via the GitHub 2019.1.1 label. At the time of writing this article, hotfix 2019.1.2 was just released.
Following the discussion of the release highlights, we provided a demo of 2019.1. Please review the recording (linked below) to take a look at 2019.1’s feature set!
After the demo, we discussed the various activities around Unicon’s Sustaining Engineering (SE) and Consulting efforts over the past two quarters.
Unicon, along with the openEQUELLA CDM, worked to better align the codebase with Apereo, and ensure that the performance of the solution would meet the community needs. The openEQUELLA code was moved from the /equella GitHub project to the /apereo GitHub project, and then finally to the /openequella GitHub project. The project URL is https://github.com/openequella/ and the main documentation site is https://openequella.github.io/.
The Docker image was revised to work with OpenJDK, continuing the trend to remove the need to purchase software or licenses from vendors such as Oracle.
The security review process for dependencies was researched and formalized. This provided Unicon and the oEQ Security Group with the ability to review security risks and a documented flow to assess the risk level of dependencies in the application.
Another focus was to enhance the integration between Blackboard and openEQUELLA. There are two types of Blackboard / openEQUELLA integrations - the Building Block / Web Service (B2/WS) integration and LTI / REST. Unicon released v2.0.4 of B2/WS into the community repository, which resolved an issue with SIS integrations and the resulting user IDs sent in the LTI launch. Along with the community, we collaboratively got the proof-of-concept for LTI / REST into 2019.1. After 2019.1, we had to de-prioritize the LTI / REST effort a bit since the Attachment Health issue increased in priority.
The Attachment Health issue is a concerted effort to resolve some scenarios where openEQUELLA thinks a file should be in the persistent filestore, but it is not. There are several potential root causes being investigated, ranging from an end-user scripting issue, to an OS-level file mount issue, to a coding issue on the core codebase. One adopter has identified a strong correlation with the ‘Remove Staging Areas’ task, so we are watching that area of the logic, as well as the general abilities of openEQUELLA to delete files.
As a root cause is being investigated, we revised the open sourced tool called ‘Ping Equella’ and folded it into the openEQUELLA-Toolbox as the function CheckFiles. This tool doesn’t monitor every type of digital file that oEQ supports (yet), but it does monitor a large portion of them and is recommended to use as a regular health monitor of openEQUELLA. There are plans to convert the logic into a true background task in openEQUELLA, but for now, any adopter of EQUELLA/openEQUELLA running 6.4 or later should be able to use it (currently only supports the PostgreSQL DB).
Our path forward on the Attachment Health issues consists of these steps:
- Continue to harden the monitoring logic in openEQUELLA-Toolbox:CheckFiles
- Enhance the logging of openEQUELLA around file management, specifically working with the staging folders and deleting files
- Implement a switch to turn off the 'Remove Staging Areas' background tasks at an install level
- There are considerations to implement a ‘Rubbish bin,’ where openEQUELLA would move files and folders into a ‘Rubbish bin’ / Trash folder with an audit trail log, instead of deleting files
- Ultimately determine a root cause, and allow openEQUELLA to monitor itself to ensure the attachments are ‘healthy’
We encourage any EQUELLA / openEQUELLA adopter to setup CheckFiles. Various enhancements to the monitoring solution have been identified and are on Unicon’s Sustaining Engineering roadmap.
The other Sustaining Engineering effort considered was openEQUELLA Sync. We are helping Brigham Young University - Idaho to open source openEQUELLA Sync to the Apereo Foundation and were able to obtain a green light from Apereo regarding various legal questions. However, it has been a lower priority due to the Blackboard integration and Attachment Health issues, so it has not been released to the community yet.
Looking Ahead to 2019.2
The next major release of openEQUELLA will be 2019.2 in December. We summarized the highlights of the release:
- 2019.1 bug fixes
- openEQUELLA / Blackboard LTI / REST integration
- Enhanced taxonomy (sorting) & REST API
- Continued efforts on migrating features to the new UI
- Attachment Health efforts
- Duplicate attachment checking (file / URL)
- Updated dependencies
- LibAV > FFmpeg
While these are community goals, they are not guaranteed and may change. Please see the GitHub 2019.2 milestone for updates. Unicon will be focused on Attachment Health and the Bb LTI / REST Integration.
After the review of the roadmap for 2019.2, we discussed the following events. At the time of writing this briefing, EDUCAUSE and Edalexpo have already occurred.
- EDUCAUSE 2019 - Chicago, IL, USA - October 14 - 17
- Edalexpo - Melbourne, AU - November 20 - 21, 2019
- Unicon OSS Briefing Q1 2020 (2x yearly) - Web call - April 9th, 2020
- Open Apereo 2020 - University of Michigan, Ann Arbor, MI, USA - June 15 - 19, 2020
For more details, please view the recording!
We appreciated the attendance for the briefing! We encourage you to reach out to the community, get excited about openEQUELLA, join the community at upcoming events, ask questions, and help shape the future of this open source content management system.
- Apereo openEQUELLA website: https://www.apereo.org/projects/open-equella
- Apereo Users Google Group: Send email to firstname.lastname@example.org
- Apereo Dev Google Group: Send email to email@example.com
- Apereo # equella Slack Channel: apereo.slack.com
- GitHub issues: https://github.com/openequella/openEQUELLA
- Documentation: https://openequella.github.io/
- Community Repository: https://community.edalexcloud.com/
- Twitter: https://twitter.com/EQUELLA