Skip to content
Snippets Groups Projects
Commit 62dce5d6 authored by Dorian Merz's avatar Dorian Merz
Browse files

Merge branch 'instance/fid' into instance/fid_adlr

parents 008cfeb9 99ed7bc1
No related merge requests found
Showing
with 1919 additions and 585 deletions
...@@ -18,4 +18,6 @@ import/solrmarc.log* ...@@ -18,4 +18,6 @@ import/solrmarc.log*
/auth.json /auth.json
/core /core
/.env /.env
/lessphp_*.list /lessphp_*.list
\ No newline at end of file /docker-compose.override.yml
/themes/finc-fid-*
\ No newline at end of file
{ {
"name": "vufind/vufind", "name": "finc/fid-vufind",
"description": "A flexible discovery layer.", "description": "finc fid vufind",
"authors": [ "authors": [
{ {
"name": "Demian Katz", "name": "Demian Katz",
"email": "demian.katz@villanova.edu" "email": "demian.katz@villanova.edu"
},
{
"name": "Sebastian Kehr",
"email": "kehr@ub.uni-leipzig.de"
} }
], ],
"license": "GPL-2.0", "license": "GPL-2.0",
"config": { "config": {
"platform": { "platform": {
"php": "7.0.8" "php": "7.1",
"ext-gd": "7.1",
"ext-soap": "7.1",
"ext-json": "7.1"
} }
}, },
"repositories": [
{
"type": "vcs",
"url": "https://github.com/demiankatz/zend-servicemanager"
}
],
"require": { "require": {
"php": ">=7.0.8", "php": "^7.1",
"ext-json": "*",
"ahand/mobileesp": "dev-master", "ahand/mobileesp": "dev-master",
"cap60552/php-sip2": "1.0.0", "cap60552/php-sip2": "1.0.0",
"endroid/qr-code": "2.5.0", "endroid/qr-code": "2.5.0",
...@@ -79,7 +81,8 @@ ...@@ -79,7 +81,8 @@
"zendframework/zendservice-recaptcha": "3.1.0", "zendframework/zendservice-recaptcha": "3.1.0",
"zf-commons/zfc-rbac": "2.6.3", "zf-commons/zfc-rbac": "2.6.3",
"sabre/vobject": "3.5.3", "sabre/vobject": "3.5.3",
"finc/rules-evaluator": "v0.0.3" "finc/rules-evaluator": "v0.0.3",
"finc/fid-core-module": "dev-master#85d4ca9"
}, },
"require-dev": { "require-dev": {
"behat/mink": "1.7.1", "behat/mink": "1.7.1",
...@@ -91,12 +94,19 @@ ...@@ -91,12 +94,19 @@
"sebastian/phpcpd": "3.0.1", "sebastian/phpcpd": "3.0.1",
"squizlabs/php_codesniffer": "3.4.0" "squizlabs/php_codesniffer": "3.4.0"
}, },
"minimum-stability": "dev",
"prefer-stable": true,
"scripts": { "scripts": {
"phing-install-dependencies": "phing installsolr installswaggerui", "phing-install-dependencies": "phing installsolr installswaggerui",
"phpcs-finc": [ "phpcs-finc": [
"vendor/bin/phpcs --standard=tests/finc/phpcs.xml" "vendor/bin/phpcs --standard=tests/finc/phpcs.xml"
], ],
"post-install-cmd": "@phing-install-dependencies", "post-install-cmd": [
"post-update-cmd": "@phing-install-dependencies" "@copy-themes"
],
"post-update-cmd": [
"@copy-themes"
],
"copy-themes": "php devops/composer/themes.php"
} }
} }
This diff is collapsed.
...@@ -22,6 +22,19 @@ if ($localModules = getenv('VUFIND_LOCAL_MODULES')) { ...@@ -22,6 +22,19 @@ if ($localModules = getenv('VUFIND_LOCAL_MODULES')) {
} }
} }
/** Begin of temporarily necessary adjustments. */
shell_exec('php devops/composer/themes.php');
// Append custom modules.
array_push($modules, ...[
'Zend\Validator',
'Zend\Serializer',
'finc',
'finc\VuFindHttpPsrCompat',
'finc\SymfonySerializerZendBridge',
'finc\Fid\Core',
]);
/** End of temporarily necessary adjustments. */
// Set up cache directory (be sure to keep separate cache for CLI vs. web and // Set up cache directory (be sure to keep separate cache for CLI vs. web and
// to account for potentially variant environment settings): // to account for potentially variant environment settings):
$baseDir = ($local = getenv('VUFIND_LOCAL_DIR')) ? $local : 'data'; $baseDir = ($local = getenv('VUFIND_LOCAL_DIR')) ? $local : 'data';
......
*
!.gitignore
\ No newline at end of file
/packages
!/packages/*
<?php
$force = in_array('--force', $argv);
$baseDir = realpath(__DIR__ . '/../..');
/** @noinspection PhpIncludeInspection */
require "$baseDir/vendor/autoload.php";
$fs = new Symfony\Component\Filesystem\Filesystem();
$config = json_decode(file_get_contents("$baseDir/composer.lock"));
foreach ($config->packages as $package) {
$themes = $package->extra->vufind->themes ?? [];
foreach ($themes as $themeDir => $themeName) {
if ($fs->exists($targetDir = "$baseDir/themes/$themeName") && $force) {
$fs->remove($targetDir);
}
if (!$fs->exists($targetDir)) {
$sourceDir = "$baseDir/vendor/$package->name/$themeDir";
$fs->mirror($sourceDir, $targetDir);
echo "Copied $sourceDir to $targetDir\n";
}
foreach (glob("$targetDir/languages/*", GLOB_ONLYDIR) as $dir) {
$textDomainDir = "$baseDir/languages/" . basename($dir);
if (!$fs->exists($textDomainDir)) {
$fs->mkdir($textDomainDir);
echo "Created empty directory at $textDomainDir\n";
}
}
}
}
clearstatcache();
\ No newline at end of file
# Copyright (C) 2019 Leipzig University Library
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# @author Sebastian Kehr <kehr@ub.uni-leipzig.de>
# @license https://opensource.org/licenses/GPL-3.0 GNU GPLv3
#!/usr/bin/env sh
set -e
if [ "$1" = "create" ]; then
docker network create fid -d bridge --subnet=10.110.0.0/24 --gateway=10.110.0.1 1>/dev/null
echo "Created fid network."
elif [ "$1" = "remove" ]; then
docker network rm fid 1>/dev/null
echo "Removed fid network."
else
echo "Usage: $0 create | remove"; exit 1
fi
\ No newline at end of file
FROM composer:1.8.4
COPY entrypoint.sh /entrypoint.sh
ENTRYPOINT ["/bin/sh", "/entrypoint.sh"]
\ No newline at end of file
#!/usr/bin/env sh
mkdir -p ${COMPOSER_HOME:=/tmp};
chown -R "${OWNER:=$(stat -c "%u:%g" .)}" $COMPOSER_HOME
echo "composer:x:$OWNER:composer,,,:$COMPOSER_HOME:/bin/sh" >> /etc/passwd
COMMAND="cd $(pwd) && COMPOSER_HOME=$COMPOSER_HOME TINI_SUBREAPER= /docker-entrypoint.sh $@"
su composer -c "$COMMAND"
\ No newline at end of file
version: '2.4'
services:
php:
networks:
- default
- fid
extra_hosts:
- fid:10.110.0.2
networks:
fid:
name: fid
external: true
\ No newline at end of file
version: '2.4'
# Use this file for local overrides and extensions to docker-compose.yml.
services:
php:
<<: &volumes
volumes:
# - path/to/core-module:/usr/local/vufind/vendor/finc/fid-core-module
# - path/to/core-module/res/mixins/core:/usr/local/vufind/themes/finc-fid-core
# - path/to/core-module/res/mixins/registration:/usr/local/vufind/themes/finc-fid-registration
httpd:
<<: *volumes
grunt:
<<: *volumes
\ No newline at end of file
version: '2' version: '2.4'
services: services:
composer:
build: devops/docker/composer
working_dir: /usr/local/vufind
volumes:
- .:/usr/local/vufind:z
- composer-data:/tmp
- ${SSH_AUTH_SOCK}:/ssh-agent
- $HOME/.ssh/known_hosts:/etc/ssh/ssh_known_hosts
environment:
SSH_AUTH_SOCK: /ssh-agent
command: echo "Skipping composer."
php: php:
image: ubleipzig/vufind-php:7.2-8-debug image: ubleipzig/vufind-php:7.1-8-debug
volumes: volumes:
- ./:/usr/local/vufind - ./:/usr/local/vufind
environment: environment:
VUFIND_LOCAL_DIR: /usr/local/vufind/fid_adlr/dev VUFIND_LOCAL_DIR: /usr/local/vufind/fid_adlr/dev
VUFIND_CACHE_DIR: /usr/local/vufind/data/cache VUFIND_CACHE_DIR: /usr/local/vufind/data/cache
VUFIND_LOCAL_MODULES: finc
VUFIND_ENV: development VUFIND_ENV: development
PHP_IDE_CONFIG: serverName=finc-fid-frontend
XDEBUG_CONFIG: >-
remote_autostart=1
remote_mode=req
remote_handler=dbgp
remote_connect_back=0
remote_port=9000
remote_enable=1
remote_host=10.111.0.1
httpd: httpd:
image: ubleipzig/vufind-httpd:2.4-2 image: ubleipzig/vufind-httpd:2.4-2
ports: ports:
- 80:80 - 127.0.0.1:11100:80
volumes: volumes:
- ./:/usr/local/vufind:ro - ./:/usr/local/vufind:ro
- ./data/cache:/var/cache/vufind:ro - ./data/cache:/var/cache/vufind:ro
...@@ -24,7 +45,7 @@ services: ...@@ -24,7 +45,7 @@ services:
db: db:
image: mariadb:10.2 image: mariadb:10.2
ports: ports:
- 127.0.0.1:3306:3306 - 127.0.0.1:11101:3306
volumes: volumes:
- mariadb-data:/var/lib/mysql:z - mariadb-data:/var/lib/mysql:z
environment: environment:
...@@ -36,8 +57,8 @@ services: ...@@ -36,8 +57,8 @@ services:
smtp: smtp:
image: useltmann/mailcollect:8-1 image: useltmann/mailcollect:8-1
ports: ports:
- '143:143' - 25:25
- '25:25' - 143:143
volumes: volumes:
- mail-data:/home/dev/Maildir:z - mail-data:/home/dev/Maildir:z
...@@ -45,23 +66,13 @@ services: ...@@ -45,23 +66,13 @@ services:
image: ubleipzig/vufind-php:7.2-8-debug image: ubleipzig/vufind-php:7.2-8-debug
volumes: volumes:
- ./:/usr/local/vufind:z - ./:/usr/local/vufind:z
- npm-cache:/home/www-data/.npm - npm-data:/home/www-data/.npm
environment: environment:
NODE_ENV: development NODE_ENV: development
command: npm install && node_modules/.bin/grunt watch command: npm install && node_modules/.bin/grunt watch
composer:
image: ubleipzig/vufind-php:7.2-8-debug
volumes:
- ./:/usr/local/vufind:z
- composer-cache:/home/www-data/.composer
- ${SSH_AUTH_SOCK}:/ssh-agent
environment:
SSH_AUTH_SOCK: /ssh-agent
command: phing composer -Dcomposer_extra_params=--no-scripts
autoconfig: autoconfig:
image: ubleipzig/vufind-php:7.2-8-debug image: ubleipzig/vufind-php:7.1-8-debug
volumes: volumes:
- ./:/usr/local/vufind:z - ./:/usr/local/vufind:z
environment: environment:
...@@ -72,28 +83,30 @@ services: ...@@ -72,28 +83,30 @@ services:
VF_config_ini__Authentication__hash_passwords: "true" VF_config_ini__Authentication__hash_passwords: "true"
VF_config_ini__Authentication__encrypt_ils_password: "true" VF_config_ini__Authentication__encrypt_ils_password: "true"
VF_config_ini__Database__database: mysql://vufind:vufindpw@db/vufind VF_config_ini__Database__database: mysql://vufind:vufindpw@db/vufind
VF_config_ini__Index__url: http://172.18.113.12:8080/solr VF_config_ini__Index__url: https://index.ub.uni-leipzig.de/solr
VF_config_ini__Mail__host: smtp VF_config_ini__Mail__host: smtp
VF_config_ini__Mail__port: 25 VF_config_ini__Mail__port: 25
VF_config_ini__Mail__username: dev VF_config_ini__Mail__username: dev
VF_config_ini__Mail__pasword: dev VF_config_ini__Mail__pasword: dev
command: sleep 10 && autoconfig vufind deploy entrypoint: >
sh -c 'sh -c "exit 1";
while [ $$? -eq 1 ]; do nc -zv db:3306 &> /dev/null; done;
/docker-entrypoint $$0 $$@'
command: autoconfig vufind deploy
depends_on: depends_on:
- db - db
volumes: volumes:
composer-cache: {} npm-data: {}
npm-cache: {}
mail-data: {} mail-data: {}
mariadb-data: {} mariadb-data: {}
composer-data: {}
networks: networks:
default: default:
driver_opts:
com.docker.network.bridge.name: vufind-bridge
driver: bridge driver: bridge
ipam: ipam:
driver: default driver: default
config: config:
- subnet: 10.2.0.0/16 - subnet: 10.111.0.0/24
gateway: 10.2.0.1 gateway: 10.111.0.1
\ No newline at end of file
/dev
\ No newline at end of file
...@@ -2,21 +2,21 @@ ...@@ -2,21 +2,21 @@
;##################### DO NOT DELETE THIS HEADER #################### ;##################### DO NOT DELETE THIS HEADER ####################
;################### Leipzig University Library © 2015 ############## ;################### Leipzig University Library © 2015 ##############
; ;
; This is the default ALPHA-INI-file and inherits ; This is the ISIL-instance-specific default INI-file and inherits
; all the settings from the INI-file defined in [Parent_Config] which ; all the settings from the INI-file defined in [Parent_Config] which
; points to the default INI-file located in the folder vufind2/local ; points to the default INI-file located in the folder vufind2/local
; ;
[Parent_Config] [Parent_Config]
relative_path = ../../../config/vufind/FincILS.ini relative_path = ../../../local/config/vufind/Collection.ini
; A comma-separated list of config sections from the parent which should be ; A comma-separated list of config sections from the parent which should be
; completely overwritten by the equivalent sections in this configuration; ; completely overwritten by the equivalent sections in this configuration;
; any sections not listed here will be merged on a section-by-section basis. ; any sections not listed here will be merged on a section-by-section basis.
;override_full_sections = "Languages,AlphaBrowse_Types" ;override_full_sections = ""
; ;
; Add ALPHA-specific customization after this header. ; Add instance-specific customization after this header.
; ;
;##################### DO NOT DELETE THIS HEADER #################### ;##################### DO NOT DELETE THIS HEADER ####################
;#################################################################### ;####################################################################
\ No newline at end of file
...@@ -2,21 +2,21 @@ ...@@ -2,21 +2,21 @@
;##################### DO NOT DELETE THIS HEADER #################### ;##################### DO NOT DELETE THIS HEADER ####################
;################### Leipzig University Library © 2015 ############## ;################### Leipzig University Library © 2015 ##############
; ;
; This is the default ALPHA-INI-file and inherits ; This is the ISIL-instance-specific default INI-file and inherits
; all the settings from the INI-file defined in [Parent_Config] which ; all the settings from the INI-file defined in [Parent_Config] which
; points to the default INI-file located in the folder vufind2/local ; points to the default INI-file located in the folder vufind2/local
; ;
[Parent_Config] [Parent_Config]
relative_path = ../../../config/vufind/DAIA.ini relative_path = ../../../local/config/vufind/DAIA.ini
; A comma-separated list of config sections from the parent which should be ; A comma-separated list of config sections from the parent which should be
; completely overwritten by the equivalent sections in this configuration; ; completely overwritten by the equivalent sections in this configuration;
; any sections not listed here will be merged on a section-by-section basis. ; any sections not listed here will be merged on a section-by-section basis.
;override_full_sections = "Languages,AlphaBrowse_Types" ;override_full_sections = ""
; ;
; Add ALPHA-specific customization after this header. ; Add instance-specific customization after this header.
; ;
;##################### DO NOT DELETE THIS HEADER #################### ;##################### DO NOT DELETE THIS HEADER ####################
;#################################################################### ;####################################################################
\ No newline at end of file
;####################################################################
;##################### DO NOT DELETE THIS HEADER ####################
;################### Leipzig University Library © 2015 ##############
;
; This is the ISIL-instance-specific default INI-file and inherits
; all the settings from the INI-file defined in [Parent_Config] which
; points to the default INI-file located in the folder vufind2/local
;
[Parent_Config]
relative_path = ../../../local/config/vufind/EmailProfiles.ini
; A comma-separated list of config sections from the parent which should be
; completely overwritten by the equivalent sections in this configuration;
; any sections not listed here will be merged on a section-by-section basis.
;override_full_sections = ""
;
; Add instance-specific customization after this header.
;
;##################### DO NOT DELETE THIS HEADER ####################
;####################################################################
\ No newline at end of file
...@@ -2,13 +2,13 @@ ...@@ -2,13 +2,13 @@
;##################### DO NOT DELETE THIS HEADER #################### ;##################### DO NOT DELETE THIS HEADER ####################
;################### Leipzig University Library © 2015 ############## ;################### Leipzig University Library © 2015 ##############
; ;
; This is the default ALPHA-INI-file and inherits ; This is the ISIL-instance-specific default INI-file and inherits
; all the settings from the INI-file defined in [Parent_Config] which ; all the settings from the INI-file defined in [Parent_Config] which
; points to the default INI-file located in the folder vufind2/local ; points to the default INI-file located in the folder vufind2/local
; ;
[Parent_Config] [Parent_Config]
relative_path = ../../../config/vufind/Amsl.ini relative_path = ../../../local/config/vufind/HierarchyDefault.ini
; A comma-separated list of config sections from the parent which should be ; A comma-separated list of config sections from the parent which should be
; completely overwritten by the equivalent sections in this configuration; ; completely overwritten by the equivalent sections in this configuration;
...@@ -16,7 +16,7 @@ relative_path = ../../../config/vufind/Amsl.ini ...@@ -16,7 +16,7 @@ relative_path = ../../../config/vufind/Amsl.ini
;override_full_sections = "Languages,AlphaBrowse_Types" ;override_full_sections = "Languages,AlphaBrowse_Types"
; ;
; Add ALPHA-specific customization after this header. ; Add instance-specific customization after this header.
; ;
;##################### DO NOT DELETE THIS HEADER #################### ;##################### DO NOT DELETE THIS HEADER ####################
;#################################################################### ;####################################################################
\ No newline at end of file
{}
\ No newline at end of file
;####################################################################
;##################### DO NOT DELETE THIS HEADER ####################
;################### Leipzig University Library © 2015 ##############
;
; This is the ISIL-instance-specific default INI-file and inherits
; all the settings from the INI-file defined in [Parent_Config] which
; points to the default INI-file located in the folder vufind2/local
;
[Parent_Config]
relative_path = ../../../local/config/vufind/SolrAI.ini
; A comma-separated list of config sections from the parent which should be
; completely overwritten by the equivalent sections in this configuration;
; any sections not listed here will be merged on a section-by-section basis.
;override_full_sections = "Languages,AlphaBrowse_Types"
;
; Add instance-specific customization after this header.
;
;##################### DO NOT DELETE THIS HEADER ####################
;####################################################################
[General]
baseUrl = "https://ai.ub.uni-leipzig.de/blob?%s"
\ No newline at end of file
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment