mirror of https://github.com/samply/bridgehead.git
Merge branch 'ehds2' of https://github.com/samply/bridgehead into ehds2
This commit is contained in:
commit
7a33b54416
46
README.md
46
README.md
|
@ -108,6 +108,8 @@ Site names should adhere to the following conventions:
|
||||||
|
|
||||||
### GitLab repository
|
### GitLab repository
|
||||||
|
|
||||||
|
You can skip this section if you are doing an ECDC/EHDS2 installation.
|
||||||
|
|
||||||
In order to be able to install, you will need to have your own repository in GitLab for your site's configuration settings. This allows automated updates of the Bridgehead software.
|
In order to be able to install, you will need to have your own repository in GitLab for your site's configuration settings. This allows automated updates of the Bridgehead software.
|
||||||
|
|
||||||
To request a new repository, please contact your research network administration or send an email to one of the project specific addresses:
|
To request a new repository, please contact your research network administration or send an email to one of the project specific addresses:
|
||||||
|
@ -130,7 +132,29 @@ During the installation, your Bridgehead will download your site's configuration
|
||||||
|
|
||||||
### Base Installation
|
### Base Installation
|
||||||
|
|
||||||
First, download your site specific configuration repository:
|
Clone the bridgehead repository:
|
||||||
|
```shell
|
||||||
|
sudo mkdir -p /srv/docker/
|
||||||
|
sudo git clone https://github.com/samply/bridgehead.git /srv/docker/bridgehead
|
||||||
|
```
|
||||||
|
|
||||||
|
If this is an ECDC/EHDS2 installation, switch to the ```ehds2``` branch and copy the configuration file to the required location:
|
||||||
|
```shell
|
||||||
|
cd
|
||||||
|
git clone https://github.com/samply/transFAIR.git
|
||||||
|
cd transFAIR
|
||||||
|
docker build -t samply/transfair --no-cache .
|
||||||
|
cd /srv/docker/bridgehead
|
||||||
|
sudo git checkout ehds2
|
||||||
|
sudo mkdir test data
|
||||||
|
sudo mkdir -p /etc/bridgehead/
|
||||||
|
sudo cp bbmri/modules/bbmri.conf /etc/bridgehead/
|
||||||
|
sudo vi /etc/bridgehead/bbmri.conf # Modify to include national node name and admin contact details
|
||||||
|
```
|
||||||
|
|
||||||
|
For an ECDC/EHDS2 installation, you will also need to copy your data in a comma-separated value (CSV) formatted file to ```/srv/docker/bridgehead/data```. Make sure it is readable by all. Only files with the ending ```.csv``` will be read in, all other files will be ignored.
|
||||||
|
|
||||||
|
If this is not an ECDC/EHDS2 installation, then download your site specific configuration repository:
|
||||||
```shell
|
```shell
|
||||||
sudo mkdir -p /etc/bridgehead/
|
sudo mkdir -p /etc/bridgehead/
|
||||||
sudo git clone <REPO_URL_FROM_EMAIL> /etc/bridgehead/
|
sudo git clone <REPO_URL_FROM_EMAIL> /etc/bridgehead/
|
||||||
|
@ -149,12 +173,6 @@ Pay special attention to:
|
||||||
- OPERATOR_LAST_NAME
|
- OPERATOR_LAST_NAME
|
||||||
- OPERATOR_EMAIL
|
- OPERATOR_EMAIL
|
||||||
|
|
||||||
Clone the bridgehead repository:
|
|
||||||
```shell
|
|
||||||
sudo mkdir -p /srv/docker/
|
|
||||||
sudo git clone https://github.com/samply/bridgehead.git /srv/docker/bridgehead
|
|
||||||
```
|
|
||||||
|
|
||||||
Then, run the installation script:
|
Then, run the installation script:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
|
@ -173,6 +191,20 @@ sudo ./bridgehead enroll <PROJECT>
|
||||||
|
|
||||||
... and follow the instructions on the screen. Please send your default Collection ID and the display name of your site together with the certificate request when you enroll. You should then be prompted to do the next step:
|
... and follow the instructions on the screen. Please send your default Collection ID and the display name of your site together with the certificate request when you enroll. You should then be prompted to do the next step:
|
||||||
|
|
||||||
|
Note: if you are doing an ECDC/EHDS2 installation, you will need to perform the Beam certificate signing yourself. Do not send an email to either of the email addreesses suggested by the bridgehead enroll procedure. Instead, log on to the VM where Beam is running and perform the following (you will need root permissions):
|
||||||
|
```shell
|
||||||
|
cd /srv/docker/beam-broker
|
||||||
|
sudo mkdir -p csr
|
||||||
|
sudo vi csr/ecdc-bridgehead-<national node name>.csr # Copy and paste the certificate printed during the enroll
|
||||||
|
sudo pki-scripts/managepki sign --csr-file csr/ecdc-bridgehead-<national node name>.csr --common-name=ecdc-bridgehead-<national node name>.broker.bbmri.samply.de
|
||||||
|
```
|
||||||
|
|
||||||
|
You can check that the Bridgehead has connected to Beam with the following command:
|
||||||
|
```shell
|
||||||
|
pki-scripts/managepki list
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
### Starting and stopping your Bridgehead
|
### Starting and stopping your Bridgehead
|
||||||
|
|
||||||
If you followed the above steps, your Bridgehead should already be configured to autostart (via systemd). If you would like to start/stop manually:
|
If you followed the above steps, your Bridgehead should already be configured to autostart (via systemd). If you would like to start/stop manually:
|
||||||
|
|
|
@ -0,0 +1,80 @@
|
||||||
|
### DO NOT EDIT THIS FILE DIRECTLY.
|
||||||
|
###
|
||||||
|
### This file is collaboratively managed by yourself and the CCP-IT team at DKFZ.
|
||||||
|
### The Bridgehead will pull it from git every night and restart if required.
|
||||||
|
### To make any changes (or review changes by CCP-IT), please login here:
|
||||||
|
### [URL_TO_SITE_SPECIFIC_GIT_REPO]
|
||||||
|
###
|
||||||
|
### DO NOT EDIT THIS FILE DIRECTLY.
|
||||||
|
|
||||||
|
### A note on Secrets:
|
||||||
|
###
|
||||||
|
### Variable with a value of <VAULT> will be fetched from a central component
|
||||||
|
### upon each bridgehead startup.
|
||||||
|
### Using the proven Vaultwarden password manager puts you in full control of
|
||||||
|
### who can read the passwords. In particular, as long as you don't declare a
|
||||||
|
### secret as shared ("SITE+DKFZ"), DKFZ cannot read these strings.
|
||||||
|
### We recommend putting credentials such as local passwords into the password
|
||||||
|
### store, not the git repo. Please keep your master password safe (vault.conf).
|
||||||
|
|
||||||
|
|
||||||
|
### Common Configuration of all Components
|
||||||
|
## This is the descriptive humanreadable name of your site (e.g. München LMU)
|
||||||
|
SITE_NAME=ECDC-Bridgehead-<National node>
|
||||||
|
## This is the id for your site used in machine to machine communication (e.g. muenchen-lmu)
|
||||||
|
SITE_ID=ecdc-bridgehead-<National node>
|
||||||
|
## This server's hostname, for access from other computers within your institution
|
||||||
|
## (e.g. mybridgehead.intern.myinstitution.org)
|
||||||
|
## Optional. If left empty, this is auto-generated via the `hostname` command.
|
||||||
|
HOST=
|
||||||
|
|
||||||
|
## Proxy Configuration
|
||||||
|
# leave empty if not applyable
|
||||||
|
# ex.: http://my-proxy-host:my-proxy-port
|
||||||
|
HTTP_PROXY_URL=
|
||||||
|
HTTP_PROXY_USERNAME=
|
||||||
|
HTTP_PROXY_PASSWORD=
|
||||||
|
HTTPS_PROXY_URL=$HTTP_PROXY_URL
|
||||||
|
HTTPS_PROXY_USERNAME=$HTTP_PROXY_USERNAME
|
||||||
|
HTTPS_PROXY_PASSWORD=$HTTP_PROXY_PASSWORD
|
||||||
|
|
||||||
|
## Maintenance Configuration
|
||||||
|
# By default, the bridgehead regularly performs certain housekeeping tasks such as pruning of old docker images to not run out of disk space.
|
||||||
|
# Set the following to false to opt-out. (Default: true)
|
||||||
|
#AUTO_HOUSEKEEPING=
|
||||||
|
|
||||||
|
### Connector Configuration
|
||||||
|
## The operator of the specific site.
|
||||||
|
OPERATOR_FIRST_NAME=
|
||||||
|
OPERATOR_LAST_NAME=
|
||||||
|
OPERATOR_EMAIL=
|
||||||
|
OPERATOR_PHONE=
|
||||||
|
## SMTP Server
|
||||||
|
# ex.: mailhost.intern.klinik.de
|
||||||
|
MAIL_HOST=
|
||||||
|
MAIL_PORT=
|
||||||
|
# ex.: no-reply@bridgehead.intern.klinik.de
|
||||||
|
MAIL_FROM_ADDRESS=
|
||||||
|
MAIL_FROM_NAME=
|
||||||
|
|
||||||
|
### Monitoring
|
||||||
|
# The apikey used for reporting to the central DKFZ monitoring. Leave empty to opt out.
|
||||||
|
MONITOR_APIKEY=
|
||||||
|
|
||||||
|
### Biobanking (BBMRI) specifics
|
||||||
|
## We consider BBMRI as BBMRI-ERIC (European) and German Biobank Node (Germany).
|
||||||
|
## Obviously, all German biobanks are by definition also European. Thus,
|
||||||
|
## any Bridgehead will by default connect to the BBMRI-ERIC services but not
|
||||||
|
## the national ones. We aim to proceed similarly for other BBMRI-ERIC National Nodes.
|
||||||
|
##
|
||||||
|
## The default values are correct for biobanks outside Germany.
|
||||||
|
## For a biobank inside Germany, set ENABLE_GBN=true.
|
||||||
|
# Connect to the European services, e.g. BBMRI-ERIC Sample Locator (Default: true)
|
||||||
|
ENABLE_ERIC=false
|
||||||
|
# Connect to the German services, e.g. Biobank Node Sample Locator (Default: false)
|
||||||
|
# Set this to true in German biobanks!
|
||||||
|
ENABLE_GBN=false
|
||||||
|
# Connect to the ECDC services, e.g. ECDC Sample Locator (Default: false)
|
||||||
|
# Set this to true in ECDC national nodes!
|
||||||
|
ENABLE_EHDS2=true
|
||||||
|
|
|
@ -8,15 +8,18 @@ if [ "${ENABLE_EHDS2}" == "true" ]; then
|
||||||
case "$ENVIRONMENT" in
|
case "$ENVIRONMENT" in
|
||||||
"production")
|
"production")
|
||||||
export EHDS2_BROKER_ID=broker.bbmri.samply.de
|
export EHDS2_BROKER_ID=broker.bbmri.samply.de
|
||||||
|
#export EHDS2_BROKER_ID=ecdc-vm-ehds-test1.swedencentral.cloudapp.azure.com
|
||||||
export EHDS2_ROOT_CERT=ehds2
|
export EHDS2_ROOT_CERT=ehds2
|
||||||
;;
|
;;
|
||||||
"test")
|
"test")
|
||||||
export EHDS2_BROKER_ID=broker.test.bbmri.samply.de
|
export EHDS2_BROKER_ID=broker.test.bbmri.samply.de
|
||||||
|
#export EHDS2_BROKER_ID=ecdc-vm-ehds-test1.swedencentral.cloudapp.azure.com
|
||||||
export EHDS2_ROOT_CERT=ehds2.test
|
export EHDS2_ROOT_CERT=ehds2.test
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
report_error 6 "Environment \"$ENVIRONMENT\" is unknown. Assuming production. FIX THIS!"
|
report_error 6 "Environment \"$ENVIRONMENT\" is unknown. Assuming production. FIX THIS!"
|
||||||
export EHDS2_BROKER_ID=broker.bbmri.samply.de
|
export EHDS2_BROKER_ID=broker.bbmri.samply.de
|
||||||
|
#export EHDS2_BROKER_ID=ecdc-vm-ehds-test1.swedencentral.cloudapp.azure.com
|
||||||
export EHDS2_ROOT_CERT=ehds2
|
export EHDS2_ROOT_CERT=ehds2
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
|
@ -17,7 +17,7 @@ do
|
||||||
done
|
done
|
||||||
|
|
||||||
SUPPORT_EMAIL=$ERIC_SUPPORT_EMAIL
|
SUPPORT_EMAIL=$ERIC_SUPPORT_EMAIL
|
||||||
BROKER_URL_FOR_PREREQ="${ERIC_BROKER_URL:-$GBN_BROKER_URL}"
|
BROKER_URL_FOR_PREREQ="https://ecdc-vm-ehds-test1.swedencentral.cloudapp.azure.com"
|
||||||
|
|
||||||
if [ -n "$GBN_SUPPORT_EMAIL" ]; then
|
if [ -n "$GBN_SUPPORT_EMAIL" ]; then
|
||||||
SUPPORT_EMAIL=$GBN_SUPPORT_EMAIL
|
SUPPORT_EMAIL=$GBN_SUPPORT_EMAIL
|
||||||
|
|
Loading…
Reference in New Issue