Giter Club home page Giter Club logo

epos-msl's Introduction

epos-msl

Ansible scripts for automatic deployment of EPOS-MSL.

Requirements

Control machine requirements

Managed node requirements

Deploying EPOS-MSL development instance

Configure the virtual machine for development:

vagrant up

On a Windows host first SSH into the Ansible controller virtual machine (skip this step on GNU/Linux or macOS):

vagrant ssh epos-msl-controller
cd ~/epos-msl

Deploy EPOS-MSL to development virtual machine:

ansible-playbook playbook.yml

Add following host to /etc/hosts (GNU/Linux or macOS) or %SystemRoot%\System32\drivers\etc\hosts (Windows):

192.168.60.10 epos-msl.ckan.test

Upgrading EPOS-MSL instance

Upgrading the EPOS-MSL development instance to the latest version can be done by running the Ansible playbooks again.

On a Windows host first SSH into the Ansible controller virtual machine (skip this step on GNU/Linux or macOS):

vagrant ssh controller
cd ~/epos-msl

Upgrade Ansible scripts:

git pull

Upgrade EPOS-MSL instance:

ansible-playbook playbook.yml

Database creation/seeding for the MSL API

You currently need to manually trigger creation and seeding of the MSL API database, as well as linking its storage space.

Run the following commands in /var/www/msl_api after deploying the application using Ansible:

/usr/bin/php8.0 artisan migrate
/usr/bin/php8.0 artisan db:seed
/usr/bin/php8.0 artisan storage:link

Configuration

The main configuration settings are:

Settingi Meaning
epos_msl_fqdn fully qualified domain name (FQDN) of the catalog, e.g. epos-catalog.mydomain.nl
ckan_database_password password for the CKAN database (can be randomly generated with e.g. pwgen -n 16)
ckan_admin_password password for the ckanadmin account (can be randomly generated with e.g. pwgen -n 16)
msl_api_database_password password for the MSL API database (can be randomly generated with e.g. pwgen -n 16)
msl_api_app_url application URL for the MSL API web service, e.g. https://epos-catalog.mydomain.nl/webservice
msl_api_asset_url asset URL for the MSL API web service, e.g. https://epos-catalog.mydomain.nl/webservice
ckan_api_token the MSL API uses this value to authenticate to the CKAN API. this should currently be the API key (not API token!) of the ckanadmin account. The current way to use this field is: deploy the catalog using a dummy value for this parameter, log in on CKAN using the ckanadmin account, generate an API key, replace the dummy value in the host_vars file with the real API key, and run the playbook a second time.
msl_api_app_key the MSL API application key. The current way to configure this is to deploy the application, generate the app key by running /usr/bin/php8.0 artisan key:generate in /var/www/msl_api. Finally copy the generated key in /var/www/msl_api/.env to the host_vars file.

CKAN catalog

EPOS-MSL is based on CKAN. It uses several modules / extensions to customize CKAN for the EPOS catalog.

MSL CKAN extension

The MSL CKAN core extension contains specific settings and configuration for the EPOS MSL catalog.

MSL CKAN Util extension

The MSL CKAN util extension contains functionality used in the EPOS catalog that can be reused in other catalogs, specifically custom facets and repeating fields.

License

This project is licensed under the GPL-v3 license. The full license can be found in LICENSE.

epos-msl's People

Contributors

harmdr avatar lwesterhof avatar stsnel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.