Skip to content

Repository files navigation

library-cms

This is the CMS for the University of Alberta Libraries website. It uses Comfy Mexican Sofa.

Applications

  • MariaDB database for CMS

Development environment

  • Ruby < 3.5
  • Rails 7.0.x
  • MariaDB 5.5
  • Docker and docker-compose
  • yarn
  • nodejs v18+

Requirements

File attachments are handled by ActiveStorage. You will need to copy over database migrations by running rails active_storage:install To resize attached images you'll need to have ImageMagic installed. Pagination is handled by either Kaminari or WillPaginate. Make sure you have one defined in your Gemfile.

Setting up the Application

  1. git clone git@github.com:ualbertalib/library-cms.git
  2. cd library-cms
  3. bin/setup
  4. bin/dev
  5. visit http://localhost:3000 and you will see the library homepage.
  6. If you need to visit the admin section (http://localhost:3000/admin) - You'll be prompted to enter username and password (use the ones in your config/settings/development.yml (managed by the Config Gem), which by default are 'admin' and 'mysecretpassword')

Testing

To run the tests for the library-cms application, you can use the following command once your application has been setup from above:

bundle exec rails test

This will execute all the test cases and provide you with the test results.

NOTE: We preload the test database with all the seed CMS data (pages/layouts/etc) before tests are ran. This happens only once. So if you make a change to the CMS seed data, you must drop the test DB for your changes to be reflected in the test database.

Features

image

image

Updating seeds

Note: The current version of the CMS contains a bug in the import rake task where if two seeds have the same last directory in the path, for example, "a/b/ccc" and "x/y/ccc" then one will overwrite the other. Given the pending end-of-life of this CMS, an update to a fixed fork of the CMS Gem is not being undertaken. Instead, the seed data is being modified to account for the bug to allow testing of the paths that remain after the partial migration away from this platform.

To export seeds, run the following on the production server which will export the data into the "db/cms_seeds/tmp/2026-09-01" directory

bundle exec rake comfy:cms_seeds:export[ualberta-libraries,/tmp/2026-09-01/]

Seed import contains a bug where if two routes have the same last directory name in the path, for example "a/b/ccc" and "z/y/ccc" then one is overwritten during import. Therefore, the seeds in the repository remove some paths.

Remove the following directories:

  • pages/index/sandbox (to avoid sandbox content collisions with in-use path)
  • pages/index/archived-content
  • pages/index/locations/archives (to avoid conflicts with the pages/index/archives)

Update the db/cms_seeds/library-cms-seeds in the git repository.

More details are in unixDoc/Procedures/ExporingCMS.html

About

Content Management System for the UofA Libraries website. Built on Comfy Mexican Sofa.

Resources

Stars

2 stars

Watchers

9 watching

Forks

Releases

Packages

Used by

Contributors

Languages