/islandora-playbook

Ansible playbook for building Islandora

Primary LanguageJinjaMIT LicenseMIT

Islandora Playbook

LICENSE

Introduction

This is an Ansible playbook for provisioning an instance of Islandora. This repository includes a Vagrantfile, so vagrant up will create a local virtual machine and run the playbook on it. For an alternative installation using Docker, please see ISLE.

This virtual machine should not be used in production yet, however the Ansible inventory can be used as the basis for a server deployment with everything besides the Drupal port behind a firewall.

Variables

macOS 12.0 Monterey VirtualBox Workaround

VirtualBox has not been updated to work fully with macOS Monterey as of October, 2021. A workaround exists, which is to run VirtualBox in non-headless mode.

In your Vagrantfile, add the line 'v.gui = true' to the configuration section near the top:

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.provider "virtualbox" do |v|
    v.name = "Islandora 8 Ansible"
    v.gui = true
  end

Discussion of this issue can be found on this issue in Vagrant's GitHub project: hashicorp/vagrant#12557

Base box

By default the Vagrantfile builds Islandora on a ubuntu/focal64 base box.

The Islandora 8 base box is now deprecated.

Install Profile

The Unix shell variable 'ISLANDORA_INSTALL_PROFILE' can be one of:

standard - Installs a drupal/recommended-project base install and enables the Islandora and Islandora Defaults modules without any special configuration.

demo - Installs the demo based on the install profile developed by Born Digital. This has a custom theme and more out-of-the-box customizations.

This corresponds to the 'islandora_profile' Ansible variable.

System Resources

By default the virtual machine that is built uses 4GB of RAM. Your host machine will need to be able to support the additional memory use. You can override the CPU and RAM allocation by creating ISLANDORA_VAGRANT_CPUS and ISLANDORA_VAGRANT_MEMORY environment variables and setting the values. For example, on an Ubuntu host you could add to ~/.bashrc:

export ISLANDORA_VAGRANT_CPUS=4
export ISLANDORA_VAGRANT_MEMORY=5040

Use

Detailed installation and usage instructions can be found on the official installation documentation for Islandora.

Connect

You can connect to the machine via the browser at http://localhost:8000.

Drupal

The default Drupal login details are:

  • username: admin
  • password: islandora

MySQL

  • username: drupal8
  • password: islandora

Fedora5

The Fedora 6 REST API can be accessed at http://localhost:8080/fcrepo/rest.

Authentication is done via Syn using JWT tokens.

Solr

You can access the Solr administration UI at http://localhost:8983/solr/

SSH

You can connect to the machine via ssh:

  • vagrant ssh

ActiveMQ

The default ActiveMQ login details are:

  • username: admin
  • password: admin

You can access the ActiveMQ administrative interface at: http://localhost:8161/admin

Cantaloupe

You can access the Cantaloupe admin interface at: http://localhost:8080/cantaloupe/admin

  • username: admin
  • password: islandora

You can access the IIIF interface at: http://localhost:8080/cantaloupe/iiif/2/

JWT

Islandora uses JWT for authentication across the stack. Crayfish microservices, Fedora, and Drupal all use them. Crayfish and Fedora have been set up to use a default token of islandora to make testing easier. To use it, just set the following header in HTTP requests:

  • Authorization: Bearer islandora

BlazeGraph (Bigdata)

You can access the BlazeGraph interface at: http://localhost:8080/bigdata/

You have to select the islandora namespace in the namespaces tab before you can execute queries.

FITS

You can access the FITS Web Service at http://localhost:8080/fits/

Matomo

CLAW Playbook installs an instance of the Matomo (formally PIWIK) web analytics platform. You can access your instance at: http://localhost:8000/matomo

  • username: admin
  • password: islandora

Roadmap

The playbook is in maintenance mode as new development is focused on ISLE for development and production.

Maintainers