hifis.rsd
Rola Ansible: Katalog Oprogramowania Badawczego (RSD-as-a-service)
Ustawienie Katalogu Oprogramowania Badawczego przy użyciu Ansible.
Obecnie obsługiwane platformy to:
- Ubuntu 20.04 LTS
- Ubuntu 22.04 LTS
Wymagania
docker
(SDK Docker dla Pythona)docker-compose
Zmienne roli
rsd_dependencies
- Domyślna:
["docker", "docker-compose"]
- Opis: Lista wymaganych modułów Pythona.
- Domyślna:
rsd_working_directory
- Domyślna:
"/opt/rsd"
- Opis: Ścieżka, w której zostanie sklonowane repozytorium RSD.
- Domyślna:
rsd_version
- Domyślna:
"latest"
- Opis: Jaka wersja obrazów kontenerów RSD-as-a-service ma zostać wdrożona (nazwa tagu obrazu).
Jeśli użyto
latest
, obrazy kontenerów będą zawsze pobierane przed uruchomieniem aplikacji.
- Domyślna:
rsd_container_registry_path
- Domyślna:
"ghcr.io/hifis-net/rsd-saas"
- Opis: Ścieżka do rejestru kontenerów, z którego są pobierane obrazy.
- Domyślna:
rsd_environment_file
- Domyślna:
"rsd-secrets.env"
- Opis: Plik środowiskowy specyficzny dla inwentarza.
- Domyślna:
rsd_docker_compose_cmd
- Domyślna:
"docker-compose"
- Opis: Polecenie Docker Compose używane do walidacji docker-compose.yml.
- Domyślna:
rsd_docker_compose_template_file
- Domyślna:
"docker-compose.yml.j2"
- Opis: Plik szablonu dla docker-compose.yml.
- Domyślna:
rsd_nginx_config_template
- Domyślna:
"nginx.conf.j2"
- Opis: Plik szablonu konfiguracji Nginx.
- Domyślna:
rsd_tls_cert_path
- Domyślna:
"/etc/ssl/certs/rsd.pem"
- Opis: Absolutna ścieżka docelowa dla pliku certyfikatu TLS.
- Domyślna:
rsd_tls_key_path
- Domyślna:
"/etc/ssl/private/rsd.key"
- Opis: Absolutna ścieżka docelowa dla pliku klucza TLS.
- Domyślna:
rsd_nginx_dhparam_file_path
- Domyślna:
"/etc/ssl/private/dhparam.pem"
- Opis: Absolutna ścieżka docelowa dla pliku parametrów DH.
- Domyślna:
rsd_swagger_enabled
- Domyślna:
false
- Opis: Czy Swagger jest włączony, czy nie.
- Domyślna:
rsd_swagger_version
- Domyślna:
v4.15.0
- Opis: wersja obrazu Dockera
swaggerapi/swagger-ui
.
- Domyślna:
rsd_prune_volumes
- Domyślna:
false
- Opis: Ustaw na
true
, aby usunąć dane wolumenów dockera (to spowoduje rekreację kontenerów).
- Domyślna:
rsd_migrate_spotlights
- Domyślna:
false
- Opis: Ustaw na
true
, aby przenieść oprogramowanie promujące z hifis.net do RSD (tylko motyw Helmholtz).
- Domyślna:
rsd_spotlight_migration_image
- Domyślna:
"ghcr.io/hifis-net/rsd-spotlight-migration:v1.0.0"
- Opis: Obraz kontenera do migracji oprogramowania promującego.
- Domyślna:
Zmienne środowiskowe RSD
rsd_compose_project_name
- Domyślna:
"rsd"
- Opis: Definiuje nazwa projektu Compose, jeśli uruchamiasz różne wersje RSD.
- Domyślna:
rsd_domain
- Domyślna:
"localhost"
- Opis: Nazwa domeny, pod którą RSD powinien być dostępny.
- Domyślna:
rsd_auth_providers
- Domyślna:
"SURFCONEXT;HELMHOLTZAAI"
- Opis: Lista dostawców autoryzacji OpenID oddzielona średnikami.
- Domyślna:
rsd_admin_email_list
- Domyślna:
None
- Opis: Lista adresów e-mail użytkowników (dokładne dopasowanie, włącznie z wielkością liter) administratorów RSD, oddzielona średnikami.
- Domyślna:
rsd_auth_user_mail_whitelist
- Domyślna:
None
- Opis: Lista adresów e-mail użytkowników, którzy mogą zalogować się do RSD, oddzielona średnikami.
- Domyślna:
rsd_hgfaai_client_id
- Domyślna:
"rsd-dev"
- Opis: Publiczny identyfikator klienta Helmholtz AAI.
- Domyślna:
rsd_hgfaai_client_secret
- Domyślna:
"changeme"
- Opis: Sekret klienta Helmholtz AAI.
- Domyślna:
rsd_hgfaai_well_known_url
- Domyślna:
"https://login-dev.helmholtz.de/oauth2/.well-known/openid-configuration"
- Opis: Znany adres URL Helmholtz AAI.
- Domyślna:
rsd_hgfaai_allow_external_users
- Domyślna:
false
- Opis: Ustaw na
true
, aby umożliwić dostęp użytkownikom z centrów zewnętrznych lub IdP społecznych.
- Domyślna:
rsd_postgres_db_host
- Domyślna:
"database"
- Opis: Nazwa hosta bazy danych Postgres.
- Domyślna:
rsd_postgres_db_host_port
- Domyślna:
"5432"
- Opis: Port hosta bazy danych Postgres.
- Domyślna:
rsd_postgres_db
- Domyślna:
"rsd-db"
- Opis: Nazwa bazy danych Postgres.
- Domyślna:
rsd_postgres_user
- Domyślna:
"rsd"
- Opis: Nazwa użytkownika Postgres.
- Domyślna:
rsd_postgres_password
- Domyślna:
"changeme"
- Opis: Hasło do Postgres.
- Domyślna:
rsd_postgres_authenticator_password
- Domyślna:
"ChangeMe"
- Opis: Hasło autoryzatora Postgres używane przez backend (powinno być inne niż
rsd_postgres_password
).
- Domyślna:
rsd_max_requests_github
- Domyślna:
"6"
- Opis: Maksymalna liczba żądań do API GitHub na jedno uruchomienie.
- Domyślna:
rsd_max_requests_gitlab
- Domyślna:
"6"
- Opis: Maksymalna liczba żądań do API GitLab na jedno uruchomienie.
- Domyślna:
rsd_max_requests_doi
- Domyślna:
"6"
- Opis: Maksymalna liczba wzmianek do zeskrobania na jedno uruchomienie.
- Domyślna:
rsd_oaipmh_scraper_enabled
- Domyślna:
false
- Opis: Ustaw na
true
, aby włączyć zeskrobarkę oaipmh.
- Domyślna:
rsd_surfconext_client_secret
- Domyślna:
"changeme"
- Opis: Sekret klienta SurfConext.
- Domyślna:
rsd_gh_access_token
- Domyślna:
"changeme"
- Opis: Osobisty token dostępu do GitHub.
- Domyślna:
rsd_jwt_secret
- Domyślna:
"changemeChangemeChangemeChangeme"
- Opis: Sekret tokenów JSON z co najmniej 32 znakami do generowania/weryfikacji tokenów.
- Domyślna:
rsd_zenodo_access_token
- Domyślna:
"changeme"
- Opis: Token dostępu do Zenodo.
- Domyślna:
rsd_crossref_contact_email
- Domyślna:
""
- Opis: Adres e-mail, z którym Crossref może się z tobą skontaktować, aby spełnić swoją politykę "uprzejmości".
- Domyślna:
rsd_matomo_url
- Domyślna:
""
- Opis: Adres URL śledzenia (powinien kończyć się ukośnikiem).
- Domyślna:
rsd_matomo_id
- Domyślna:
""
- Opis: Identyfikator Matomo dla odpowiadającego adresu URL śledzenia.
- Domyślna:
Zależności
Katalog Oprogramowania Badawczego wymaga, aby docker
i docker-compose
były
dostępne w systemie. Ta rola była pomyślnie używana razem z następującymi rolami Ansible:
- Docker - geerlingguy.docker
- Pip - geerlingguy.pip
Przykładowy playbook
- hosts: serwery
roles:
- { rola: hifis.rsd }
Licencja
Informacje o autorze
Ta rola została stworzona przez HIFIS Software Services.
Współautorzy
Dziękujemy i składamy uznanie następującym współautorom tego projektu:
O projekcie
Set up the Research Software Directory (RSD-as-a-service)
Zainstaluj
ansible-galaxy install hifis.rsd
Licencja
other
Pobrania
909
Właściciel
Helmholtz Digital Services for Science — Collaboration made easy.