From fbdbda554278f2a1d392ee612bf62ca49f583b75 Mon Sep 17 00:00:00 2001 From: Rosie Le Faive Date: Mon, 24 Aug 2020 11:09:56 -0300 Subject: [PATCH 01/17] Render the example helpful tip properly. (#1586) * Render the example helpful tip properly. * Fix note syntax, again. --- docs/contributing/docs_style_guide.md | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/docs/contributing/docs_style_guide.md b/docs/contributing/docs_style_guide.md index e810b210b..7e092bd01 100644 --- a/docs/contributing/docs_style_guide.md +++ b/docs/contributing/docs_style_guide.md @@ -10,9 +10,20 @@ - Use `-` instead of `*` for bulleted lists. - Upload images to the 'assets' folder and reference them from there. -- For file name, use underscores between words and prefix all file names with the page name, e.g. context_display_hints.jpg for the image showing how to set display hints in the context menu. -- Use `!!! note "Note title"` at the start of a paragraph to have it rendered as a note like this: +- Use the [Admonition syntax](https://squidfunk.github.io/mkdocs-material/reference/admonitions/) to create notes like this (four-space indent required): + +_Example:_ + +``` +!!! note "Helpful Tip" + I am a helpful tip! +``` + +_Result:_ + +!!! note "Helpful Tip" + I am a helpful tip! -!!! note "Helpful Tip" I am a helpful tip! ## Don'ts From 6a66bcf9dce6e34e10585d47665d89428ccb56f9 Mon Sep 17 00:00:00 2001 From: Rosie Le Faive Date: Mon, 24 Aug 2020 11:14:48 -0300 Subject: [PATCH 02/17] Mention the User Call (#1587) --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3ee404a9e..40946f8f8 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,7 +4,7 @@ If you are reading this document then you are interested in contributing to Isla ## Workflows -The group meets each Wednesday at 1:00 PM Eastern. Meeting notes and announcements are posted to the [Islandora community list](https://groups.google.com/forum/#!forum/islandora) and the [Islandora developers list](https://groups.google.com/forum/#!forum/islandora-dev). You can view meeting agendas, notes, and call-in information [here](https://github.com/Islandora/documentation/wiki#islandora-8-tech-calls). Anybody is welcome to join the calls, and add items to the agenda. +The Islandora 8 Tech Call meets each Wednesday at 1:00 PM Eastern, and the Islandora 8 User Call meets every second Thursday at 1:00 PM Eastern. Meeting notes and announcements are posted to the [Islandora community list](https://groups.google.com/forum/#!forum/islandora) and the [Islandora developers list](https://groups.google.com/forum/#!forum/islandora-dev). You can view meeting agendas, notes, and call-in information [here](https://github.com/Islandora/documentation/wiki#islandora-8-tech-calls). Anybody is welcome to join the calls, and add items to the agenda. ### Use cases From 26264e8e75345efa397aa8a9e7dc0f466cb7ce12 Mon Sep 17 00:00:00 2001 From: Eli Zoller <5439169+elizoller@users.noreply.github.com> Date: Tue, 25 Aug 2020 10:37:12 -0700 Subject: [PATCH 03/17] Update rdf-mapping.md doc (#1585) --- docs/islandora/rdf-mapping.md | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/docs/islandora/rdf-mapping.md b/docs/islandora/rdf-mapping.md index ef064feac..124178e41 100644 --- a/docs/islandora/rdf-mapping.md +++ b/docs/islandora/rdf-mapping.md @@ -63,8 +63,28 @@ Below is an example of an RDF mapping as a .yml (YAML) file. It is the current v - The top level key `types` specifies the `rdf:type` of the resource or content model. `field_model`, a required field of Islandora objects, also gets mapped to `rdf:type` through an arcane back-end process. - The top level key `fieldMappings` specifies fields attached to that bundle and their RDF property mappings. One field can be mapped to more than one RDF property. It is a simple flat list. -- `datatype_callback` : [needs documentation] -- `mapping_type: rel` : [needs documentation] + +#### Mapping Types +`mapping_type:`: There are several mapping types which are provided out of the box. +- `rel` - standing for relationship, expresses a relationship between two resources +- `property` - the default, or if a relationship is not provided, expresses the relationship between a resource and some literal text. + +#### Datatype Callbacks +`datatype_callback`: This is a custom function that transforms the output of the field. There are some provided to us by Drupal and some added by Islandora, such as: +- `Drupal\controlled_access_terms\EDTFConverter::dateIso8601Value` which converts dates to Iso format +- `Drupal\jsonld\EntityReferenceConverter::linkFieldPassthrough` which converts a referenced entity to the URI on the entity (which is configurable with the `link_field` argument +An example usage of the `Drupal\jsonld\EntityReferenceConverter::linkFieldPassthrough` is as follows: +```yml +field_subject: + properties: + - 'dcterms:subject' + datatype_callback: + callable: 'Drupal\jsonld\EntityReferenceConverter::linkFieldPassthrough' + arguments: + link_field: 'field_authority_link' +``` +Which would convert a reference to the subject's taxonomy term entity to a reference to the URI provided in `field_authority_link` of that subject's taxonomy term entity. + ## Sample RDF Mapping ```yml From 6c1777b0f8e2ebeca52d16daeb76a4e8ab17a2e8 Mon Sep 17 00:00:00 2001 From: dannylamb Date: Thu, 27 Aug 2020 12:44:58 -0300 Subject: [PATCH 04/17] Update committers.md (#1592) --- docs/contributing/committers.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/contributing/committers.md b/docs/contributing/committers.md index dacedc176..1f026aead 100644 --- a/docs/contributing/committers.md +++ b/docs/contributing/committers.md @@ -29,6 +29,7 @@ The following is an alphabetized list of the current Islandora 8 committers: | Name | Organization | Github username | |-----------------------------|---------------------------------------|----------------| +| Melissa Anez | Islandora Foundation | manez | | Jonathan Green | LYRASIS | jonathangreen | | Jonathan Hunt | Catalyst.Net | kayakr | | Mark Jordan | Simon Fraser University | mjordan | From af51eea43eccbb1c569009da6b2a66d78b1d3898 Mon Sep 17 00:00:00 2001 From: Jonathan Green Date: Thu, 27 Aug 2020 17:08:23 -0300 Subject: [PATCH 05/17] Fix committer nomination email address (#1593) * Fix old email address. * Update closeCommitterVote.txt * De-CLAW * De-CLAW * DeCLAW * Change email * De-CLAW --- docs/contributing/committers.md | 2 +- docs/contributing/templates/closeCommitterVote.txt | 4 ++-- docs/contributing/templates/committerAnnounce.txt | 4 ++-- docs/contributing/templates/committerInvite.txt | 8 ++++---- docs/contributing/templates/committerInviteCLA.txt | 6 +++--- docs/contributing/templates/committerVote.txt | 2 +- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/docs/contributing/committers.md b/docs/contributing/committers.md index dacedc176..c0001b6ef 100644 --- a/docs/contributing/committers.md +++ b/docs/contributing/committers.md @@ -89,6 +89,6 @@ If they accept, then do: 1. Add to the Islandora 8 Committer team of the Github Islandora organization. 2. Add to Committer team of GitHub Islandora-Labs organization -3. Add to islandora-2x-committers google-group +3. Add to islandora-committers google-group 4. Add to committers wiki page: Islandora 8 Committers (this page) 5. Announce the new committer ([template/committerAnnounce.txt](https://raw.githubusercontent.com/Islandora/documentation/master/docs/contributing/templates/committerAnnounce.txt)) diff --git a/docs/contributing/templates/closeCommitterVote.txt b/docs/contributing/templates/closeCommitterVote.txt index 59fd092a3..f2afe9ba4 100644 --- a/docs/contributing/templates/closeCommitterVote.txt +++ b/docs/contributing/templates/closeCommitterVote.txt @@ -1,5 +1,5 @@ -To: islandora-7x-2x-committers@googlegroups.com -Subject: RESULT Vote new Islandora CLAW Committer candidate: [Nominee] +To: islandora-committers@googlegroups.com +Subject: RESULT Vote new Islandora 8 Committer candidate: [Nominee] Body: ================================= diff --git a/docs/contributing/templates/committerAnnounce.txt b/docs/contributing/templates/committerAnnounce.txt index 3103df75d..e381f8fff 100644 --- a/docs/contributing/templates/committerAnnounce.txt +++ b/docs/contributing/templates/committerAnnounce.txt @@ -3,12 +3,12 @@ Subject: New committer: [New Committer] Body: ================================ -The Islandora CLAW committers have asked [New Committer] to become a committer and we are pleased to announce that they have accepted. +The Islandora 8 committers have asked [New Committer] to become a committer and we are pleased to announce that they have accepted. ### add specific details here ### Further details of the rights and responsibilities of being a Islandora committer can be found here: -http://islandora-claw.github.io/CLAW/contributing/committers/ +http://islandora.github.io/documentation/contributing/committers/ Regards, diff --git a/docs/contributing/templates/committerInvite.txt b/docs/contributing/templates/committerInvite.txt index bce24f844..904439fc8 100644 --- a/docs/contributing/templates/committerInvite.txt +++ b/docs/contributing/templates/committerInvite.txt @@ -2,20 +2,20 @@ To: [Invitee] Subject: =================================== -Invitation to become Islandora CLAW committer: [Invitee] +Invitation to become Islandora 8 committer: [Invitee] =================================== Body: =================================== Hello [Invitee], -The Islandora CLAW Committers Team hereby offers you committer privileges to the Islandora project. These privileges are offered on the understanding that you'll use them reasonably and with common sense. We like to work on trust rather than unnecessary constraints. +The Islandora 8 Committers Team hereby offers you committer privileges to the Islandora project. These privileges are offered on the understanding that you'll use them reasonably and with common sense. We like to work on trust rather than unnecessary constraints. Being a committer does not require you to participate any more than you already do. It does tend to make one even more committed. You will probably find that you spend more time here. Of course, you can decline and instead remain as a contributor, participating as you do now. The specific rights and responsibilities of being an Islandora committer can be found here: -http://islandora-claw.github.io/CLAW/contributing/committers/ +http://islandora.github.io/documentation/contributing/committers/ This personal invitation is a chance for you to accept or decline in private. Either way, please let us know. Best regards, -(on behalf of the Islandora CLAW Committers) +(on behalf of the Islandora 8 Committers) =================================== diff --git a/docs/contributing/templates/committerInviteCLA.txt b/docs/contributing/templates/committerInviteCLA.txt index 22227693d..d1c0f36a0 100644 --- a/docs/contributing/templates/committerInviteCLA.txt +++ b/docs/contributing/templates/committerInviteCLA.txt @@ -2,17 +2,17 @@ To: [Invitee] Subject: =================================== -Invitation to become Islandora CLAW committer: [Invitee] +Invitation to become Islandora 8 committer: [Invitee] =================================== Body: =================================== Hello [Invitee], -The Islandora CLAW Committers Team hereby offers you committer privileges to the Islandora project. These privileges are offered on the understanding that you'll use them reasonably and with common sense. We like to work on trust rather than unnecessary constraints. +The Islandora 8 Committers Team hereby offers you committer privileges to the Islandora project. These privileges are offered on the understanding that you'll use them reasonably and with common sense. We like to work on trust rather than unnecessary constraints. Being a committer does not require you to participate any more than you already do. It does tend to make one even more committed. You will probably find that you spend more time here. Of course, you can decline and instead remain as a contributor, participating as you do now. The specific rights and responsibilities of being an Islandora committer can be found here: -http://islandora-claw.github.io/CLAW/contributing/committers/ +http://islandora.github.io/documentation/contributing/committers/ A. This personal invitation is a chance for you to accept or decline in private. Either way, please let us know. diff --git a/docs/contributing/templates/committerVote.txt b/docs/contributing/templates/committerVote.txt index ec5184e74..3929d5d90 100644 --- a/docs/contributing/templates/committerVote.txt +++ b/docs/contributing/templates/committerVote.txt @@ -1,4 +1,4 @@ -To: islandora-7x-2x-committers@googlegroups.com +To: islandora-committers@googlegroups.com Subject: Vote new committer: [Candidate] Body: From ca07b330eaa1218f403516dc9434fb22deecce33 Mon Sep 17 00:00:00 2001 From: Jonathan Green Date: Thu, 27 Aug 2020 17:19:21 -0300 Subject: [PATCH 06/17] Update travis for the main branch switch (#1594) --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index a45e524d9..47469fa69 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,7 +6,7 @@ matrix: branches: only: - - /master/ + - /main/ install: - pip install mkdocs @@ -22,4 +22,4 @@ deploy: github_token: $GITHUB_TOKEN keep_history: true on: - branch: master + branch: main From 1c82c9b5a7aa967545f05cc767dc5fc66597c804 Mon Sep 17 00:00:00 2001 From: dannylamb Date: Fri, 28 Aug 2020 11:08:30 -0300 Subject: [PATCH 07/17] Master -> Main Rename --- CONTRIBUTING.md | 6 +++--- README.md | 4 ++-- docs/alpaca/alpaca-technical-stack.md | 2 +- docs/contributing/committers.md | 8 ++++---- docs/contributing/hacking-on-islandora.md | 10 +++++----- docs/technical-documentation/adding_format_jsonld.md | 2 +- docs/technical-documentation/docs-build.md | 2 +- docs/technical-documentation/flysystem.md | 4 ++-- .../install-enable-drupal-modules.md | 2 +- docs/technical-documentation/testing-notes.md | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3ee404a9e..2e6faf30d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -12,7 +12,7 @@ If you would like to submit a use case to the Islandora 8 project, please submit ### Documentation -You can contribute documentation in two different ways. One way is to create an issue [here](https://github.com/Islandora/documentation/issues/new), prepending "Documentation:" to the title of the issue. Another way is by pull request, which is the same process as [Contribute Code](https://github.com/Islandora/documentation/blob/master/CONTRIBUTING.md#contribute-code). All documentation resides in [`docs`](https://github.com/Islandora/documentation/tree/master/docs). +You can contribute documentation in two different ways. One way is to create an issue [here](https://github.com/Islandora/documentation/issues/new), prepending "Documentation:" to the title of the issue. Another way is by pull request, which is the same process as [Contribute Code](https://github.com/Islandora/documentation/blob/mainONTRIBUTING.md#contribute-code). All documentation resides in [`docs`](https://github.com/Islandora/documentation/tree/mamains). ### Request a new feature @@ -58,9 +58,9 @@ Contributions to the Islandora codebase should be sent as GitHub pull requests. Take a look at [Creating a pull request](https://help.github.com/articles/creating-a-pull-request). In a nutshell you need to: -1. [Fork](https://help.github.com/articles/fork-a-repo) this repository to your personal or institutional GitHub account (depending on the CLA you are working under). Be cautious of which branches you work from though (you'll want to base your work off master, or for Drupal modules use the most recent version branch). See [Fork a repo](https://help.github.com/articles/fork-a-repo) for detailed instructions. +1. [Fork](https://help.github.com/articles/fork-a-repo) this repository to your personal or institutional GitHub account (depending on the CLA you are working under). Be cautious of which branches you work from though (you'll want to base your work off mainor for Drupal modules use the most recent version branch). See [Fork a repo](https://help.github.com/articles/fork-a-repo) for detailed instructions. 2. Commit any changes to your fork. -3. Send a [pull request](https://help.github.com/articles/creating-a-pull-request) using the [pull request template](https://github.com/Islandora/documentation/blob/master/.github/PULL_REQUEST_TEMPLATE.md) to the Islandora GitHub repository that you forked in step 1. If your pull request is related to an existing issue -- for instance, because you reported a [bug/issue](https://github.com/Islandora/documentation/issues) earlier -- prefix the title of your pull request with the corresponding issue number (e.g. `issue-123: ...`). Please also include a reference to the issue in the description of the pull. This can be done by using '#' plus the issue number like so '#123', also try to pick an appropriate name for the branch in which you're issuing the pull request from. +3. Send a [pull request](https://help.github.com/articles/creating-a-pull-request) using the [pull request template](https://github.com/Islandora/documentation/blob/maingithub/PULL_REQUEST_TEMPLATE.md) to the Islandora GitHub repository that you forked in step 1. If your pull request is related to an existing issue -- for instance, because you reported a [bug/issue](https://github.com/Islandora/documentation/issues) earlier -- prefix the title of your pull request with the corresponding issue number (e.g. `issue-123: ...`). Please also include a reference to the issue in the description of the pull. This can be done by using '#' plus the issue number like so '#123', also try to pick an appropriate name for the branch in which you're issuing the pull request from. You may want to read [Syncing a fork](https://help.github.com/articles/syncing-a-fork) for instructions on how to keep your fork up to date with the latest changes of the upstream (official) repository. diff --git a/README.md b/README.md index 775927482..e263d79a9 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ Islandora 8 is the next generation of Islandora. It pairs [Drupal 8](https://www For more details, please check out the following resources: * [Documentation](https://islandora.github.io/documentation/) -* [Contributing](https://github.com/Islandora/documentation/blob/master/CONTRIBUTING.md) +* [Contributing](https://github.com/Islandora/documentation/blob/main/CONTRIBUTING.md) * [Weekly Tech Calls](https://github.com/Islandora/documentation/wiki#islandora-8-tech-calls) * [2015](https://github.com/Islandora/documentation/wiki/2015) @@ -30,7 +30,7 @@ For more details, please check out the following resources: This repository pulls in additional documentation from the following repositories, which is reflected in the repository tree. * [Alpaca](https://github.com/islandora/Alpaca): Event driven middleware based on Apache Camel that synchronizes a Fedora with Drupal. -* [docs](https://github.com/Islandora/documentation/tree/master/docs): Documentation! +* [docs](https://github.com/Islandora/documentation/tree/main/docs): Documentation! * [carapace](https://github.com/islandora/carapace/): A starter theme for an Islandora 8 repository. * [chullo](https://github.com/islandora/chullo/): PHP client for Fedora 4 built using Guzzle and EasyRdf. * [islandora-playbook](https://github.com/Islandora-Devops/islandora-playbook): Ansible installer. diff --git a/docs/alpaca/alpaca-technical-stack.md b/docs/alpaca/alpaca-technical-stack.md index db9d26af0..efa0a2045 100644 --- a/docs/alpaca/alpaca-technical-stack.md +++ b/docs/alpaca/alpaca-technical-stack.md @@ -90,7 +90,7 @@ Maven has camel-archetype-blueprint which can be used to create apache-camel OSG mvn archetype:generate -DarchetypeGroupId=org.apache.camel.archetypes -DarchetypeArtifactId=camel-archetype-blueprint -DarchetypeVersion=2.9.0 -DarchetypeRepository=https://repository.apache.org/content/groups/snapshots-g ``` -However, it is easier to copy the structure of an existing project such as [islandora-connector-broadcast](https://github.com/Islandora/Alpaca/tree/master/islandora-connector-broadcast). +However, it is easier to copy the structure of an existing project such as [islandora-connector-broadcast](https://github.com/Islandora/Alpaca/tree/main/islandora-connector-broadcast). ``` cp -R islandora-connector-broadcast/ islandora-connector-helloworld diff --git a/docs/contributing/committers.md b/docs/contributing/committers.md index c0001b6ef..f42ddd939 100644 --- a/docs/contributing/committers.md +++ b/docs/contributing/committers.md @@ -81,9 +81,9 @@ This section describes the process for handling the voting of a new committer. Summary: -1. Call a vote ([templates/committerVote.txt](https://raw.githubusercontent.com/Islandora/documentation/master/docs/contributing/templates/committerVote.txt)) -2. Close a vote ([templates/closeCommitterVote.txt](https://raw.githubusercontent.com/Islandora/documentation/master/docs/contributing/templates/closeCommitterVote.txt)) -3. Invite the new committer ([templates/committerInvite.txt](https://raw.githubusercontent.com/Islandora/documentation/master/docs/contributing/templates/committerInvite.txt)), if no CLA is on file ([templates/committerInviteCLA.txt](https://raw.githubusercontent.com/Islandora/documentation/master/docs/contributing/templates/committerInviteCLA.txt)) +1. Call a vote ([templates/committerVote.txt](https://raw.githubusercontent.com/Islandora/documentation/main/docs/contributing/templates/committerVote.txt)) +2. Close a vote ([templates/closeCommitterVote.txt](https://raw.githubusercontent.com/Islandora/documentation/main/docs/contributing/templates/closeCommitterVote.txt)) +3. Invite the new committer ([templates/committerInvite.txt](https://raw.githubusercontent.com/Islandora/documentation/main/docs/contributing/templates/committerInvite.txt)), if no CLA is on file ([templates/committerInviteCLA.txt](https://raw.githubusercontent.com/Islandora/documentation/main/docs/contributing/templates/committerInviteCLA.txt)) If they accept, then do: @@ -91,4 +91,4 @@ If they accept, then do: 2. Add to Committer team of GitHub Islandora-Labs organization 3. Add to islandora-committers google-group 4. Add to committers wiki page: Islandora 8 Committers (this page) -5. Announce the new committer ([template/committerAnnounce.txt](https://raw.githubusercontent.com/Islandora/documentation/master/docs/contributing/templates/committerAnnounce.txt)) +5. Announce the new committer ([template/committerAnnounce.txt](https://raw.githubusercontent.com/Islandora/documentation/main/docs/contributing/templates/committerAnnounce.txt)) diff --git a/docs/contributing/hacking-on-islandora.md b/docs/contributing/hacking-on-islandora.md index d9c57f60c..3070d2ebe 100644 --- a/docs/contributing/hacking-on-islandora.md +++ b/docs/contributing/hacking-on-islandora.md @@ -4,19 +4,19 @@ One of the goals of the Islandora 8 project is to lower the barrier to entry for 1. Install [VirtualBox](https://www.virtualbox.org/) 2. Install [Vagrant](https://www.vagrantup.com/) -3. Fork [Islandora CLAW](https://github.com/Islandora-CLAW/CLAW) and clone it onto your machine using the master branch +3. Fork [Islandora CLAW](https://github.com/Islandora-CLAW/CLAW) and clone it onto your machine using the main branch ```bash -~ $ git clone -b master https://github.com/your_github_name/islandora.git +~ $ git clone -b main https://github.com/your_github_name/islandora.git ``` OR -If you're already a developer and have previously forked and cloned Islandora CLAW, just add the master branch from Islandora-CLAW to your existing checkout: +If you're already a developer and have previously forked and cloned Islandora CLAW, just add the main branch from Islandora-CLAW to your existing checkout: ```bash ~ $ cd /path/to/islandora /path/to/CLAW $ git remote add claw https://github.com/Islandora-CLAW/CLAW.git /path/to/CLAW $ git fetch claw -/path/to/CLAW $ git checkout master +/path/to/CLAW $ git checkout main ``` -5. Navigate into the `install` directory of your master checkout +5. Navigate into the `install` directory of your main checkout ```bash ~ $ cd /path/to/CLAW/install ``` diff --git a/docs/technical-documentation/adding_format_jsonld.md b/docs/technical-documentation/adding_format_jsonld.md index 1d6db09e7..c1b55339a 100644 --- a/docs/technical-documentation/adding_format_jsonld.md +++ b/docs/technical-documentation/adding_format_jsonld.md @@ -1,6 +1,6 @@ Drupal requires the use of a `_format` query parameter to get alternate representations of a node/media. -By default, Islandora deploys with the [jsonld](https://github.com/Islandora/jsonld) module and the [Milliner](https://github.com/Islandora/Crayfish/tree/master/Milliner) microservice. These two components are configured to strip this `_format` query parameter off of the end of URIs. +By default, Islandora deploys with the [jsonld](https://github.com/Islandora/jsonld) module and the [Milliner](https://github.com/Islandora/Crayfish/tree/main/Milliner) microservice. These two components are configured to strip this `_format` query parameter off of the end of URIs. This means that when your content is indexed in Fedora, the triplestore, etc... it's URI will be something like `http://localhost:8000/node/1` and not `http://localhost:8000/node/1?_format=jsonld`. diff --git a/docs/technical-documentation/docs-build.md b/docs/technical-documentation/docs-build.md index c5c02b82f..9d755008b 100644 --- a/docs/technical-documentation/docs-build.md +++ b/docs/technical-documentation/docs-build.md @@ -1,6 +1,6 @@ # Introduction -This documentation is built using [mkdocs](http://www.mkdocs.org/), a static site generator that is geared towards building project documentation. The documentation is created in the [Markdown](http://en.wikipedia.org/wiki/Markdown) format, and it all resides in the [`docs`](https://github.com/Islandora-CLAW/CLAW/tree/master/docs) directory in the repository. The organization of the documentation is controlled by the [`mkdocs.yml`](https://github.com/Islandora-CLAW/CLAW/blob/master/mkdocs.yml) in the root of the repository. +This documentation is built using [mkdocs](http://www.mkdocs.org/), a static site generator that is geared towards building project documentation. The documentation is created in the [Markdown](http://en.wikipedia.org/wiki/Markdown) format, and it all resides in the [`docs`](https://github.com/Islandora-CLAW/CLAW/tree/main/docs) directory in the repository. The organization of the documentation is controlled by the [`mkdocs.yml`](https://github.com/Islandora-CLAW/CLAW/blob/main/mkdocs.yml) in the root of the repository. ## Prerequisites diff --git a/docs/technical-documentation/flysystem.md b/docs/technical-documentation/flysystem.md index e874bbf04..4aaeea590 100644 --- a/docs/technical-documentation/flysystem.md +++ b/docs/technical-documentation/flysystem.md @@ -14,13 +14,13 @@ The Drupal Flysystem module uses [flysystem stream wrappers](https://github.com/ ### The Plugin and Adapter -Islandora 8 implements a [Flysystem adapter](https://github.com/Islandora-CLAW/islandora/blob/8.x-1.x/src/Flysystem/Adapter/FedoraAdapter.php) and a [Drupal Flysystem plugin](https://github.com/Islandora-CLAW/islandora/blob/8.x-1.x/src/Flysystem/Fedora.php). The Flysystem adapter acts as an intermediary between the Flysystem filesystem API and Fedora, translating requests and responses between them. The adapter interacts with Fedora using an instance of the [Chullo Fedora API](/Islandora-CLAW/chullo/blob/master/src/IFedoraApi.php) it receives from the Drupal Flysystem plugin. The Drupal Flysystem plugin's main responsibility is to instantiate the Chullo Fedora API object with the proper authentication and pass it to the Flysystem adapter. To authenticate with Fedora the plugin adds a [handler](http://docs.guzzlephp.org/en/stable/handlers-and-middleware.html) to the Chullo's [Guzzle](http://docs.guzzlephp.org) client which adds a [JWT](https://jwt.io/) authentication header to each request. +Islandora 8 implements a [Flysystem adapter](https://github.com/Islandora-CLAW/islandora/blob/8.x-1.x/src/Flysystem/Adapter/FedoraAdapter.php) and a [Drupal Flysystem plugin](https://github.com/Islandora-CLAW/islandora/blob/8.x-1.x/src/Flysystem/Fedora.php). The Flysystem adapter acts as an intermediary between the Flysystem filesystem API and Fedora, translating requests and responses between them. The adapter interacts with Fedora using an instance of the [Chullo Fedora API](/Islandora-CLAW/chullo/blob/main/src/IFedoraApi.php) it receives from the Drupal Flysystem plugin. The Drupal Flysystem plugin's main responsibility is to instantiate the Chullo Fedora API object with the proper authentication and pass it to the Flysystem adapter. To authenticate with Fedora the plugin adds a [handler](http://docs.guzzlephp.org/en/stable/handlers-and-middleware.html) to the Chullo's [Guzzle](http://docs.guzzlephp.org) client which adds a [JWT](https://jwt.io/) authentication header to each request. The Fedora Flysystem adapter does not use Gemini to map the relationship between Drupal URIs and Fedora URIs, so they are indexed separately using the "files_in_fedora" Context which triggers the "Index Fedora File in Gemini" and "Delete Fedora File in Gemini" actions as appropriate. ### Configuration -The fedora file system is configured in the site's `settings.php` file. An example configuration can be seen in the claw-playbook web server role's [drupal tasks](https://github.com/Islandora-Devops/claw-playbook/blob/master/roles/internal/webserver-app/tasks/drupal.yml#L12-L19): +The fedora file system is configured in the site's `settings.php` file. An example configuration can be seen in the claw-playbook web server role's [drupal tasks](https://github.com/Islandora-Devops/claw-playbook/blob/main/roles/internal/webserver-app/tasks/drupal.yml#L12-L19): ``` $settings['flysystem'] = [ 'fedora' => [ diff --git a/docs/technical-documentation/install-enable-drupal-modules.md b/docs/technical-documentation/install-enable-drupal-modules.md index 29b646286..774400419 100644 --- a/docs/technical-documentation/install-enable-drupal-modules.md +++ b/docs/technical-documentation/install-enable-drupal-modules.md @@ -10,7 +10,7 @@ $ composer require "/:" $ composer require "islandora/islandora_defaults:1.0.0" ``` -In the [Islandora 8 playbook](https://github.com/Islandora-Devops/claw-playbook), you can add a Drupal module's or theme's machine name to the `drupal_composer_dependencies` variable [here](https://github.com/Islandora-Devops/islandora-playbook/blob/master/inventory/vagrant/group_vars/webserver/drupal.yml). +In the [Islandora 8 playbook](https://github.com/Islandora-Devops/claw-playbook), you can add a Drupal module's or theme's machine name to the `drupal_composer_dependencies` variable [here](https://github.com/Islandora-Devops/islandora-playbook/blob/main/inventory/vagrant/group_vars/webserver/drupal.yml). To enable the Drupal module or theme, add the module machine name to the `drupal_enable_modules` variable as well. ![alt text](../assets/install-enable-drupal-modules_drupal_composer_dependencies.png?raw=true "drupal_composer_dependencies Screenshot") diff --git a/docs/technical-documentation/testing-notes.md b/docs/technical-documentation/testing-notes.md index 322324654..1a6bc9815 100644 --- a/docs/technical-documentation/testing-notes.md +++ b/docs/technical-documentation/testing-notes.md @@ -2,7 +2,7 @@ The map between Drupal URIs and their corresponding Fedora URIs is stored in a service called Gemini. An Islandora "pseudo-field" can be enabled that will display the corresponding Fedora URI on the page of a node, taxonomy term, or media object. You can also query Gemini directly. Instructions for doing that are provided below. -For more information about the Gemini service, see the [Gemini README](https://github.com/Islandora-CLAW/Crayfish/tree/master/Gemini). +For more information about the Gemini service, see the [Gemini README](https://github.com/Islandora-CLAW/Crayfish/tree/main/Gemini). ## Fedora URI Pseudo-field From 2b3e6726d60b525cb8ab45bb6f1badf197535b8e Mon Sep 17 00:00:00 2001 From: Don Richards Date: Mon, 31 Aug 2020 08:39:03 -0400 Subject: [PATCH 08/17] Remove comments about WebAC (#1555) * Remove comments about WebAC WebAC is not used but is listed as a feature added when using Fedora. Although it is there, I'd suggest leaving off of this documentation. * Update user-intro.md --- docs/user-documentation/user-intro.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/user-documentation/user-intro.md b/docs/user-documentation/user-intro.md index e2fb5555b..26f320933 100644 --- a/docs/user-documentation/user-intro.md +++ b/docs/user-documentation/user-intro.md @@ -36,7 +36,7 @@ Even though Fedora is optional in Islandora 8, most repositories will use it sin * Memento versioning * integration with RDF/Linked Data triplestores * Integration with Microservices via API-X -* WebAC Policies for access control +* WebAC Policies for access control (not currently leveraged by default) In Islandora repositories that use Fedora, all properties about Drupal nodes are mirrored in Fedora as RDF properties. But, even if an Islandora instance does not use Fedora, Drupal can provide an object's properties as RDF (again, Drupal is the primary source of data in Islandora 8). In addition, the Drupal media associated with Islandora 8 objects are persisted to Fedora, although exactly which media is configurable within the Islandora 8 admin interface. Just as Drupal out of the box has a public and private filesystem, Islandora adds a third filesystem to Drupal called, not surprisingly, "fedora", and it is to this filesystem that media are persisted. We will provide more information about Fedora's role in an Islandora 8 repository in the [metadata](metadata.md) and [media](media.md) sections. From 5796c56411b748608529f72fc1b1ff34eec6ff54 Mon Sep 17 00:00:00 2001 From: Rosie Le Faive Date: Mon, 31 Aug 2020 16:19:21 -0300 Subject: [PATCH 09/17] Add more details about starting up an islandora. (#1597) * Add more details about starting up an islandora. * Update index.md * Mention use of dev branch for prebuilt base box * Update index.md * Fix typo in VBE * Make clearer the different levels of sandbox reqs. --- docs/index.md | 52 ++++++++++++++++++++++++++------------------------- 1 file changed, 27 insertions(+), 25 deletions(-) diff --git a/docs/index.md b/docs/index.md index b686aefed..1d3e40a45 100644 --- a/docs/index.md +++ b/docs/index.md @@ -11,46 +11,48 @@ Islandora: - **Integrates with Fedora** - Drupal resources can be stored in Duraspace's [Fedora 5.x Repository](https://wiki.duraspace.org/display/FF/Fedora+Repository+Home) as binary assets and RDF metadata. - **Uses microservices** - Islandora provides an architecture for messaging and integration with any number of microservices, that provide services outside of the Drupal framework. Islandora's [Crayfish](https://github.com/Islandora/crayfish) suite of microservices provides functionality for synchronizing resources into Fedora and automatically generating derivative files. - **Can handle messages at scale** - Islandora uses [Alpaca](https://github.com/Islandora/Alpaca), an integration middleware based on Apache Camel, to scalably handle messaging and queueing for microservices such as Crayfish. + [//]: # (Allowing bulk uploads to be processed without affecting the server... would be the ideal right? but right now they're on the same server. Is just saying "scalability" ok?) - **Offers digital preservation features** - Using a robust storage layer for preservation (Fedora), and generating technical metadata with FITS, are digital preservation tools provided out of the box in the default implementation. Community members have created additional features for doing [digital preservation using Islandora](https://github.com/mjordan/digital_preservation_using_islandora), which have not yet been contributed to "Core Islandora". - **Exposes data to harvesters** - Metadata about resources is available as linked data through the [JSON-LD serialization module](https://github.com/Islandora/jsonld), and can be made available through Drupal, Fedora, or a triplestore. Islandora also offers a [full configuration for exposing OAI-PMH](https://github.com/Islandora/islandora_defaults/tree/8.x-1.x/modules/islandora_oaipmh) to metadata harvesters, and [IIIF support](https://github.com/Islandora/islandora/tree/8.x-1.x/modules/islandora_iiif) for images. - **Offers flexibility** - As Islandora content is Drupal content, migrations and batch editing can be done through Drupal's built-in migrate framework and controlled vocabularies created using Drupal taxonomies. Contributed Drupal modules such as [Solr Search API](https://www.drupal.org/project/search_api_solr) enable in-site search, and [Matomo Analytics](https://www.drupal.org/project/matomo) provides usage metrics for site analytics. - **Is a community** - A [dedicated, active community of users and developers](https://groups.google.com/forum/#!forum/islandora) is working to push new features, collaborate on improvements, design custom solutions, and create extended functionality. Some of these for Islandora 8 take the form of [Recipes](https://github.com/Islandora-Labs/Islandora-Cookbook). -## Demo +## Try Islandora -Visit [http://future.islandora.ca/](http://future.islandora.ca/). +### Online Sandbox -## Quickstart +To try Islandora without installing anything, visit [http://future.islandora.ca/](http://future.islandora.ca/). Anyone can log in to this sandbox as an administrator (credentials are below and on the front page) and explore the interface! However, this site is refreshed periodically so your changes will not be permanent. This site uses Islandora Defaults, a way of setting up Islandora for demonstration purposes. This is not the only way that Islandora can be made to work! This sandbox includes, on top of Islandora Defaults, some sample content and configuration (such as views and blocks, and other Drupal modules like Views Bulk Edit) to increase its usefulness as a sandbox. -These instructions use Vagrant and the [Islandora Ansible playbook](https://github.com/Islandora-Devops/islandora-playbook) to spin up a local development machine, which includes the [Islandora Default site configuration](https://github.com/Islandora/islandora_defaults). See the [Automatic Provisioning](installation/playbook/) page for full instructions. -[//]: # (Move this link to contributing/hacking-on-islandora.md once that's de-CLAWed.) +- username: Test +- password: islandora +### Virtual Machine Image (.ova file) -### Requirements -- [Virtual Box](https://www.virtualbox.org/) -- [Vagrant](https://www.vagrantup.com/) (version 2.0 or higher required) -- [Git](https://git-scm.com/) -- [OpenSSL](https://www.openssl.org/) -- [Ansible](https://www.ansible.com/community) (up to, and not past, 2.8.7) +To try Islandora locally, you can download and run the latest [community sandbox Virtual Machine image](https://islandora.ca/try). This requires installing VirtualBox or another virtualization provider. This also uses Islandora Defaults, and similarly to the online sandbox includes sample content and other configured Views, Blocks, and Drupal modules. -### Instructions +- username: admin +- password: islandora -Ubuntu 18.04 or Mac OS: -```console -$ git clone https://github.com/Islandora-Devops/islandora-playbook -$ cd islandora-playbook -$ vagrant up -``` -CentOS 7: -```console -$ git clone https://github.com/Islandora-Devops/islandora-playbook -$ cd islandora-playbook -$ vagrant plugin install vagrant-vbguest -$ ISLANDORA_DISTRO="centos/7" vagrant up +### Vagrant and Islandora Base Box + +The latest release of Islandora Defaults is uploaded as the [Islandora 8 Base Box](https://app.vagrantup.com/islandora/boxes/8) on Vagrant Cloud. If you have Vagrant and Git installed as well as VirtualBox, you can spin up the latest release of Islandora Defaults quickly by using the [Islandora Playbook](https://github.com/Islandora-Devops/islandora-playbook). On the `dev` branch, the Vagrantfile has the ISLANDORA_DISTRO variable default to 'islandora/8'. Like this, `vagrant up` will download the latest Islandora Base Box and will skip ansible provisioning. Same credentials as above, with further access to services documented in its README file. + +```bash +git clone https://github.com/Islandora-Devops/islandora-playbook +cd islandora-playbook +git checkout dev +vagrant up ``` -Then, navigate to [http://localhost:8000](http://localhost:8000) and log in with username `admin` and password `islandora`. +### Islandora Playbook via Ansible + +To use the Islandora Playbook as an Ansible Playbook, either set ISLANDORA_DISTRO to `ubuntu/bionic64` or `centos/7` (by editing the Vagrantfile or setting a shell variable), or, use Ansible to run it against an external linux server. Either way, be prepared to wait a while as Ansible installs Drupal via drupal-project and Composer. See [Installation](installation/playbook) and [Hacking on Islandora](contributing/hacking-on-islandora) for more details. + + +## Join the Community + +The [Islandora community](https://islandora.ca/index.php/community) is an active group of users, managers, librarians, documenters, and developers from GLAM (and beyond!) institutions worldwide. We welcome discussion and contribution through various mailing lists, channels, interest groups, and calls. The Islandora community operates under the [Islandora Code Of Conduct](https://islandora.ca/codeofconduct). See our Contributing Guidelines for more information. !!! note "Documentation for previous versions" From 9412fc77ce2e52e3f2297d8a6a5d6dd5602debaa Mon Sep 17 00:00:00 2001 From: Melissa Anez Date: Tue, 1 Sep 2020 11:50:09 -0300 Subject: [PATCH 10/17] Update CONTRIBUTING.md (#1601) --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2e6faf30d..952cd2244 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,7 +4,7 @@ If you are reading this document then you are interested in contributing to Isla ## Workflows -The group meets each Wednesday at 1:00 PM Eastern. Meeting notes and announcements are posted to the [Islandora community list](https://groups.google.com/forum/#!forum/islandora) and the [Islandora developers list](https://groups.google.com/forum/#!forum/islandora-dev). You can view meeting agendas, notes, and call-in information [here](https://github.com/Islandora/documentation/wiki#islandora-8-tech-calls). Anybody is welcome to join the calls, and add items to the agenda. +The Islandora 8 Tech Call meets each Wednesday at 1:00 PM Eastern, and the Islandora 8 User Call meets every second Thursday at 1:00 PM Eastern. Meeting notes and announcements are posted to the [Islandora community list](https://groups.google.com/forum/#!forum/islandora) and the [Islandora developers list](https://groups.google.com/forum/#!forum/islandora-dev). You can view meeting agendas, notes, and call-in information [here](https://github.com/Islandora/documentation/wiki#islandora-8-tech-calls). Anybody is welcome to join the calls, and add items to the agenda. ### Use cases From d4dd584f923cd82f8c245e27ddf0f12717d2f6dd Mon Sep 17 00:00:00 2001 From: Jonathan Green Date: Wed, 2 Sep 2020 08:58:42 -0300 Subject: [PATCH 11/17] Add Jordan to committers list (#1602) --- docs/contributing/committers.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/contributing/committers.md b/docs/contributing/committers.md index f42ddd939..b15cb24de 100644 --- a/docs/contributing/committers.md +++ b/docs/contributing/committers.md @@ -29,6 +29,7 @@ The following is an alphabetized list of the current Islandora 8 committers: | Name | Organization | Github username | |-----------------------------|---------------------------------------|----------------| +| Jordan Dukart | discoverygarden | jordandukart | | Jonathan Green | LYRASIS | jonathangreen | | Jonathan Hunt | Catalyst.Net | kayakr | | Mark Jordan | Simon Fraser University | mjordan | From b8e6961a87d88ae2be4b6f71ac6c8465f35945d2 Mon Sep 17 00:00:00 2001 From: Yamil Date: Fri, 4 Sep 2020 08:31:57 -0400 Subject: [PATCH 12/17] Migration docs updates (#1603) * Added link to newer migration Youtube vid, added migration-overview.md * Replaced used of "*" with "-" for bulleted lists * Updated headings in docs and spelling changes --- docs/technical-documentation/migrate-7x.md | 5 +- .../migration-overview.md | 151 ++++++++++++++++++ mkdocs.yml | 1 + 3 files changed, 155 insertions(+), 2 deletions(-) create mode 100644 docs/technical-documentation/migration-overview.md diff --git a/docs/technical-documentation/migrate-7x.md b/docs/technical-documentation/migrate-7x.md index 4cc180149..2fde92f85 100644 --- a/docs/technical-documentation/migrate-7x.md +++ b/docs/technical-documentation/migrate-7x.md @@ -1,5 +1,6 @@ -## Migrating from Islandora 7.x to Islandora CLAW (YouTube Video) +## Migrating from Islandora 7.x to Islandora 8 (YouTube Video) -[![Migrating from Islandora 7.x to Islandora CLAW](https://img.youtube.com/vi/fEDzfSPjKEo/0.jpg)](https://www.youtube.com/watch?v=fEDzfSPjKEo) +[![Islandora Webinar: Migrating from Islandora 7 to Islandora 8](https://img.youtube.com/vi/n0kLOB8ZdbM/0.jpg)](https://www.youtube.com/watch?v=n0kLOB8ZdbM) +Nov 21, 2019 For tools to migrate into Islandora 8 from an existing Islandora 7 instance, please see [migrate_7x_claw](https://github.com/Islandora-devops/migrate_7x_claw) diff --git a/docs/technical-documentation/migration-overview.md b/docs/technical-documentation/migration-overview.md new file mode 100644 index 000000000..7b3eab0d2 --- /dev/null +++ b/docs/technical-documentation/migration-overview.md @@ -0,0 +1,151 @@ +## Islandora 8 Migration Overview + +This video provides an overview of the various options available to migrate data into an Islandora 8 installation. + +[![Islandora Online: Islandora Migration Tools](https://img.youtube.com/vi/95Bnix-z1zY/0.jpg)](https://www.youtube.com/watch?v=95Bnix-z1zY) + +The three options are: +- REST API +- Migrate API +- Islandora Workbench + +### REST API + +Why use the rest API? +- Works anywhere + - You don’t have to work on the Drupal server. Migrate from your laptop! +- No PHP required + - Use any language that can make an http request. Even cURL will do just fine. +- JSON + - Why use XML if you don’t have to? + +BONUS: It’s just Drupal’s REST API + +#### Islandora only provides two additional API endpoints + +- /media/{mid}/source + - PUT a file to this endpoint to create/update a Media’s file +- /node/{nid}/media/{media_type}/{taxonomy_term} + - PUT a file to this endpoint to create/update a Media for a Node + +Just be aware, you are writing everything yourself! (In other words you are making all of the migration decisions yourself.) + +### Migrate API + +Uses the Drupal 8 [Migrate API](https://www.drupal.org/docs/8/api/migrate-api/migrate-api-overview), which "provides services for migrating data from a source system to Drupal 8. + +The "source system" can be almost anything: +- an Islandora 7 system +- a group of scanned images and their metadata inside a CSV file +- a web API + +Why use the Migrate API? + +- You can (potentially) do everything with configs! +- Leverage contrib module plugins. +- Making plugins for more complex sources and processes is (relatively) simple. +- Updating metadata is as simple as: +`drush mim node --update` + +#### A Migration Configuration defines an Extract, Transform, Load (ETL) process + +- Source plugins extract data from a source +- Process plugins transform the data +- Destination plugins load the data (create new entities) + +#### We’ve built two tools for you using the Migrate API + +- [migrate_islandora_csv](https://github.com/Islandora/migrate_islandora_csv) + - Tutorial with a sample migration using some files and a CSV +- [migrate_7x_claw](https://github.com/Islandora-Devops/migrate_7x_claw) + - A tool to get all your Islandora 7 content migrated over + +##### Recap of migrate_islandora_csv +- CSVs + - Everyone understands and knows how to work with CSVs +- Documented + - It’s a step-by-step walkthrough +- Process Metadata + - Clean up / transform the metadata using processors +- Build Relationships + - Migrations can reference other migrated content or generate new content on the fly + +##### Recap of migrate_7x_claw + +- Designed to migrate Islandora 7 data to Islandora 8. +- DATASTREAMS + - All of your datasteams, including the audit trail, are migrated +- METADATA + - Migrate metadata from Solr or any XML datastream +- CUSTOMIZABLE + - Migrate_7x_claw is a starting point, meant to be tailored to your metadata + +###### To make migrate_7x_claw work you need + +- Access + - You need credentials to both your Islandora 7 and 8 installs. +- Migrate API Knowledge + - The tutorial for migrate_islandora_csv +Is still relevant +- Config Sync + - You need to understand Drupal config synchronization. Features knowledge helps too. +- Command Line Skills + - This is best done with shell access and drush + +#### Migrate API demo video + +Check out this video that demonstrates the Drupal Migrate API migration process: [Islandora Webinar: Migrating from Islandora 7 to Islandora 8](migrate-7x.md) + +### Islandora Workbench + +https://github.com/mjordan/islandora_workbench + +More tailored for end users with less technical knowledge or limited server access. + +- Uses Islandora’s REST API +- Runs on your computer +- “CSVs and a pile of scans” +- Cross Platform - Python + +#### Islandora Workbench highlights + +- Opinionated + - MUCH less configuration. Decisions made for you. +- No Processing + - CSV has to be in the right format +- Write Operations + - Create, Update, and Delete content +- Bumpers On + - Configuration and CSV are validated + +#### Islandora Workbench basics + +- Column names are field names +- If your value contains a comma, wrap it in double quotes +- Multiple values are pipe delimited +- Entity references are done via numeric id (nid, mid, tid) + +Islandora Workbench - Taxonomy Terms: + +- Can use term id, term name, or both + - 26 + - Cats + - 26|Cats +- If using multiple vocabularies, prefix with vocabulary id: + - cats:Calico|dogs:Dachshund +- Terms that don’t exist can be created + +Islandora Workbench - More Field Types: + +- Typed Relations - Prefix term ids with namespace:rel: + - relators:pht:30 + - Relators:pht:30|relators:pub:45 +- Geolocation fields - “Lat,Long” + - "49.16667,-123.93333" + +Paged Content - Two Ways: + +- Metadata on Parent + - Simple directory structure and filename convention +- Page Level Metadata + - Parent and page metadata in same CSV diff --git a/mkdocs.yml b/mkdocs.yml index 212174376..11e1082aa 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -104,6 +104,7 @@ nav: - 'Alpaca Technical Stack': 'alpaca/alpaca-technical-stack.md' - 'Alpaca Tips': 'technical-documentation/alpaca_tips.md' - Migration: + - 'Migration Overview': 'technical-documentation/migration-overview.md' - 'CSV': 'technical-documentation/migrate-csv.md' - 'Islandora 7': 'technical-documentation/migrate-7x.md' - Contributing: From 4b50a9042a893ba1a99ab57e520cbe7f78978197 Mon Sep 17 00:00:00 2001 From: Rosie Le Faive Date: Wed, 9 Sep 2020 15:00:11 -0300 Subject: [PATCH 13/17] Main update (#1612) * Render the example helpful tip properly. (#1586) * Render the example helpful tip properly. * Fix note syntax, again. * Update rdf-mapping.md doc (#1585) Co-authored-by: Eli Zoller <5439169+elizoller@users.noreply.github.com> --- docs/contributing/docs_style_guide.md | 15 +++++++++++++-- docs/islandora/rdf-mapping.md | 24 ++++++++++++++++++++++-- 2 files changed, 35 insertions(+), 4 deletions(-) diff --git a/docs/contributing/docs_style_guide.md b/docs/contributing/docs_style_guide.md index e810b210b..7e092bd01 100644 --- a/docs/contributing/docs_style_guide.md +++ b/docs/contributing/docs_style_guide.md @@ -10,9 +10,20 @@ - Use `-` instead of `*` for bulleted lists. - Upload images to the 'assets' folder and reference them from there. -- For file name, use underscores between words and prefix all file names with the page name, e.g. context_display_hints.jpg for the image showing how to set display hints in the context menu. -- Use `!!! note "Note title"` at the start of a paragraph to have it rendered as a note like this: +- Use the [Admonition syntax](https://squidfunk.github.io/mkdocs-material/reference/admonitions/) to create notes like this (four-space indent required): + +_Example:_ + +``` +!!! note "Helpful Tip" + I am a helpful tip! +``` + +_Result:_ + +!!! note "Helpful Tip" + I am a helpful tip! -!!! note "Helpful Tip" I am a helpful tip! ## Don'ts diff --git a/docs/islandora/rdf-mapping.md b/docs/islandora/rdf-mapping.md index ef064feac..124178e41 100644 --- a/docs/islandora/rdf-mapping.md +++ b/docs/islandora/rdf-mapping.md @@ -63,8 +63,28 @@ Below is an example of an RDF mapping as a .yml (YAML) file. It is the current v - The top level key `types` specifies the `rdf:type` of the resource or content model. `field_model`, a required field of Islandora objects, also gets mapped to `rdf:type` through an arcane back-end process. - The top level key `fieldMappings` specifies fields attached to that bundle and their RDF property mappings. One field can be mapped to more than one RDF property. It is a simple flat list. -- `datatype_callback` : [needs documentation] -- `mapping_type: rel` : [needs documentation] + +#### Mapping Types +`mapping_type:`: There are several mapping types which are provided out of the box. +- `rel` - standing for relationship, expresses a relationship between two resources +- `property` - the default, or if a relationship is not provided, expresses the relationship between a resource and some literal text. + +#### Datatype Callbacks +`datatype_callback`: This is a custom function that transforms the output of the field. There are some provided to us by Drupal and some added by Islandora, such as: +- `Drupal\controlled_access_terms\EDTFConverter::dateIso8601Value` which converts dates to Iso format +- `Drupal\jsonld\EntityReferenceConverter::linkFieldPassthrough` which converts a referenced entity to the URI on the entity (which is configurable with the `link_field` argument +An example usage of the `Drupal\jsonld\EntityReferenceConverter::linkFieldPassthrough` is as follows: +```yml +field_subject: + properties: + - 'dcterms:subject' + datatype_callback: + callable: 'Drupal\jsonld\EntityReferenceConverter::linkFieldPassthrough' + arguments: + link_field: 'field_authority_link' +``` +Which would convert a reference to the subject's taxonomy term entity to a reference to the URI provided in `field_authority_link` of that subject's taxonomy term entity. + ## Sample RDF Mapping ```yml From d3749c989cf2a12800b1d171eecc09dc68be54b3 Mon Sep 17 00:00:00 2001 From: Rosie Le Faive Date: Wed, 9 Sep 2020 15:31:38 -0300 Subject: [PATCH 14/17] Merge changes to add @manez to committers. (#1613) * Merge changes to add @manez to committers. * Alphabeticalize committer names. Co-authored-by: dannylamb --- docs/contributing/committers.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/contributing/committers.md b/docs/contributing/committers.md index b15cb24de..889d321ad 100644 --- a/docs/contributing/committers.md +++ b/docs/contributing/committers.md @@ -29,6 +29,7 @@ The following is an alphabetized list of the current Islandora 8 committers: | Name | Organization | Github username | |-----------------------------|---------------------------------------|----------------| +| Melissa Anez | Islandora Foundation | manez | | Jordan Dukart | discoverygarden | jordandukart | | Jonathan Green | LYRASIS | jonathangreen | | Jonathan Hunt | Catalyst.Net | kayakr | From 167bb1731200d6718e2dab7c2c8e632313696d3d Mon Sep 17 00:00:00 2001 From: dannylamb Date: Fri, 11 Sep 2020 14:05:18 -0300 Subject: [PATCH 15/17] De-CLAWing --- .gitattributes | 2 +- .gitmodules | 28 +++++++++---------- .scripts/travis_setup_drupal.sh | 2 +- CONTRIBUTING.md | 6 ++-- docs/installation/playbook.md | 2 +- docs/technical-documentation/alpaca_tips.md | 2 +- docs/technical-documentation/docs-build.md | 2 +- docs/technical-documentation/flysystem.md | 10 +++---- docs/technical-documentation/migrate-csv.md | 2 +- docs/technical-documentation/testing-notes.md | 2 +- 10 files changed, 29 insertions(+), 29 deletions(-) diff --git a/.gitattributes b/.gitattributes index 8580c90a8..78dce4642 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,5 +1,5 @@ # Set the default behavior, in case people don't have core.autocrlf set. -# We need this due to https://github.com/Islandora-CLAW/CLAW/issues/188. +# We need this due to https://github.com/Islandora/documentation/issues/188. * text=auto * text eol=lf diff --git a/.gitmodules b/.gitmodules index b41481be9..ca1c412ff 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,45 +1,45 @@ [submodule "Alpaca"] path = Alpaca - url = https://github.com/Islandora-CLAW/Alpaca + url = https://github.com/Islandora/Alpaca [submodule "islandora"] path = islandora - url = https://github.com/Islandora-CLAW/islandora + url = https://github.com/Islandora/islandora [submodule "islandora_defaults"] path = islandora_defaults - url = https://github.com/Islandora-CLAW/islandora_defaults + url = https://github.com/Islandora/islandora_defaults [submodule "migrate_islandora_csv"] path = migrate_islandora_csv - url = https://github.com/Islandora-CLAW/migrate_islandora_csv + url = https://github.com/Islandora/migrate_islandora_csv [submodule "controlled_access_terms"] path = controlled_access_terms - url = https://github.com/Islandora-CLAW/controlled_access_terms + url = https://github.com/Islandora/controlled_access_terms [submodule "claw-playbook"] path = claw-playbook - url = https://github.com/Islandora-Devops/claw-playbook + url = https://github.com/Islandora/islandora-playbook [submodule "chullo"] path = chullo - url = https://github.com/Islandora-CLAW/chullo + url = https://github.com/Islandora/chullo [submodule "Crayfish"] path = Crayfish - url = https://github.com/Islandora-CLAW/Crayfish + url = https://github.com/Islandora/Crayfish [submodule "jsonld"] path = jsonld - url = https://github.com/Islandora-CLAW/jsonld + url = https://github.com/Islandora/jsonld [submodule "Syn"] path = Syn - url = https://github.com/Islandora-CLAW/Syn + url = https://github.com/Islandora/Syn [submodule "Crayfish-Commons"] path = Crayfish-Commons - url = https://github.com/Islandora-CLAW/Crayfish-Commons + url = https://github.com/Islandora/Crayfish-Commons [submodule "carapace"] path = carapace - url = https://github.com/Islandora-CLAW/carapace + url = https://github.com/Islandora/carapace [submodule "openseadragon"] path = openseadragon - url = https://github.com/Islandora-CLAW/openseadragon + url = https://github.com/Islandora/openseadragon [submodule "drupal-project"] path = drupal-project - url = https://github.com/Islandora-CLAW/drupal-project + url = https://github.com/Islandora/drupal-project [submodule "migrate_7x_claw"] path = migrate_7x_claw url = https://github.com/Islandora-Devops/migrate_7x_claw diff --git a/.scripts/travis_setup_drupal.sh b/.scripts/travis_setup_drupal.sh index fa90246fc..3a8d8c9ef 100755 --- a/.scripts/travis_setup_drupal.sh +++ b/.scripts/travis_setup_drupal.sh @@ -20,7 +20,7 @@ phpcs --config-set installed_paths /opt/utils/vendor/drupal/coder/coder_sniffer echo "Composer install drupal site" cd /opt -git clone --branch 8.x-1.x https://github.com/Islandora-CLAW/drupal-project.git drupal +git clone --branch 8.x-1.x https://github.com/Islandora/drupal-project.git drupal cd drupal if [ -z "$COMPOSER_PATH" ]; then composer install diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 952cd2244..730d7e07b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -12,7 +12,7 @@ If you would like to submit a use case to the Islandora 8 project, please submit ### Documentation -You can contribute documentation in two different ways. One way is to create an issue [here](https://github.com/Islandora/documentation/issues/new), prepending "Documentation:" to the title of the issue. Another way is by pull request, which is the same process as [Contribute Code](https://github.com/Islandora/documentation/blob/mainONTRIBUTING.md#contribute-code). All documentation resides in [`docs`](https://github.com/Islandora/documentation/tree/mamains). +You can contribute documentation in two different ways. One way is to create an issue [here](https://github.com/Islandora/documentation/issues/new), prepending "Documentation:" to the title of the issue. Another way is by pull request, which is the same process as [Contribute Code](https://github.com/Islandora/documentation/blob/main/CONTRIBUTING.md#contribute-code). All documentation resides in [`docs`](https://github.com/Islandora/documentation/tree/main/docs). ### Request a new feature @@ -58,9 +58,9 @@ Contributions to the Islandora codebase should be sent as GitHub pull requests. Take a look at [Creating a pull request](https://help.github.com/articles/creating-a-pull-request). In a nutshell you need to: -1. [Fork](https://help.github.com/articles/fork-a-repo) this repository to your personal or institutional GitHub account (depending on the CLA you are working under). Be cautious of which branches you work from though (you'll want to base your work off mainor for Drupal modules use the most recent version branch). See [Fork a repo](https://help.github.com/articles/fork-a-repo) for detailed instructions. +1. [Fork](https://help.github.com/articles/fork-a-repo) this repository to your personal or institutional GitHub account (depending on the CLA you are working under). Be cautious of which branches you work from though (you'll want to base your work off main, or for Drupal modules use the most recent version branch). See [Fork a repo](https://help.github.com/articles/fork-a-repo) for detailed instructions. 2. Commit any changes to your fork. -3. Send a [pull request](https://help.github.com/articles/creating-a-pull-request) using the [pull request template](https://github.com/Islandora/documentation/blob/maingithub/PULL_REQUEST_TEMPLATE.md) to the Islandora GitHub repository that you forked in step 1. If your pull request is related to an existing issue -- for instance, because you reported a [bug/issue](https://github.com/Islandora/documentation/issues) earlier -- prefix the title of your pull request with the corresponding issue number (e.g. `issue-123: ...`). Please also include a reference to the issue in the description of the pull. This can be done by using '#' plus the issue number like so '#123', also try to pick an appropriate name for the branch in which you're issuing the pull request from. +3. Send a [pull request](https://help.github.com/articles/creating-a-pull-request) using the [pull request template](https://github.com/Islandora/documentation/blob/main/.github/PULL_REQUEST_TEMPLATE.md) to the Islandora GitHub repository that you forked in step 1. If your pull request is related to an existing issue -- for instance, because you reported a [bug/issue](https://github.com/Islandora/documentation/issues) earlier -- prefix the title of your pull request with the corresponding issue number (e.g. `issue-123: ...`). Please also include a reference to the issue in the description of the pull. This can be done by using '#' plus the issue number like so '#123', also try to pick an appropriate name for the branch in which you're issuing the pull request from. You may want to read [Syncing a fork](https://help.github.com/articles/syncing-a-fork) for instructions on how to keep your fork up to date with the latest changes of the upstream (official) repository. diff --git a/docs/installation/playbook.md b/docs/installation/playbook.md index 83747f43a..09a310047 100644 --- a/docs/installation/playbook.md +++ b/docs/installation/playbook.md @@ -272,4 +272,4 @@ change this, set a new value for `ansible_port` in `inventory/vagrant/hosts`. If you run into any issues installing the environment, do not hesitate to email the [mailing list](mailto:islandora@googlegroups.com) to ask for help. If you think you've stumbled across a bug in the installer, please create an issue in the -[Islandora 8 issue queue](http://github.com/Islandora-CLAW/CLAW/issues) and give it an `ansible` tag. +[Islandora 8 issue queue](http://github.com/Islandora/documentation/issues) and give it an `ansible` tag. diff --git a/docs/technical-documentation/alpaca_tips.md b/docs/technical-documentation/alpaca_tips.md index a47614924..d64f44570 100644 --- a/docs/technical-documentation/alpaca_tips.md +++ b/docs/technical-documentation/alpaca_tips.md @@ -15,7 +15,7 @@ This service receives requests from Drupal when it wants to create derivatives a This service overrides the default http client with Islandora specific configuration. ## islandora-indexing-fcrepo -This service receives requests from Drupal in response to write operations on entities. These requests are passed along to [Milliner](https://github.com/Islandora/Crayfish/tree/dev/Milliner) microservice in [Crayfish](https://github.com/Islandora/Crayfish) to convert Drupal entities into Fedora resources and communicate with Fedora (via [Chullo](https://github.com/Islandora-CLAW/chullo)). +This service receives requests from Drupal in response to write operations on entities. These requests are passed along to [Milliner](https://github.com/Islandora/Crayfish/tree/dev/Milliner) microservice in [Crayfish](https://github.com/Islandora/Crayfish) to convert Drupal entities into Fedora resources and communicate with Fedora (via [Chullo](https://github.com/Islandora/chullo)). ## islandora-indexing-triplestore This service receives requests from Drupal on indexing and deleting in order to persist/delete content in the triplestore. diff --git a/docs/technical-documentation/docs-build.md b/docs/technical-documentation/docs-build.md index 9d755008b..2924ca1c4 100644 --- a/docs/technical-documentation/docs-build.md +++ b/docs/technical-documentation/docs-build.md @@ -1,6 +1,6 @@ # Introduction -This documentation is built using [mkdocs](http://www.mkdocs.org/), a static site generator that is geared towards building project documentation. The documentation is created in the [Markdown](http://en.wikipedia.org/wiki/Markdown) format, and it all resides in the [`docs`](https://github.com/Islandora-CLAW/CLAW/tree/main/docs) directory in the repository. The organization of the documentation is controlled by the [`mkdocs.yml`](https://github.com/Islandora-CLAW/CLAW/blob/main/mkdocs.yml) in the root of the repository. +This documentation is built using [mkdocs](http://www.mkdocs.org/), a static site generator that is geared towards building project documentation. The documentation is created in the [Markdown](http://en.wikipedia.org/wiki/Markdown) format, and it all resides in the [`docs`](https://github.com/Islandora/documentation/tree/main/docs) directory in the repository. The organization of the documentation is controlled by the [`mkdocs.yml`](https://github.com/Islandora/documentation/blob/main/mkdocs.yml) in the root of the repository. ## Prerequisites diff --git a/docs/technical-documentation/flysystem.md b/docs/technical-documentation/flysystem.md index 4aaeea590..bc41c8577 100644 --- a/docs/technical-documentation/flysystem.md +++ b/docs/technical-documentation/flysystem.md @@ -14,7 +14,7 @@ The Drupal Flysystem module uses [flysystem stream wrappers](https://github.com/ ### The Plugin and Adapter -Islandora 8 implements a [Flysystem adapter](https://github.com/Islandora-CLAW/islandora/blob/8.x-1.x/src/Flysystem/Adapter/FedoraAdapter.php) and a [Drupal Flysystem plugin](https://github.com/Islandora-CLAW/islandora/blob/8.x-1.x/src/Flysystem/Fedora.php). The Flysystem adapter acts as an intermediary between the Flysystem filesystem API and Fedora, translating requests and responses between them. The adapter interacts with Fedora using an instance of the [Chullo Fedora API](/Islandora-CLAW/chullo/blob/main/src/IFedoraApi.php) it receives from the Drupal Flysystem plugin. The Drupal Flysystem plugin's main responsibility is to instantiate the Chullo Fedora API object with the proper authentication and pass it to the Flysystem adapter. To authenticate with Fedora the plugin adds a [handler](http://docs.guzzlephp.org/en/stable/handlers-and-middleware.html) to the Chullo's [Guzzle](http://docs.guzzlephp.org) client which adds a [JWT](https://jwt.io/) authentication header to each request. +Islandora 8 implements a [Flysystem adapter](https://github.com/Islandora/islandora/blob/8.x-1.x/src/Flysystem/Adapter/FedoraAdapter.php) and a [Drupal Flysystem plugin](https://github.com/Islandora/islandora/blob/8.x-1.x/src/Flysystem/Fedora.php). The Flysystem adapter acts as an intermediary between the Flysystem filesystem API and Fedora, translating requests and responses between them. The adapter interacts with Fedora using an instance of the [Chullo Fedora API](https://github.com/Islandora/chullo/blob/main/src/IFedoraApi.php) it receives from the Drupal Flysystem plugin. The Drupal Flysystem plugin's main responsibility is to instantiate the Chullo Fedora API object with the proper authentication and pass it to the Flysystem adapter. To authenticate with Fedora the plugin adds a [handler](http://docs.guzzlephp.org/en/stable/handlers-and-middleware.html) to the Chullo's [Guzzle](http://docs.guzzlephp.org) client which adds a [JWT](https://jwt.io/) authentication header to each request. The Fedora Flysystem adapter does not use Gemini to map the relationship between Drupal URIs and Fedora URIs, so they are indexed separately using the "files_in_fedora" Context which triggers the "Index Fedora File in Gemini" and "Delete Fedora File in Gemini" actions as appropriate. @@ -31,11 +31,11 @@ $settings['flysystem'] = [ ], ]; ``` -The configuration array's top-level key is the name of the Drupal stream wrapper, which also serves as the filesystem prefix. Any Drupal file path using "fedora://" will use this Flysystem adapter. Drupal will translate this prefix to the site's domain plus "\_flystem/fedora/". For example, using the default configuration provided by the claw-playbook, a file stored at "fedora://test.tif" will persist to Fedora with the URI "http://localhost:8080/fcrepo/rest/test.tif" and will be accessible from the Drupal URL "http://localhost:8000/_flysystem/fedora/test.tif". The 'driver' value 'fedora' corresponds to [the plugin's machine name](https://github.com/Islandora-CLAW/islandora/blob/8.x-1.x/src/Flysystem/Fedora.php#L21). The 'config' section contains all the adapter-specific configurations. In this case, the only thing configured for the site is the Fedora REST end-point. (Change this value to match your own Fedora's location, if needed.) The JWT is configured separately. +The configuration array's top-level key is the name of the Drupal stream wrapper, which also serves as the filesystem prefix. Any Drupal file path using "fedora://" will use this Flysystem adapter. Drupal will translate this prefix to the site's domain plus "\_flystem/fedora/". For example, using the default configuration provided by the claw-playbook, a file stored at "fedora://test.tif" will persist to Fedora with the URI "http://localhost:8080/fcrepo/rest/test.tif" and will be accessible from the Drupal URL "http://localhost:8000/_flysystem/fedora/test.tif". The 'driver' value 'fedora' corresponds to [the plugin's machine name](https://github.com/Islandora/islandora/blob/8.x-1.x/src/Flysystem/Fedora.php#L21). The 'config' section contains all the adapter-specific configurations. In this case, the only thing configured for the site is the Fedora REST end-point. (Change this value to match your own Fedora's location, if needed.) The JWT is configured separately. Other examples of Drupal Flysystem configurations can be seen in [the module's README](http://cgit.drupalcode.org/flysystem/plain/README.md?h=8.x-1.x). -Islandora is configured to have all Media use the Fedora file system by default in the islandora_core_feature. For example, the [field storage uri_scheme setting for field_media_image](https://github.com/Islandora-CLAW/islandora/blob/8.x-1.x/modules/islandora_core_feature/config/install/field.storage.media.field_media_image.yml#L17) (and the other media types) is "fedora". This can also be viewed in the UI on the field's "Field settings" page; e.g. `http://localhost:8000/admin/structure/media/manage/image/fields/media.image.field_media_image/storage`, look for "Upload destination" and see that "Flysystem: fedora" is selected. +Islandora is configured to have all Media use the Fedora file system by default in the islandora_core_feature. For example, the [field storage uri_scheme setting for field_media_image](https://github.com/Islandora/islandora/blob/8.x-1.x/modules/islandora_core_feature/config/install/field.storage.media.field_media_image.yml#L17) (and the other media types) is "fedora". This can also be viewed in the UI on the field's "Field settings" page; e.g. `http://localhost:8000/admin/structure/media/manage/image/fields/media.image.field_media_image/storage`, look for "Upload destination" and see that "Flysystem: fedora" is selected. However, there are methods for saving files that can explicitly set a different filesystem than the default. Migrations can explicitly set which file system a file is saved to and Islandora can emit events that also specify which file system a derivative should be saved to. @@ -43,8 +43,8 @@ However, there are methods for saving files that can explicitly set a different As hinted in the previous section, Islandora, by default saves derivatives to the Drupal public file system. -For example, if I upload a Tiff to a repository item as a File Media with the term "Original File", the "Image Original File" ([image_original_file](https://github.com/Islandora-CLAW/islandora_demo/blob/8.x-1.x/config/install/context.context.image_original_file.yml)) Context is triggered. This fires the ['image_generate_a_service_file_from_an_original_file' action](https://github.com/Islandora-CLAW/islandora_demo/blob/8.x-1.x/config/install/system.action.image_generate_a_service_file_from_an_original_file.yml) which emits an event using the ['public' scheme (file system)](https://github.com/Islandora-CLAW/islandora_demo/blob/8.x-1.x/config/install/system.action.image_generate_a_service_file_from_an_original_file.yml#L17). +For example, if I upload a Tiff to a repository item as a File Media with the term "Original File", the "Image Original File" ([image_original_file](https://github.com/Islandora/islandora_defaults/blob/8.x-1.x/config/install/context.context.image_original_file.yml)) Context is triggered. This fires the ['image_generate_a_service_file_from_an_original_file' action](https://github.com/Islandora/islandora_defaults/blob/8.x-1.x/config/install/system.action.image_generate_a_service_file_from_an_original_file.yml) which emits an event using the ['public' scheme (file system)](https://github.com/Islandora/islandora_defaults/blob/8.x-1.x/config/install/system.action.image_generate_a_service_file_from_an_original_file.yml#L17). To make Islandora save future derivatives to Fedora instead of to Drupal, change the corresponding action's "File system" setting ('scheme' in the corresponding config file) to 'fedora' instead of 'public'. -![Screenshot showing the setting to change for the derivative generation action.](../assets/flysystem_derivative_filesystem_setting.png) +![Screenshot showing the setting to change for the derivative generation action.]../assets/flysystem_derivative_filesystem_setting.png) diff --git a/docs/technical-documentation/migrate-csv.md b/docs/technical-documentation/migrate-csv.md index 298fda5de..f01a8950f 100644 --- a/docs/technical-documentation/migrate-csv.md +++ b/docs/technical-documentation/migrate-csv.md @@ -24,7 +24,7 @@ This tutorial introduces you to the Drupal 8 Migrate tools available to create Islandora content. Whether you will eventually use CSVs or other sources (such as XML or directly from a 7.x Islandora) this tutorial should be useful as it covers the basics and mechanics of migration. -This tutorial uses the configurations and code available in the [migrate_islandora_csv](https://github.com/Islandora-CLAW/migrate_islandora_csv) module which, when enabled, will create three example migrations ready for you to use with the Migrate API. Each migration comes from one of the files in the `config/install` folder. We'll walk through them in detail below. The module is also uses [Features](https://www.drupal.org/project/feature) which allows you to make changes to the configuration files and sync those changes into your Drupal site. +This tutorial uses the configurations and code available in the [migrate_islandora_csv](https://github.com/Islandora/migrate_islandora_csv) module which, when enabled, will create three example migrations ready for you to use with the Migrate API. Each migration comes from one of the files in the `config/install` folder. We'll walk through them in detail below. The module is also uses [Features](https://www.drupal.org/project/feature) which allows you to make changes to the configuration files and sync those changes into your Drupal site. !!! note "A note on using Features" This tutorial (and Islandora in general) makes heavy use of Features, which is an easy way to ship and install Drupal configuration. However, after enabling a Feature module, the code in that module's directory is no longer "live", as the configuration now resides in the Drupal database. If you change code in the YAML files, it will not take effect until you re-import the Feature. There is a walkthrough in the "Configuration" section of the [Migrate 7.x to 8](https://github.com/Islandora-Devops/migrate_7x_claw) tutorial. diff --git a/docs/technical-documentation/testing-notes.md b/docs/technical-documentation/testing-notes.md index 1a6bc9815..4ec12b0b3 100644 --- a/docs/technical-documentation/testing-notes.md +++ b/docs/technical-documentation/testing-notes.md @@ -2,7 +2,7 @@ The map between Drupal URIs and their corresponding Fedora URIs is stored in a service called Gemini. An Islandora "pseudo-field" can be enabled that will display the corresponding Fedora URI on the page of a node, taxonomy term, or media object. You can also query Gemini directly. Instructions for doing that are provided below. -For more information about the Gemini service, see the [Gemini README](https://github.com/Islandora-CLAW/Crayfish/tree/main/Gemini). +For more information about the Gemini service, see the [Gemini README](https://github.com/Islandora/Crayfish/tree/main/Gemini). ## Fedora URI Pseudo-field From e105e3a7a90e9beaa9ae2d35a2dd25a9e8092096 Mon Sep 17 00:00:00 2001 From: dannylamb Date: Fri, 11 Sep 2020 14:06:27 -0300 Subject: [PATCH 16/17] Derp --- .gitmodules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitmodules b/.gitmodules index ca1c412ff..79fddd922 100644 --- a/.gitmodules +++ b/.gitmodules @@ -15,7 +15,7 @@ url = https://github.com/Islandora/controlled_access_terms [submodule "claw-playbook"] path = claw-playbook - url = https://github.com/Islandora/islandora-playbook + url = https://github.com/Islandora-Devops/islandora-playbook [submodule "chullo"] path = chullo url = https://github.com/Islandora/chullo From d54ddbe41a039b5dc0f94b5b4af6512486c4bf29 Mon Sep 17 00:00:00 2001 From: dannylamb Date: Fri, 11 Sep 2020 14:17:18 -0300 Subject: [PATCH 17/17] Missing parenthesis --- docs/technical-documentation/flysystem.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/technical-documentation/flysystem.md b/docs/technical-documentation/flysystem.md index bc41c8577..5cfa4de70 100644 --- a/docs/technical-documentation/flysystem.md +++ b/docs/technical-documentation/flysystem.md @@ -47,4 +47,4 @@ For example, if I upload a Tiff to a repository item as a File Media with the te To make Islandora save future derivatives to Fedora instead of to Drupal, change the corresponding action's "File system" setting ('scheme' in the corresponding config file) to 'fedora' instead of 'public'. -![Screenshot showing the setting to change for the derivative generation action.]../assets/flysystem_derivative_filesystem_setting.png) +![Screenshot showing the setting to change for the derivative generation action.](../assets/flysystem_derivative_filesystem_setting.png)