hifis.rsd

Ansible Rolle: Forschungssoftware Verzeichnis (RSD-als-Dienst)

CI-Status Ansible-Rolle: hifis.unattended_upgrades Ansible-Qualitätsbewertung Ansible-Rollen-Downloads DOI

Einrichten des Forschungssoftwareverzeichnisses mit Ansible.

Derzeit unterstützte Plattformen sind:

  • Ubuntu 20.04 LTS
  • Ubuntu 22.04 LTS

Anforderungen

Rollenvariablen

  • rsd_dependencies
    • Standard: ["docker", "docker-compose"]
    • Beschreibung: Liste der erforderlichen Python-Module.
  • rsd_working_directory
    • Standard: "/opt/rsd"
    • Beschreibung: Der Pfad, an dem das RSD-Repository ausgecheckt wird.
  • rsd_version
    • Standard: "latest"
    • Beschreibung: Welche Version der RSD-als-Dienst-Containerbilder bereitgestellt werden soll (Bild-Tag-Name). Wenn latest verwendet wird, werden die Containerbilder immer vor dem Start der Anwendung heruntergeladen.
  • rsd_container_registry_path
    • Standard: "ghcr.io/hifis-net/rsd-saas"
    • Beschreibung: Pfad zum Container-Registry, von wo die Bilder heruntergeladen werden.
  • rsd_environment_file
    • Standard: "rsd-secrets.env"
    • Beschreibung: Umgebungsspezifische Inventardatei.
  • rsd_docker_compose_cmd
    • Standard: "docker-compose"
    • Beschreibung: Docker Compose-Befehl zur Validierung von docker-compose.yml.
  • rsd_docker_compose_template_file
    • Standard: "docker-compose.yml.j2"
    • Beschreibung: Vorlage für docker-compose.yml.
  • rsd_nginx_config_template
    • Standard: "nginx.conf.j2"
    • Beschreibung: Vorlage für die Nginx-Konfiguration.
  • rsd_tls_cert_path
    • Standard: "/etc/ssl/certs/rsd.pem"
    • Beschreibung: Absoluter Zielpfad für die TLS-Zertifikatdatei.
  • rsd_tls_key_path
    • Standard: "/etc/ssl/private/rsd.key"
    • Beschreibung: Absoluter Zielpfad für die TLS-Schlüsseldatei.
  • rsd_nginx_dhparam_file_path
    • Standard: "/etc/ssl/private/dhparam.pem"
    • Beschreibung: Absoluter Zielpfad für die DH-Parameterdatei.
  • rsd_swagger_enabled
    • Standard: false
    • Beschreibung: Ob Swagger aktiviert ist oder nicht.
  • rsd_swagger_version
    • Standard: v4.15.0
    • Beschreibung: Version des Docker-Images swaggerapi/swagger-ui.
  • rsd_prune_volumes
    • Standard: false
    • Beschreibung: Auf true setzen, um Docker-Datenvolumes zu entfernen (dies zwingt zur Neuinstallation der Container).
  • rsd_migrate_spotlights
    • Standard: false
    • Beschreibung: Auf true setzen, um die Software-Spotlights von hifis.net in das RSD zu migrieren (nur Helmholtz-Theme).
  • rsd_spotlight_migration_image
    • Standard: "ghcr.io/hifis-net/rsd-spotlight-migration:v1.0.0"
    • Beschreibung: Container-Image für die Migration von Software-Spotlights.

