mirror of
https://github.com/Cian-H/iform-invenio.git
synced 2025-12-23 04:41:58 +00:00
Reorganized env and attempted to add SAML
This commit is contained in:
@@ -1,12 +1,12 @@
|
|||||||
FROM ghcr.io/front-matter/invenio-rdm-starter:latest
|
FROM ghcr.io/front-matter/invenio-rdm-starter:v12.0.18.0
|
||||||
|
|
||||||
ARG WHEEL
|
|
||||||
|
|
||||||
RUN /opt/invenio/.venv/bin/python -m ensurepip
|
RUN /opt/invenio/.venv/bin/python -m ensurepip
|
||||||
RUN /opt/invenio/.venv/bin/python -m pip install --upgrade pip
|
RUN /opt/invenio/.venv/bin/python -m pip install --upgrade pip
|
||||||
RUN /opt/invenio/.venv/bin/python -m pip install invenio-theme-iform==2025.5.20
|
RUN /opt/invenio/.venv/bin/python -m pip install invenio-theme-iform==2025.6.3
|
||||||
RUN /opt/invenio/.venv/bin/python -m pip uninstall -y pip
|
RUN /opt/invenio/.venv/bin/python -m pip uninstall -y pip
|
||||||
RUN invenio collect
|
RUN invenio collect
|
||||||
|
RUN apt update -y
|
||||||
|
RUN apt upgrade -y
|
||||||
RUN apt install -y npm
|
RUN apt install -y npm
|
||||||
RUN invenio webpack buildall
|
RUN invenio webpack buildall
|
||||||
RUN apt remove -y npm
|
RUN apt remove -y npm
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ services:
|
|||||||
- "8443:443"
|
- "8443:443"
|
||||||
volumes:
|
volumes:
|
||||||
- caddy_data:/data
|
- caddy_data:/data
|
||||||
- ./caddy/${INVENIO_ENV}:/etc/caddy
|
- ./caddy/${COMPOSE_PROFILES}:/etc/caddy
|
||||||
- site_data:/var/www:ro
|
- site_data:/var/www:ro
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
labels:
|
||||||
@@ -24,91 +24,57 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- uploaded_data:/opt/invenio/var/instance/data
|
- uploaded_data:/opt/invenio/var/instance/data
|
||||||
- archived_data:/opt/invenio/var/instance/archive
|
- archived_data:/opt/invenio/var/instance/archive
|
||||||
- ./invenio_assets:/opt/invenio/var/instance/static/custom_assets # Add static assets for theming
|
- site_data:/opt/invenio/var/instance/
|
||||||
- ./invenio.cfg:/opt/invenio/var/instance/invenio.cfg # Override the config with our custom one
|
# - ./invenio_assets:/opt/invenio/var/instance/static/custom_assets # Add static assets for theming
|
||||||
|
# - ./invenio.cfg:/opt/invenio/var/instance/invenio.cfg # Override the config with our custom one
|
||||||
environment:
|
environment:
|
||||||
# Flask
|
- INVENIO_THEME_LOGO
|
||||||
- INVENIO_APP_ALLOWED_HOSTS=${INVENIO_APP_ALLOWED_HOSTS:-['0.0.0.0', 'localhost', '127.0.0.1']}
|
- INVENIO_THEME_FRONTPAGE_TITLE
|
||||||
|
- INVENIO_THEME_SITENAME
|
||||||
# Flask-SQLAlchemy
|
- INVENIO_THEME_FRONTPAGE_SUBTITLE
|
||||||
- INVENIO_SQLALCHEMY_DATABASE_URI=postgresql+psycopg2://${POSTGRES_USER:-inveniordm}:${POSTGRES_PASSWORD:-inveniordm}@db/${POSTGRES_DB:-inveniordm}
|
- INVENIO_THEME_SHOW_FRONTPAGE_INTRO_SECTION
|
||||||
|
- INVENIO_SECURITY_REGISTERABLE
|
||||||
# Flask-Babel
|
- INVENIO_SQLALCHEMY_DATABASE_URI=postgresql+psycopg2://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db/${POSTGRES_DB}
|
||||||
- INVENIO_BABEL_DEFAULT_LOCALE=${INVENIO_BABEL_DEFAULT_LOCALE:-en}
|
- INVENIO_CACHE_TYPE
|
||||||
- INVENIO_BABEL_DEFAULT_TIMEZONE=${INVENIO_BABEL_DEFAULT_TIMEZONE:-UTC}
|
- INVENIO_CACHE_REDIS_URL
|
||||||
|
- INVENIO_ACCOUNTS_SESSION_REDIS_URL
|
||||||
# Invenio-App
|
- INVENIO_CELERY_RESULT_BACKEND
|
||||||
- INVENIO_CACHE_TYPE=${INVENIO_CACHE_TYPE:-redis}
|
- INVENIO_RATELIMIT_STORAGE_URL
|
||||||
- INVENIO_CACHE_REDIS_URL=${INVENIO_CACHE_REDIS_URL:-redis://cache:6379/0}
|
- INVENIO_COMMUNITIES_IDENTITIES_CACHE_REDIS_URL
|
||||||
- INVENIO_ACCOUNTS_SESSION_REDIS_URL=${INVENIO_ACCOUNTS_SESSION_REDIS_URL:-redis://cache:6379/1}
|
- INVENIO_BROKER_URL
|
||||||
- INVENIO_CELERY_RESULT_BACKEND=${INVENIO_CELERY_RESULT_BACKEND:-redis://cache:6379/2}
|
- INVENIO_CELERY_BROKER_URL
|
||||||
- INVENIO_RATELIMIT_STORAGE_URL=${INVENIO_RATELIMIT_STORAGE_URL:-redis://cache:6379/3}
|
- INVENIO_WSGI_PROXIES
|
||||||
- INVENIO_COMMUNITIES_IDENTITIES_CACHE_REDIS_URL=${INVENIO_COMMUNITIES_IDENTITIES_CACHE_REDIS_URL:-redis://cache:6379/4}
|
- INVENIO_SITE_UI_URL
|
||||||
- INVENIO_BROKER_URL=${INVENIO_BROKER_URL:-redis://cache:6379/5}
|
- INVENIO_SITE_API_URL
|
||||||
- INVENIO_CELERY_BROKER_URL=${INVENIO_BROKER_URL:-redis://cache:6379/5}
|
- INVENIO_DATACITE_ENABLED
|
||||||
|
- INVENIO_DATACITE_USERNAME
|
||||||
- INVENIO_WSGI_PROXIES=4
|
- INVENIO_DATACITE_PASSWORD
|
||||||
- INVENIO_SECRET_KEY=${INVENIO_SECRET_KEY:-changeme}
|
- INVENIO_DATACITE_PREFIX
|
||||||
|
- INVENIO_DATACITE_TEST_MODE
|
||||||
# Invenio-I18N
|
- INVENIO_DATACITE_DATACENTER_SYMBOL
|
||||||
# TODO: fix tuple parsing
|
- INVENIO_RDM_ALLOW_METADATA_ONLY_RECORDS
|
||||||
# - INVENIO_I18N_LANGUAGES=${INVENIO_I18N_LANGUAGES:-'[("de", _("German"))]'}
|
- INVENIO_RDM_ALLOW_RESTRICTED_RECORDS
|
||||||
|
- INVENIO_RDM_ALLOW_EXTERNAL_DOI_VERSIONING
|
||||||
# Invenio-Theme
|
- INVENIO_RDM_CITATION_STYLES_DEFAULT
|
||||||
- INVENIO_THEME_LOGO=${INVENIO_THEME_LOGO:-images/invenio-rdm-white.svg}
|
- INVENIO_RDM_DEFAULT_CITATION_STYLE
|
||||||
- INVENIO_THEME_SITENAME=${INVENIO_THEME_SITENAME:-InvenioRDM Starter}
|
- INVENIO_MAIL_SUPPRESS_SEND
|
||||||
- INVENIO_THEME_FRONTPAGE_TITLE=${INVENIO_THEME_FRONTPAGE_TITLE:-InvenioRDM Starter}
|
- INVENIO_SECURITY_EMAIL_SENDER
|
||||||
- INVENIO_THEME_FRONTPAGE_SUBTITLE=${INVENIO_THEME_FRONTPAGE_SUBTITLE:-A starter project for the turn-key research data management repository.}
|
- INVENIO_ACCOUNTS_LOCAL_LOGIN_ENABLED
|
||||||
- INVENIO_THEME_SHOW_FRONTPAGE_INTRO_SECTION=False
|
- INVENIO_GITHUB_APP_CREDENTIALS
|
||||||
|
- INVENIO_OAISERVER_ID_PREFIX
|
||||||
# Invenio-Records-Resources
|
- INVENIO_FILES_REST_STORAGE_FACTORY
|
||||||
- INVENIO_SITE_UI_URL=${INVENIO_SITE_UI_URL:-https://localhost}
|
- INVENIO_S3_ENDPOINT_URL
|
||||||
- INVENIO_SITE_API_URL=${INVENIO_SITE_API_URL:-https://localhost/api}
|
- INVENIO_S3_ACCESS_KEY_ID
|
||||||
|
- INVENIO_S3_SECRET_ACCESS_KEY
|
||||||
# Invenio-RDM-Records
|
- INVENIO_S3_BUCKET_NAME
|
||||||
- INVENIO_DATACITE_ENABLED=${INVENIO_DATACITE_ENABLED:-False}
|
- INVENIO_SEARCH_HOSTS
|
||||||
- INVENIO_DATACITE_USERNAME=${INVENIO_DATACITE_USERNAME:-}
|
- INVENIO_SEARCH_INDEX_PREFIX
|
||||||
- INVENIO_DATACITE_PASSWORD=${INVENIO_DATACITE_PASSWORD:-}
|
- INVENIO_LOGGING_CONSOLE_LEVEL
|
||||||
- INVENIO_DATACITE_PREFIX=${INVENIO_DATACITE_PREFIX:-}
|
- INVENIO_APP_ALLOWED_HOSTS
|
||||||
- INVENIO_DATACITE_TEST_MODE=${INVENIO_DATACITE_TEST_MODE:-True}
|
- INVENIO_ENV=${COMPOSE_PROFILES}
|
||||||
- INVENIO_DATACITE_DATACENTER_SYMBOL=${INVENIO_DATACITE_DATACENTER_SYMBOL:-}
|
- FLASK_ENV=${COMPOSE_PROFILES}
|
||||||
|
- NODE_ENV=${COMPOSE_PROFILES}
|
||||||
- INVENIO_RDM_ALLOW_METADATA_ONLY_RECORDS=${INVENIO_RDM_ALLOW_METADATA_ONLY_RECORDS:-True}
|
- FLASK_DEBUG
|
||||||
- INVENIO_RDM_ALLOW_RESTRICTED_RECORDS=${INVENIO_RDM_ALLOW_RESTRICTED_RECORDS:-True}
|
|
||||||
- INVENIO_RDM_ALLOW_EXTERNAL_DOI_VERSIONING=${INVENIO_RDM_ALLOW_EXTERNAL_DOI_VERSIONING:-True}
|
|
||||||
|
|
||||||
- INVENIO_RDM_CITATION_STYLES_DEFAULT=${INVENIO_RDM_CITATION_STYLES_DEFAULT:-apa}
|
|
||||||
- INVENIO_SECURITY_EMAIL_SENDER=${INVENIO_SECURITY_EMAIL_SENDER:-}
|
|
||||||
# TODO: fix tuple parsing
|
|
||||||
# - INVENIO_RDM_CITATION_STYLES=${INVENIO_RDM_CITATION_STYLES:-"[('apa', 'APA'), ('chicago-note-bibliography', 'Chicago'), ('harvard-cite-them-right', 'Harvard')]"}
|
|
||||||
|
|
||||||
# Invenio-Accounts
|
|
||||||
- INVENIO_ACCOUNTS_LOCAL_LOGIN_ENABLED=${INVENIO_ACCOUNTS_LOCAL_LOGIN_ENABLED:-True}
|
|
||||||
- INVENIO_GITHUB_APP_CREDENTIALS=${INVENIO_GITHUB_APP_CREDENTIALS:-}
|
|
||||||
|
|
||||||
# OAI-PMH
|
|
||||||
- INVENIO_OAISERVER_ID_PREFIX=${OAISERVER_ID_PREFIX:-invenio-rdm}
|
|
||||||
|
|
||||||
# Invenio-Files-REST
|
|
||||||
- INVENIO_FILES_REST_STORAGE_FACTORY=invenio_s3.s3fs_storage_factory
|
|
||||||
|
|
||||||
# Invenio-S3
|
|
||||||
- INVENIO_S3_ENDPOINT_URL=${INVENIO_S3_ENDPOINT_URL:-}
|
|
||||||
- INVENIO_S3_ACCESS_KEY_ID=${INVENIO_S3_ACCESS_KEY_ID:-}
|
|
||||||
- INVENIO_S3_SECRET_ACCESS_KEY=${INVENIO_S3_SECRET_ACCESS_KEY:-}
|
|
||||||
- INVENIO_S3_BUCKET_NAME=${INVENIO_S3_BUCKET_NAME:-}
|
|
||||||
|
|
||||||
# Invenio-Search
|
|
||||||
- INVENIO_SEARCH_HOSTS=${INVENIO_SEARCH_HOSTS:-['search:9200']}
|
|
||||||
- INVENIO_SEARCH_INDEX_PREFIX=${INVENIO_SEARCH_INDEX_PREFIX:-invenio-rdm-}
|
|
||||||
|
|
||||||
# Logging
|
|
||||||
- INVENIO_LOGGING_CONSOLE_LEVEL=${INVENIO_LOGGING_CONSOLE_LEVEL:-WARNING}
|
|
||||||
|
|
||||||
# Custom invenio settings
|
|
||||||
- INVENIO_SECURITY_REGISTERABLE=False # Disable manual user registration
|
|
||||||
- INVENIO_MAIL_SUPPRESS_SEND=False # Allow server to send emails
|
|
||||||
- INVENIO_RDM_DEFAULT_CITATION_STYLE = "vancouver"
|
|
||||||
depends_on:
|
depends_on:
|
||||||
search:
|
search:
|
||||||
condition: service_started
|
condition: service_started
|
||||||
@@ -118,42 +84,41 @@ services:
|
|||||||
condition: service_started
|
condition: service_started
|
||||||
worker:
|
worker:
|
||||||
command: "celery -A invenio_app.celery worker --beat --events --loglevel=WARNING"
|
command: "celery -A invenio_app.celery worker --beat --events --loglevel=WARNING"
|
||||||
|
# command: "sh"
|
||||||
build:
|
build:
|
||||||
context: .
|
context: .
|
||||||
networks:
|
networks:
|
||||||
- invenio-network
|
- invenio-network
|
||||||
image: ghcr.io/front-matter/invenio-rdm-starter:latest
|
|
||||||
volumes:
|
volumes:
|
||||||
- uploaded_data:/opt/invenio/var/instance/data
|
- uploaded_data:/opt/invenio/var/instance/data
|
||||||
environment:
|
environment:
|
||||||
- INVENIO_SQLALCHEMY_DATABASE_URI=postgresql+psycopg2://${POSTGRES_USER:-inveniordm}:${POSTGRES_PASSWORD:-inveniordm}@db/${POSTGRES_DB:-inveniordm}
|
- INVENIO_MAIL_SUPPRESS_SEND=true
|
||||||
- INVENIO_SEARCH_HOSTS=${INVENIO_SEARCH_HOSTS:-['search:9200']}
|
# Passthrough of shared env variables
|
||||||
- INVENIO_SEARCH_INDEX_PREFIX=${INVENIO_SEARCH_INDEX_PREFIX:-invenio-rdm-}
|
- INVENIO_SQLALCHEMY_DATABASE_URI=postgresql+psycopg2://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db/${POSTGRES_DB:-inveniordm}
|
||||||
|
- INVENIO_SEARCH_HOSTS
|
||||||
- INVENIO_CACHE_TYPE=${INVENIO_CACHE_TYPE:-redis}
|
- INVENIO_SEARCH_INDEX_PREFIX
|
||||||
- INVENIO_CACHE_REDIS_URL=${INVENIO_CACHE_REDIS_URL:-redis://cache:6379/0}
|
- INVENIO_CACHE_TYPE
|
||||||
- INVENIO_ACCOUNTS_SESSION_REDIS_URL=${INVENIO_ACCOUNTS_SESSION_REDIS_URL:-redis://cache:6379/1}
|
- INVENIO_CACHE_REDIS_URL
|
||||||
- INVENIO_CELERY_RESULT_BACKEND=${INVENIO_CELERY_RESULT_BACKEND:-redis://cache:6379/2}
|
- INVENIO_ACCOUNTS_SESSION_REDIS_URL
|
||||||
- INVENIO_RATELIMIT_STORAGE_URL=${INVENIO_RATELIMIT_STORAGE_URL:-redis://cache:6379/3}
|
- INVENIO_CELERY_RESULT_BACKEND
|
||||||
- INVENIO_COMMUNITIES_IDENTITIES_CACHE_REDIS_URL=${INVENIO_COMMUNITIES_IDENTITIES_CACHE_REDIS_URL:-redis://cache:6379/4}
|
- INVENIO_RATELIMIT_STORAGE_URL
|
||||||
- INVENIO_BROKER_URL=${INVENIO_BROKER_URL:-redis://cache:6379/5}
|
- INVENIO_COMMUNITIES_IDENTITIES_CACHE_REDIS_URL
|
||||||
- INVENIO_CELERY_BROKER_URL=${INVENIO_BROKER_URL:-redis://cache:6379/5}
|
- INVENIO_BROKER_URL
|
||||||
|
- INVENIO_CELERY_BROKER_URL
|
||||||
- INVENIO_MAIL_SUPPRESS_SEND=${INVENIO_MAIL_SUPPRESS_SEND:-True}
|
- INVENIO_MAIL_SERVER
|
||||||
- INVENIO_MAIL_SERVER=${INVENIO_MAIL_SERVER:-smtp.gmail.com}
|
- INVENIO_MAIL_PORT
|
||||||
- INVENIO_MAIL_PORT=${INVENIO_MAIL_PORT:-465}
|
- INVENIO_MAIL_USERNAME
|
||||||
- INVENIO_MAIL_USERNAME=${INVENIO_MAIL_USERNAME:-info}
|
- INVENIO_MAIL_PASSWORD
|
||||||
- INVENIO_MAIL_PASSWORD=${INVENIO_MAIL_PASSWORD:-changeme}
|
- INVENIO_MAIL_USE_SSL
|
||||||
- INVENIO_MAIL_USE_SSL=${INVENIO_MAIL_USE_SSL:-True}
|
- INVENIO_FILES_REST_STORAGE_FACTORY
|
||||||
|
- INVENIO_S3_ENDPOINT_URL
|
||||||
# Invenio-Files-REST
|
- INVENIO_S3_ACCESS_KEY_ID
|
||||||
- INVENIO_FILES_REST_STORAGE_FACTORY=${INVENIO_FILES_REST_STORAGE_FACTORY:-invenio_s3.s3fs_storage_factory}
|
- INVENIO_S3_SECRET_ACCESS_KEY
|
||||||
|
- INVENIO_S3_BUCKET_NAME
|
||||||
# Invenio-S3
|
- INVENIO_ENV=${COMPOSE_PROFILES}
|
||||||
- INVENIO_S3_ENDPOINT_URL=${INVENIO_S3_ENDPOINT_URL:-}
|
- FLASK_ENV=${COMPOSE_PROFILES}
|
||||||
- INVENIO_S3_ACCESS_KEY_ID=${INVENIO_S3_ACCESS_KEY_ID:-}
|
- NODE_ENV=${COMPOSE_PROFILES}
|
||||||
- INVENIO_S3_SECRET_ACCESS_KEY=${INVENIO_S3_SECRET_ACCESS_KEY:-}
|
- FLASK_DEBUG
|
||||||
- INVENIO_S3_BUCKET_NAME=${INVENIO_S3_BUCKET_NAME:-}
|
|
||||||
depends_on:
|
depends_on:
|
||||||
search:
|
search:
|
||||||
condition: service_started
|
condition: service_started
|
||||||
@@ -176,9 +141,9 @@ services:
|
|||||||
- invenio-network
|
- invenio-network
|
||||||
restart: "unless-stopped"
|
restart: "unless-stopped"
|
||||||
environment:
|
environment:
|
||||||
- POSTGRES_USER=${POSTGRES_USER:-inveniordm}
|
- POSTGRES_USER
|
||||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD:-inveniordm}
|
- POSTGRES_PASSWORD
|
||||||
- POSTGRES_DB=${POSTGRES_DB:-inveniordm}
|
- POSTGRES_DB
|
||||||
volumes:
|
volumes:
|
||||||
- "postgres_data:/var/lib/postgresql/data"
|
- "postgres_data:/var/lib/postgresql/data"
|
||||||
ports:
|
ports:
|
||||||
@@ -189,6 +154,7 @@ services:
|
|||||||
- invenio-network
|
- invenio-network
|
||||||
restart: "unless-stopped"
|
restart: "unless-stopped"
|
||||||
environment:
|
environment:
|
||||||
|
- OPENSEARCH_INITIAL_ADMIN_PASSWORD
|
||||||
- bootstrap.memory_lock=true
|
- bootstrap.memory_lock=true
|
||||||
- OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m
|
- OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m
|
||||||
- DISABLE_INSTALL_DEMO_CONFIG=true
|
- DISABLE_INSTALL_DEMO_CONFIG=true
|
||||||
@@ -208,6 +174,42 @@ services:
|
|||||||
- "9200:9200"
|
- "9200:9200"
|
||||||
- "9600:9600"
|
- "9600:9600"
|
||||||
|
|
||||||
|
# Test SAML for development
|
||||||
|
oauth2-proxy:
|
||||||
|
image: quay.io/oauth2-proxy/oauth2-proxy:latest
|
||||||
|
profiles:
|
||||||
|
- development
|
||||||
|
ports:
|
||||||
|
- "4180:4180"
|
||||||
|
environment:
|
||||||
|
- OAUTH2_PROXY_PROVIDER=oidc
|
||||||
|
- OAUTH2_PROXY_OIDC_ISSUER_URL=http://saml-idp:8080/simplesaml/saml2/idp
|
||||||
|
- OAUTH2_PROXY_CLIENT_ID=your-client-id
|
||||||
|
- OAUTH2_PROXY_CLIENT_SECRET=your-client-secret
|
||||||
|
- OAUTH2_PROXY_COOKIE_SECRET=${OAUTH2_PROXY_COOKIE_SECRET}
|
||||||
|
- OAUTH2_PROXY_EMAIL_DOMAINS=*
|
||||||
|
- OAUTH2_PROXY_UPSTREAM=http://caddy:80
|
||||||
|
- OAUTH2_PROXY_HTTP_ADDRESS=0.0.0.0:4180
|
||||||
|
- OAUTH2_PROXY_REDIRECT_URL=http://localhost:4180/oauth2/callback
|
||||||
|
depends_on:
|
||||||
|
- saml-idp
|
||||||
|
- caddy
|
||||||
|
networks:
|
||||||
|
- invenio-network
|
||||||
|
saml-idp:
|
||||||
|
image: kristophjunge/test-saml-idp:latest
|
||||||
|
profiles:
|
||||||
|
- development
|
||||||
|
ports:
|
||||||
|
- "8080:8080"
|
||||||
|
environment:
|
||||||
|
- SIMPLESAMLPHP_SP_ENTITY_ID=http://localhost:4180
|
||||||
|
- SIMPLESAMLPHP_SP_ASSERTION_CONSUMER_SERVICE=http://localhost:4180/oauth2/callback
|
||||||
|
volumes:
|
||||||
|
- ./saml/authsources.php:/var/www/simplesamlphp/config/authsources.php:ro
|
||||||
|
networks:
|
||||||
|
- invenio-network
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
invenio-network:
|
invenio-network:
|
||||||
|
|
||||||
@@ -215,6 +217,7 @@ volumes:
|
|||||||
app_data:
|
app_data:
|
||||||
uploaded_data:
|
uploaded_data:
|
||||||
archived_data:
|
archived_data:
|
||||||
|
site_data:
|
||||||
postgres_data:
|
postgres_data:
|
||||||
opensearch_data:
|
opensearch_data:
|
||||||
valkey_data:
|
valkey_data:
|
||||||
|
|||||||
10
env.sh
10
env.sh
@@ -7,9 +7,13 @@ else
|
|||||||
ENV_FILE="invenio_prod.env"
|
ENV_FILE="invenio_prod.env"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
aws secretsmanager get-secret-value --secret-id Invenio | \
|
{
|
||||||
jq -r '.SecretString | fromjson | to_entries | .[] | .key + "=\"" + .value + "\""' > secrets.env
|
echo "# Secrets fetched from AWS Secrets Manager"
|
||||||
|
aws secretsmanager get-secret-value --secret-id Invenio | \
|
||||||
|
jq -r '.SecretString | fromjson | to_entries | .[] | .key + "=\"" + .value + "\""'
|
||||||
|
echo ""
|
||||||
|
} > secrets.env
|
||||||
|
|
||||||
cat ./env/invenio.env "./env/$ENV_FILE" secrets.env > .env
|
cat secrets.env ./env/invenio.env "./env/$ENV_FILE" > .env
|
||||||
|
|
||||||
echo "Environment set up using $ENV_FILE"
|
echo "Environment set up using $ENV_FILE"
|
||||||
|
|||||||
71
env/invenio.env
vendored
71
env/invenio.env
vendored
@@ -1,7 +1,72 @@
|
|||||||
INVENIO_S3_ENDPOINT_URL=https://s3.eu-west-1.amazonaws.com
|
# Invenio-Theme
|
||||||
INVENIO_S3_REGION_NAME=eu-west-1
|
|
||||||
INVENIO_S3_BUCKET_NAME=i-form-invenio
|
|
||||||
INVENIO_THEME_LOGO=custom_assets/I-Form_logo.webp
|
INVENIO_THEME_LOGO=custom_assets/I-Form_logo.webp
|
||||||
INVENIO_THEME_FRONTPAGE_TITLE="I-Form Invenio Data Repository"
|
INVENIO_THEME_FRONTPAGE_TITLE="I-Form Invenio Data Repository"
|
||||||
INVENIO_THEME_SITENAME="I-Form Repository"
|
INVENIO_THEME_SITENAME="I-Form Repository"
|
||||||
INVENIO_THEME_FRONTPAGE_SUBTITLE="An Invenio data repository for the I-Form research group."
|
INVENIO_THEME_FRONTPAGE_SUBTITLE="An Invenio data repository for the I-Form research group."
|
||||||
|
INVENIO_THEME_SHOW_FRONTPAGE_INTRO_SECTION=false
|
||||||
|
|
||||||
|
INVENIO_SECURITY_REGISTERABLE=false # Disable manual user registration
|
||||||
|
|
||||||
|
# Database and Flask-SQLAlchemy
|
||||||
|
POSTGRES_USER=inveniordm
|
||||||
|
POSTGRES_DB=inveniordm
|
||||||
|
|
||||||
|
# Invenio-App
|
||||||
|
INVENIO_CACHE_TYPE=redis
|
||||||
|
INVENIO_CACHE_REDIS_URL=redis://cache:6379/0
|
||||||
|
INVENIO_ACCOUNTS_SESSION_REDIS_URL=redis://cache:6379/1
|
||||||
|
INVENIO_CELERY_RESULT_BACKEND=redis://cache:6379/2
|
||||||
|
INVENIO_RATELIMIT_STORAGE_URL=redis://cache:6379/3
|
||||||
|
INVENIO_COMMUNITIES_IDENTITIES_CACHE_REDIS_URL=redis://cache:6379/4
|
||||||
|
INVENIO_BROKER_URL=redis://cache:6379/5
|
||||||
|
INVENIO_CELERY_BROKER_URL=redis://cache:6379/5
|
||||||
|
|
||||||
|
# Server settings
|
||||||
|
INVENIO_WSGI_PROXIES=4
|
||||||
|
|
||||||
|
# Invenio-RDM-Records
|
||||||
|
INVENIO_DATACITE_ENABLED=false
|
||||||
|
INVENIO_DATACITE_USERNAME=""
|
||||||
|
INVENIO_DATACITE_PASSWORD=""
|
||||||
|
INVENIO_DATACITE_PREFIX=""
|
||||||
|
INVENIO_DATACITE_TEST_MODE=true
|
||||||
|
INVENIO_DATACITE_DATACENTER_SYMBOL=""
|
||||||
|
|
||||||
|
INVENIO_RDM_ALLOW_METADATA_ONLY_RECORDS=true
|
||||||
|
INVENIO_RDM_ALLOW_RESTRICTED_RECORDS=true
|
||||||
|
INVENIO_RDM_ALLOW_EXTERNAL_DOI_VERSIONING=true
|
||||||
|
|
||||||
|
INVENIO_RDM_CITATION_STYLES_DEFAULT=vancouver
|
||||||
|
INVENIO_RDM_DEFAULT_CITATION_STYLE=vancouver
|
||||||
|
|
||||||
|
# Email config
|
||||||
|
INVENIO_MAIL_SUPPRESS_SEND=false # Allow server to send emails
|
||||||
|
INVENIO_SECURITY_EMAIL_SENDER=""
|
||||||
|
INVENIO_MAIL_SERVER=smtp.gmail.com
|
||||||
|
INVENIO_MAIL_PORT=465
|
||||||
|
INVENIO_MAIL_USERNAME=info
|
||||||
|
INVENIO_MAIL_PASSWORD=changeme
|
||||||
|
INVENIO_MAIL_USE_SSL=true
|
||||||
|
|
||||||
|
# Invenio-Accounts
|
||||||
|
INVENIO_ACCOUNTS_LOCAL_LOGIN_ENABLED=true
|
||||||
|
INVENIO_GITHUB_APP_CREDENTIALS=""
|
||||||
|
|
||||||
|
# OAI-PMH
|
||||||
|
INVENIO_OAISERVER_ID_PREFIX=invenio-rdm
|
||||||
|
|
||||||
|
# Invenio-Files-REST
|
||||||
|
INVENIO_FILES_REST_STORAGE_FACTORY=invenio_s3.s3fs_storage_factory
|
||||||
|
|
||||||
|
# Invenio-S3
|
||||||
|
INVENIO_S3_ENDPOINT_URL=https://s3.eu-west-1.amazonaws.com
|
||||||
|
INVENIO_S3_REGION_NAME=eu-west-1
|
||||||
|
INVENIO_S3_BUCKET_NAME=i-form-invenio
|
||||||
|
|
||||||
|
# Invenio-Search
|
||||||
|
INVENIO_SEARCH_HOSTS=search:9200
|
||||||
|
INVENIO_SEARCH_INDEX_PREFIX=invenio-rdm-
|
||||||
|
|
||||||
|
# Logging
|
||||||
|
INVENIO_LOGGING_CONSOLE_LEVEL=WARNING
|
||||||
|
|
||||||
|
|||||||
11
env/invenio_dev.env
vendored
11
env/invenio_dev.env
vendored
@@ -1,5 +1,6 @@
|
|||||||
INVENIO_APP_ALLOWED_HOSTS=["invenio.i-form.ie", "localhost", "localhost:5000", "127.0.0.1", "127.0.0.1:5000", "0.0.0.0", "0.0.0.0:5000"]
|
# Development environment settings
|
||||||
INVENIO_SITE_UI_URL=https://localhost:5000
|
INVENIO_APP_ALLOWED_HOSTS=invenio.i-form.ie,localhost,localhost:8443,127.0.0.1,127.0.0.1:8443,0.0.0.0,0.0.0.0:8443
|
||||||
INVENIO_SITE_API_URL=https://localhost:5000/api
|
INVENIO_SITE_UI_URL=https://localhost
|
||||||
FLASK_ENV=development
|
INVENIO_SITE_API_URL=https://localhost
|
||||||
INVENIO_ENV=development
|
COMPOSE_PROFILES=development
|
||||||
|
FLASK_DEBUG=true
|
||||||
|
|||||||
7
env/invenio_prod.env
vendored
7
env/invenio_prod.env
vendored
@@ -1,5 +1,6 @@
|
|||||||
INVENIO_APP_ALLOWED_HOSTS=["invenio.i-form.ie"]
|
# Production environment settings
|
||||||
|
INVENIO_APP_ALLOWED_HOSTS=invenio.i-form.ie
|
||||||
INVENIO_SITE_UI_URL=https://invenio.i-form.ie
|
INVENIO_SITE_UI_URL=https://invenio.i-form.ie
|
||||||
INVENIO_SITE_API_URL=https://invenio.i-form.ie/api
|
INVENIO_SITE_API_URL=https://invenio.i-form.ie/api
|
||||||
FLASK_ENV=production
|
COMPOSE_PROFILES=production
|
||||||
INVENIO_ENV=production
|
FLASK_DEBUG=false
|
||||||
|
|||||||
15
saml/authsources.php
Normal file
15
saml/authsources.php
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<?php
|
||||||
|
$config = [
|
||||||
|
'admin' => [
|
||||||
|
'core:AdminPassword',
|
||||||
|
],
|
||||||
|
|
||||||
|
'example-userpass' => [
|
||||||
|
'exampleauth:UserPass',
|
||||||
|
'test@example.com:password' => [
|
||||||
|
'uid' => ['test'],
|
||||||
|
'email' => ['test@example.com'],
|
||||||
|
'displayName' => ['Test User'],
|
||||||
|
],
|
||||||
|
],
|
||||||
|
];
|
||||||
Reference in New Issue
Block a user