ToC:
Repos + Setup
CUL Online Exhibitions: https://github.com/cul-it/exhibits-library-cornell-edu
- Local development setup instructions in README
- Recommended setup: Docker
Spotlight engine: https://github.com/projectblacklight/spotlight
Blacklight engine: https://github.com/projectblacklight/blacklight
Architecture
Current architecture: Components: Servers, Solr index and Rails database
Upcoming architecture: Components: Containers, Solr index and Rails database
- Follow Jira tickets for container migration status:
Deployment
Current deployment
- integration: exhibits-int-ruby3-deploy
- Build with parameters > select BRANCH > Build
- staging: exhibits-stg-ruby3-deploy
- "Build now" deploys only the main branch
- production: exhibits-prod-ruby3-deploy
- "Build now" deploys only the main branch
Production Deploy Process
- Create a main > dev PR and add all contributors as Reviewers
- Once the PR is accepted, merge to main and deploy main to staging via exhibits-stg-ruby3-deploy Jenkins build
- Verify new changes were deployed successfully and test on staging
- Announce upcoming production deploy in #exhibits Slack channel
- Deploy to production via exhibits-prod-ruby3-deploy Jenkins build
- Verify all looks well on https://exhibits.library.cornell.edu/
Upcoming deployment
COMING SOON
CircleCI for Automated Testing and Linting
A new CircleCI build is automatically triggered with every new git push on any branch and checks that rspec and rubocop builds pass. There is an open Jira ticket to move this to Jenkins: https://culibrary.atlassian.net/browse/LP-195
- Login to http://circleci.com. You will need to login and connect to the repository before the built-in GitHub CircleCI can kick off and before you can see the output of those CircleCI processes.
- Pick login with GitHub
- Go to Projects
- Pick "exhibits-library-cornell-edu"
Site Admins
CUL Online Exhibitions has 2 levels of site admin access for users:
- Superadmins: can create new exhibits
- Run
bundle exec rake spotlight:initialize
to set new superadmin user.
- Run
- Site admins: can access and manage any and everything
- Add user email to
SITE_ADMINS
environment variable in dotenv file.
- Add user email to
The site can also be further locked so that exhibits are only read-only to everyone besides site admins by setting the ACCESS_MODE
environment variable to SITE_ADMIN_ONLY
. When ACCESS_MODE=SITE_ADMIN_ONLY
, a message displays at the top of the page for logged in users: "Exhibits are in maintenance mode. Editing is unavailable at this time."
Group Exchange Accounts / Emails
- Cornell Library Online Exhibits Notifications (ga.culit-exhibits): Cornell Library Online Exhibits Notifications
- Emails: culit-exhibits@cornell.edu, notifications-exhibits-library@cornell.edu
EMAIL_FROM=notifications-exhibits-library@cornell.edu
in prod env vars
- Emails: culit-exhibits@cornell.edu, notifications-exhibits-library@cornell.edu
- Cornell Library Online Exhibits Help (ga.culit-exhibits-h): Cornell Library Online Exhibits Help
- Emails: culit-exhibits-h@cornell.edu, help-exhibits-library@cornell.edu
- Referred to from Curator Documentation
- Emails: culit-exhibits-h@cornell.edu, help-exhibits-library@cornell.edu