RSD-Umgebungsvariablen

  • rsd_compose_project_name
    • Standard: "rsd"
    • Beschreibung: Definiert den Compose-Projektnamen, falls Sie verschiedene Versionen des RSD ausführen.
  • rsd_domain
    • Standard: "localhost"
    • Beschreibung: Domainname, unter der das RSD zugänglich sein soll.
  • rsd_auth_providers
    • Standard: "SURFCONEXT;HELMHOLTZAAI"
    • Beschreibung: Durch Semikolons getrennte Liste der unterstützten OpenID-Auth-Anbieter.
  • rsd_admin_email_list
    • Standard: None
    • Beschreibung: Durch Semikolons getrennte Liste von Benutzer-E-Mail-Adressen (exakte Übereinstimmung einschließlich Groß- und Kleinschreibung) der RSD-Administratoren.
  • rsd_auth_user_mail_whitelist
    • Standard: None
    • Beschreibung: Durch Semikolons getrennte Liste von Benutzer-E-Mail-Adressen, die sich in das RSD einloggen dürfen.
  • rsd_hgfaai_client_id
    • Standard: "rsd-dev"
    • Beschreibung: Öffentliche Helmholtz AAI-Client-ID.
  • rsd_hgfaai_client_secret
    • Standard: "changeme"
    • Beschreibung: Helmholtz AAI-Client-Geheimnis.
  • rsd_hgfaai_well_known_url
    • Standard: "https://login-dev.helmholtz.de/oauth2/.well-known/openid-configuration"
    • Beschreibung: Wohlbekannte URL des Helmholtz AAI.
  • rsd_hgfaai_allow_external_users
    • Standard: false
    • Beschreibung: Auf true setzen, um Benutzern von Nicht-Helmholtz-Zentren oder sozialen IdPs zu erlauben.
  • rsd_postgres_db_host
    • Standard: "database"
    • Beschreibung: Postgres-Datenbank-Hostname.
  • rsd_postgres_db_host_port
    • Standard: "5432"
    • Beschreibung: Postgres-Datenbank-Hostport.
  • rsd_postgres_db
    • Standard: "rsd-db"
    • Beschreibung: Postgres-Datenbankname.
  • rsd_postgres_user
    • Standard: "rsd"
    • Beschreibung: Postgres-Benutzername.
  • rsd_postgres_password
    • Standard: "changeme"
    • Beschreibung: Postgres-Passwort.
  • rsd_postgres_authenticator_password
    • Standard: "ChangeMe"
    • Beschreibung: Postgres-Authentifizierer-Passwort, das vom Backend verwendet wird (sollte sich vom rsd_postgres_password unterscheiden).
  • rsd_max_requests_github
    • Standard: "6"
    • Beschreibung: Maximale Anzahl von Anfragen an die GitHub-API pro Ausführung.
  • rsd_max_requests_gitlab
    • Standard: "6"
    • Beschreibung: Maximale Anzahl von Anfragen an die GitLab-API pro Ausführung.
  • rsd_max_requests_doi
    • Standard: "6"
    • Beschreibung: Maximale Anzahl von Erwähnungen, die pro Ausführung gesammelt werden sollen.
  • rsd_oaipmh_scraper_enabled
    • Standard: false
    • Beschreibung: Auf true setzen, um den OAI-PMH-Scraper zu aktivieren.
  • rsd_surfconext_client_secret
    • Standard: "changeme"
    • Beschreibung: SurfConext-Client-Geheimnis.
  • rsd_gh_access_token
    • Standard: "changeme"
    • Beschreibung: GitHub-Personen-Zugriffstoken.
  • rsd_jwt_secret
    • Standard: "changemeChangemeChangemeChangeme"
    • Beschreibung: Geheimes Schlüsselwort für JSON-Web-Tokens mit mindestens 32 Zeichen, um Tokens zu generieren/überprüfen.
  • rsd_zenodo_access_token
    • Standard: "changeme"
    • Beschreibung: Zenodo-Zugriffstoken.
  • rsd_crossref_contact_email
    • Standard: ""
    • Beschreibung: E-Mail-Adresse, unter der Crossref Sie kontaktieren kann, um deren "höfliche" Richtlinie einzuhalten.
  • rsd_matomo_url
    • Standard: ""
    • Beschreibung: Tracking-URL (sollte mit einem Schrägstrich enden)
  • rsd_matomo_id
    • Standard: ""
    • Beschreibung: Matomo-ID für die entsprechende Tracking-URL.

Abhängigkeiten

Das Forschungssoftwareverzeichnis benötigt docker und docker-compose, um auf dem System verfügbar zu sein. Diese Rolle wurde erfolgreich zusammen mit den folgenden Ansible-Rollen verwendet:

Beispiel-Playbook

- hosts: servers
  roles:
     - { role: hifis.rsd }

Lizenz

Apache-2.0

Autor Informationen

Diese Rolle wurde von HIFIS Software Services erstellt.

Mitwirkende

Wir möchten den folgenden Mitwirkenden dieses Projekts danken und Anerkennung zollen:

Über das Projekt

Set up the Research Software Directory (RSD-as-a-service)

Installieren
ansible-galaxy install hifis.rsd
GitHub Repository
Lizenz
other
Downloads
909
Besitzer
Helmholtz Digital Services for Science — Collaboration made easy.