forked from Islandora-Devops/islandora-playbook
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
using copy of fcrepo role due to needing to change the fedora config …
…to point at s3
- Loading branch information
Showing
21 changed files
with
974 additions
and
0 deletions.
There are no files selected for viewing
37 changes: 37 additions & 0 deletions
37
roles/internal/Islandora-Devops.fcrepo/.github/PULL_REQUEST_TEMPLATE.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
**GitHub Issue**: (link) | ||
|
||
* Other Relevant Links (Google Groups discussion, related pull requests, | ||
Release pull requests, etc.) | ||
|
||
# What does this Pull Request do? | ||
|
||
A brief description of what the intended result of the PR will be and/or what | ||
problem it solves. | ||
|
||
# What's new? | ||
A in-depth description of the changes made by this PR. Technical details and | ||
possible side effects. | ||
|
||
* Changes x feature to such that y | ||
* Added x | ||
* Removed y | ||
* Does this change require documentation to be updated? | ||
* Does this change add any new dependencies? | ||
* Does this change require any other modifications to be made to the repository | ||
(ie. Regeneration activity, etc.)? | ||
* Could this change impact execution of existing code? | ||
|
||
# How should this be tested? | ||
|
||
A description of what steps someone could take to: | ||
* Reproduce the problem you are fixing (if applicable) | ||
* Test that the Pull Request does what is intended. | ||
* Please be as detailed as possible. | ||
* Good testing instructions help get your PR completed faster. | ||
|
||
# Additional Notes: | ||
Any additional information that you think would be helpful when reviewing this | ||
PR. | ||
|
||
# Interested parties | ||
Tag (@ mention) interested parties or, if unsure, @Islandora-Devops/committers |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
# Welcome! | ||
|
||
If you are reading this document then you are interested in contributing to Islandora 8. All contributions are welcome: use-cases, documentation, code, patches, bug reports, feature requests, etc. You do not need to be a programmer to speak up! | ||
|
||
We also have an irc channel -- #islandora -- on freenode.net. Feel free to hang out there, ask questions, and help others out if you can. | ||
|
||
Please note that this project operates under the [Islandora Community Code of Conduct](http://islandora.ca/codeofconduct). By participating in this project you agree to abide by its terms. | ||
|
||
## 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-CLAW/CLAW/wiki#islandora-claw-tech-calls). Anybody is welcome to join the calls, and add items to the agenda. | ||
|
||
### Use cases | ||
|
||
If you would like to submit a use case to the Islandora 8 project, please submit an issue [here](https://github.com/Islandora-CLAW/CLAW/issues/new) using the [Use Case template](https://github.com/Islandora-CLAW/CLAW/wiki/Use-Case-template), prepending "Use Case:" to the title of the issue. | ||
|
||
### Documentation | ||
|
||
You can contribute documentation in two different ways. One way is to create an issue [here](https://github.com/Islandora-CLAW/CLAW/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-CLAW/CLAW/blob/master/CONTRIBUTING.md#contribute-code). All documentation resides in [`docs`](https://github.com/Islandora-CLAW/CLAW/tree/master/docs). | ||
|
||
### Request a new feature | ||
|
||
To request a new feature you should [open an issue in the Islandora 8 repository](https://github.com/Islandora-CLAW/CLAW/issues/new) or create a use case (see the _Use cases_ section above), and summarize the desired functionality. Prepend "Enhancement:" if creating an issue on the project repo, and "Use Case:" if creating a use case. | ||
|
||
### Report a bug | ||
|
||
To report a bug you should [open an issue in the Islandora 8 repository](https://github.com/Islandora-CLAW/CLAW/issues/new) that summarizes the bug. Prepend the label "Bug:" to the title of the issue. | ||
|
||
In order to help us understand and fix the bug it would be great if you could provide us with: | ||
|
||
1. The steps to reproduce the bug. This includes information about e.g. the Islandora version you were using along with the versions of stack components. | ||
2. The expected behavior. | ||
3. The actual, incorrect behavior. | ||
|
||
Feel free to search the issue queue for existing issues (aka tickets) that already describe the problem; if there is such a ticket please add your information as a comment. | ||
|
||
**If you want to provide a pull along with your bug report:** | ||
|
||
That is great! In this case please send us a pull request as described in the section _Create a pull request_ below. | ||
|
||
### Contribute code | ||
|
||
Before you set out to contribute code you will need to have completed a [Contributor License Agreement](http://islandora.ca/sites/default/files/islandora_cla.pdf) or be covered by a [Corporate Contributor License Agreement](http://islandora.ca/sites/default/files/islandora_ccla.pdf). The signed copy of the license agreement should be sent to <mailto:[email protected]> | ||
|
||
_If you are interested in contributing code to Islandora but do not know where to begin:_ | ||
|
||
In this case you should [browse open issues](https://github.com/Islandora-CLAW/CLAW/issues) and check out [use cases](https://github.com/Islandora-CLAW/CLAW/labels/use%20case). | ||
|
||
If you are contributing Drupal code, it must adhere to [Drupal Coding Standards](https://www.drupal.org/coding-standards); Travis CI will check for this on pull requests. | ||
|
||
Contributions to the Islandora codebase should be sent as GitHub pull requests. See section _Create a pull request_ below for details. If there is any problem with the pull request we can work through it using the commenting features of GitHub. | ||
|
||
* For _small patches_, feel free to submit pull requests directly for those patches. | ||
* For _larger code contributions_, please use the following process. The idea behind this process is to prevent any wasted work and catch design issues early on. | ||
|
||
1. [Open an issue](https://github.com/Islandora-CLAW/CLAW/issues), prepending "Enhancement:" in the title if a similar issue does not exist already. If a similar issue does exist, then you may consider participating in the work on the existing issue. | ||
2. Comment on the issue with your plan for implementing the issue. Explain what pieces of the codebase you are going to touch and how everything is going to fit together. | ||
3. Islandora committers will work with you on the design to make sure you are on the right track. | ||
4. Implement your issue, create a pull request (see below), and iterate from there. | ||
|
||
### Create a pull request | ||
|
||
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. | ||
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-CLAW/CLAW/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-CLAW/CLAW/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. | ||
|
||
## License Agreements | ||
|
||
The Islandora Foundation requires that contributors complete a [Contributor License Agreement](http://islandora.ca/sites/default/files/islandora_cla.pdf) or be covered by a [Corporate Contributor License Agreement](http://islandora.ca/sites/default/files/islandora_ccla.pdf). The signed copy of the license agreement should be sent to <a href="mailto:[email protected]?Subject=Contributor%20License%20Agreement" target="_top">[email protected]</a>. This license is for your protection as a contributor as well as the protection of the Foundation and its users; it does not change your rights to use your own contributions for any other purpose. A list of current CLAs is kept [here](https://github.com/Islandora/islandora/wiki/Contributor-License-Agreements). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
MIT License | ||
|
||
Copyright (c) 2019 Islandora Foundation | ||
|
||
Permission is hereby granted, free of charge, to any person obtaining a copy | ||
of this software and associated documentation files (the "Software"), to deal | ||
in the Software without restriction, including without limitation the rights | ||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
copies of the Software, and to permit persons to whom the Software is | ||
furnished to do so, subject to the following conditions: | ||
|
||
The above copyright notice and this permission notice shall be included in all | ||
copies or substantial portions of the Software. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
SOFTWARE. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,111 @@ | ||
# Ansible Role: Fedora | ||
|
||
An Ansible role that installs Fedora 5 in a Tomcat 8 servlet container on: | ||
|
||
* Centos/RHEL 7.x | ||
* Ubuntu Xenial | ||
|
||
This role has been tested with Fedora 4.7.* and 5.*.*. | ||
|
||
## Role Variables | ||
|
||
Available variables are listed below, along with default values: | ||
|
||
Version of Fedora to install | ||
``` | ||
fcrepo_version: 5.1.0 | ||
``` | ||
|
||
User with permissions to install: | ||
``` | ||
fcrepo_user: {{ tomcat8_server_user }} | ||
``` | ||
|
||
Path to put Fedora data directory (see the notes section below) | ||
``` | ||
fcrepo_data_dir: /var/lib/tomcat8/fcrepo4-data | ||
``` | ||
|
||
A home directory for Fedora | ||
``` | ||
fcrepo_home_dir: /opt/fcrepo | ||
``` | ||
|
||
Where to put the Fedora war file | ||
``` | ||
fcrepo_war_path: "{{ tomcat8_home }}/webapps/fcrepo.war" | ||
``` | ||
|
||
The activemq configuration file template name | ||
``` | ||
fcrepo_activemq_template: activemq.xml.j2 | ||
``` | ||
|
||
Where the configurations are stored | ||
``` | ||
fcrepo_config_dir: "{{ fcrepo_home_dir }}/configs" | ||
``` | ||
|
||
Path to put Fedora data directory | ||
``` | ||
fcrepo_data_dir: "{{ fcrepo_home_dir }}/fcrepo4-data" | ||
``` | ||
|
||
Path to put the Fedora data binaries directory | ||
``` | ||
fcrepo_binary_directory: "{{ fcrepo_data_dir}}/binaries" | ||
``` | ||
|
||
Which Fedora object persistence configuration to use | ||
``` | ||
fcrepo_persistence: file-simple | ||
``` | ||
|
||
If 'file-simple persistence' is used (default), where to keep the modeshape repository file | ||
``` | ||
fcrepo_object_directory: "{{ fcrepo_data_dir}}/objects" | ||
``` | ||
|
||
If either 'jdbc-mysql' or 'jdbc-postgres' are used for object persistence, the database settings | ||
``` | ||
fcrepo_db_name: fcrepo | ||
fcrepo_db_user: fcrepo | ||
fcrepo_db_password: fcrepo | ||
fcrepo_db_host: "127.0.0.1" | ||
fcrepo_db_port: "3306" | ||
``` | ||
|
||
Islandora uses the HeaderProvider to pass the users roles into Fedora. To use this you will need to set the below variable. | ||
|
||
Header name to acquire roles from | ||
``` | ||
fcrepo_auth_header_name: | ||
``` | ||
|
||
Islandora takes advantage of fcrepo's external content feature. To enable redirects / proxying, you need to configure: | ||
|
||
Where the config file gets stored: | ||
``` | ||
fcrepo_allowed_external_content_file: "{{ fcrepo_config_dir }}/allowed-external-content.txt" | ||
``` | ||
|
||
What paths/urls to expose: | ||
``` | ||
fcrepo_allowed_external_content: | ||
- http://localhost:8000/ | ||
``` | ||
|
||
|
||
## Dependencies | ||
|
||
* islandora.tomcat8 | ||
|
||
## Example Playbook | ||
|
||
- hosts: webservers | ||
roles: | ||
- { role: islandora.fcrepo } | ||
|
||
## License | ||
|
||
MIT |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
fcrepo_version: 5.1.0 | ||
fcrepo_user: "{{ tomcat8_server_user }}" | ||
fcrepo_data_dir: /var/lib/tomcat8/fcrepo4-data | ||
fcrepo_binary_directory: "{{ fcrepo_data_dir}}/binaries" | ||
fcrepo_war_path: "{{ tomcat8_home }}/webapps/fcrepo.war" | ||
fcrepo_home_dir: /opt/fcrepo | ||
fcrepo_activemq_template: activemq.xml.j2 | ||
fcrepo_activemq_broker_url: "tcp://localhost:61616" | ||
fcrepo_config_dir: "{{ fcrepo_home_dir }}/configs" | ||
|
||
# For file-simple object persistence. | ||
fcrepo_object_directory: "{{ fcrepo_data_dir}}/objects" | ||
|
||
# For production use either "jdbc-mysql" or "jdbc-postgresql" | ||
fcrepo_persistence: file-simple | ||
|
||
# Used for mysql or postgres object persistence. Please change the password locally! | ||
fcrepo_db_name: fcrepo | ||
fcrepo_db_user: fcrepo | ||
fcrepo_db_password: fcrepo | ||
fcrepo_db_host: "127.0.0.1" | ||
fcrepo_db_port: "3306" | ||
# user that has database create and user add privs. | ||
fcrepo_db_root_user: "root" | ||
fcrepo_db_root_password: "islandora" | ||
|
||
# External content paths can be directories or urls, | ||
# and they MUST end in / | ||
fcrepo_allowed_external_content: | ||
- http://localhost:8000/ | ||
|
||
fcrepo_allowed_external_content_file: "{{ fcrepo_config_dir }}/allowed-external-content.txt" | ||
|
||
fcrepo_auth_header_name: |
2 changes: 2 additions & 0 deletions
2
roles/internal/Islandora-Devops.fcrepo/meta/.galaxy_install_info
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
install_date: Mon Jun 29 23:46:27 2020 | ||
version: master |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
--- | ||
galaxy_info: | ||
author: Islandora | ||
description: Ansible Galaxy role for installing Fedora 4 | ||
company: Islandora Foundation | ||
license: MIT | ||
min_ansible_version: 2.0 | ||
max_ansible_version: 2.3 | ||
platforms: | ||
- name: Ubuntu | ||
versions: | ||
- xenial | ||
- name: EL | ||
versions: | ||
- 7 | ||
galaxy_tags: | ||
- fedora | ||
- islandora | ||
- CLAW | ||
- repository | ||
- ldp | ||
- installer |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
- name: Copy templated fcrepo config files | ||
template: | ||
src: "{{ item }}" | ||
dest: "{{ fcrepo_home_dir }}/configs/{{ item }}" | ||
owner: "{{ fcrepo_user }}" | ||
group: "{{ fcrepo_user }}" | ||
with_items: | ||
- claw.cnd | ||
- fcrepo-config.xml | ||
notify: restart tomcat8 | ||
|
||
- name: Copy templated repository.json | ||
template: | ||
src: "{{ fcrepo_persistence }}-repository.json" | ||
dest: "{{ fcrepo_home_dir }}/configs/repository.json" | ||
owner: "{{ fcrepo_user }}" | ||
group: "{{ fcrepo_user }}" | ||
notify: restart tomcat8 | ||
|
||
- name: Copy fedora activemq configuration | ||
template: | ||
src: "{{ fcrepo_activemq_template }}" | ||
dest: "{{ fcrepo_config_dir }}/activemq.xml" | ||
owner: "{{ fcrepo_user }}" | ||
group: "{{ fcrepo_user }}" | ||
notify: restart tomcat8 | ||
|
||
# ADDED by dbernstein | ||
- name: Template out allowed external content paths | ||
template: | ||
src: allowed-external-content.txt.j2 | ||
dest: "{{ fcrepo_allowed_external_content_file }}" | ||
owner: "{{ fcrepo_user }}" | ||
group: "{{ fcrepo_user }}" | ||
notify: restart tomcat8 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
--- | ||
|
||
- name: Create Fedora DB (mysql) | ||
mysql_db: | ||
name: "{{ fcrepo_db_name }}" | ||
login_host: "{{ fcrepo_db_host }}" | ||
login_port: "{{ fcrepo_db_port }}" | ||
login_user: "{{ fcrepo_db_root_user }}" | ||
login_password: "{{ fcrepo_db_root_password }}" | ||
state: present | ||
register: fcrepo_db_exists | ||
|
||
- name: Create Fedora DB User (mysql) | ||
mysql_user: | ||
name: "{{ fcrepo_db_user }}" | ||
password: "{{ fcrepo_db_password }}" | ||
login_host: "{{ fcrepo_db_host }}" | ||
login_port: "{{ fcrepo_db_port }}" | ||
login_user: "{{ fcrepo_db_root_user }}" | ||
login_password: "{{ fcrepo_db_root_password }}" | ||
priv: "{{fcrepo_db_name}}.*:ALL" | ||
state: present | ||
host: "%" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
--- | ||
|
||
- name: Create Fedora DB User (pgsql) | ||
postgresql_user: | ||
name: "{{ fcrepo_db_user }}" | ||
password: "{{ fcrepo_db_password }}" | ||
login_host: "{{ fcrepo_db_host }}" | ||
login_port: "{{ fcrepo_db_port }}" | ||
login_user: "{{ fcrepo_db_root_user }}" | ||
login_password: "{{ fcrepo_db_root_password }}" | ||
|
||
- name: Create Fedora DB (pgsql) | ||
postgresql_db: | ||
name: "{{ fcrepo_db_name }}" | ||
login_host: "{{ fcrepo_db_host }}" | ||
login_port: "{{ fcrepo_db_port }}" | ||
login_user: "{{ fcrepo_db_root_user }}" | ||
login_password: "{{ fcrepo_db_root_password }}" | ||
state: present | ||
owner: "{{ fcrepo_db_user }}" | ||
register: fcrepo_db_exists |
Oops, something went wrong.