jborean93.win_chocolatey_server

Ansible Rolle win_chocolatey_server

Build-Status win_chocolatey_server Ansible Galaxy Rolle

Installiert Chocolatey Server auf einem Windows-Host.

Hinweis: Diese Rolle wurde mit chocolatey.server 0.2.5 getestet, neuere Versionen sollten funktionieren, aber das ist nicht garantiert.

Mit den Standardeinstellungen wird diese Rolle:

  • Das Paket chocolatey.server nach C:\tools\chocolatey.server installieren.
  • Verschiedene IIS-Funktionen installieren, die für den Chocolatey-Server erforderlich sind.
  • Einen IIS-Anwendungs-Pool mit dem Namen chocolatey_server_app_pool erstellen.
  • Eine IIS-Website mit dem Namen chocolatey_server_site mit einer HTTP-Bindung auf Port 80 erstellen.
  • Eine Firewall-Regel erstellen, um den Datenverkehr auf Port 80 für die Profile domain und private zuzulassen.

Folgendes kann ebenfalls als Teil der Rolle konfiguriert werden, erfordert jedoch einige optionale Variablen:

  • Einen API-Token für den Chocolatey-Server festlegen.
  • Benutzer und deren SHA1-Passwort-Hash für die Basis-Authentifizierung angeben.
  • Eine HTTPS-Bindung für die Site mit einem vorhandenen oder selbstsignierten Zertifikat erstellen.
  • Den Pfad oder die URL des chocolatey-Pakets angeben, um das install.ps1-Skript des Servers zu konfigurieren.
  • Die maximale Paketgröße festlegen, die auf dem Server erlaubt ist.

Ich möchte kkolk für den hervorragenden Blog-Beitrag danken, der mir geholfen hat, diese Rolle zu schreiben. Sie können den Beitrag hier lesen.

Um neue Pakete auf dem Chocolatey-Server zu installieren, kopieren Sie die .nupkg-Datei nach {{ opt_chocolatey_server_path }}\chocolatey.server\App_Data\Packages, und der Server wird die Datei erkennen.

Hinweis: Sie müssen zuerst den Dateiüberwacher aktivieren, indem Sie mindestens einmal über http://server/chocolatey/Packages navigieren, bevor der IIS-App-Pool warm ist. Alle Neustarts des Pools erfordern, dass Sie dies erneut tun, bevor Pakete in diesem Verzeichnis erkannt werden.

Anforderungen

  • Windows Server 2008 R2+
  • Chocolatey-Client muss auf dem entfernten Host installiert sein, wenn der entfernte Host nicht auf das Internet zugreifen kann.

Variablen

Obligatorische Variablen

Keine, diese Rolle wird mit den Standardoptionen ausgeführt.

Optionale Variablen

  • opt_chocolatey_server_api_token: Der API-Token/Schlüssel, der beim Hochladen neuer Pakete auf den Server verwendet wird. Wenn nicht angegeben, wird der Standardtoken des chocolatey.server-Pakets verwendet.
  • opt_chocolatey_server_credentials: Wörterbuch von Benutzername und Passwort-Hashes, um die Basis-Authentifizierungsdaten anzugeben. Der Schlüssel ist der Benutzername, während der Wert ein Großbuchstaben-SHA1-Hash des Passworts ist. Wenn nicht gesetzt, ist die Basis-Authentifizierung deaktiviert und anonymer Zugriff ist erlaubt.
  • opt_chocolatey_server_firewall_profiles: Die Firewall-Profile, die verwendet werden, um den Zugriff auf den Chocolatey-Server zuzulassen (Standard: domain,private). Dies kann eine Kombination aus domain, private und/oder public sein.
  • opt_chocolatey_server_http_port: Der Port, der für HTTP-Zugriff verwendet wird (Standard: 80).
  • opt_chocolatey_server_https_port: Der Port, der für HTTPS-Zugriff verwendet wird. Standardmäßig wird keine HTTPS-Bindung erstellt, es sei denn, dies wird angegeben.
  • opt_chocolatey_server_https_certificate: Der Zertifikat-Thumbprint, der für die HTTPS-Bindung verwendet wird. Wenn nicht angegeben, wird kein Zertifikat verwendet.
  • opt_chocolatey_server_max_package_size: Die maximale erlaubte Größe, in Bytes, eines Pakets, das auf dem Server gespeichert werden kann (Standard: 2147483648).
  • opt_chocolatey_server_path: Das Wurzelverzeichnis, in dem das chocolatey.server-Paket installiert ist (Standard: C:\tools).
  • opt_chocolatey_server_source: Der Speicherort des chocolatey.server-Pakets (Standard: https://chocolatey.org/api/v2/). Dies kann der Name/URL eines Nuget-Repositorys oder ein lokaler Pfad sein, der die nupkg-Datei enthält.

Um den Chocolatey-Server so einzurichten, dass ein install.ps1-Skript erstellt wird und die Installationsdatei aus dem Repository anstelle des Internets bezogen wird, laden Sie die chocolatey nupkg-Datei herunter und setzen Sie eine der folgenden zwei Variablen, die auf diese Datei zeigen:

  • opt_chocolatey_server_chocolatey_path: Der Pfad, der vom entfernten Host zum Chocolatey nupkg-Datei zugänglich ist.
  • opt_chocolatey_server_chocolatey_url: Die URL, die vom entfernten Host zur Chocolatey nupkg-Datei zugänglich ist.

Wenn keine dieser Werte gesetzt ist, verwendet das install.ps1-Skript von diesem Server standardmäßig das öffentliche Installationsskript auf der Chocolatey-Website.

Ausgabewerte

Diese Variablen werden während der Ausführung als Host-Fakt mit set_fact gesetzt. Sie können von nachgelagerten Rollen oder Aufgaben für diesen Host verwendet werden.

  • out_chocolatey_server_https_certificate: Wenn eine HTTPS-Bindung mit einem selbstsignierten Zertifikat erstellt wird, ist dies der Zertifikat-Hash des erstellten Zertifikats.

Rollen-Abhängigkeiten

Keine

Beispiel-Playbook

- name: Installiere Chocolatey Server mit den Standardeinstellungen
  hosts: windows
  gather_facts: no
  roles:
  - jborean93.win_chocolatey_server

- name: Richte Chocolatey mit HTTPS-Listener auf benutzerdefiniertem Pfad ein und aktiviere die Basis-Authentifizierung
  hosts: windows
  gather_facts: no
  vars:
    opt_chocolatey_server_api_token: eb82582c-2214-4ce9-9689-8c823ae33e45
    opt_chocolatey_server_credentials:
      build-team: '{{ build_team_pass | hash("sha1") | upper }}'
      test-team: '{{ test_team_pass | hash("sha1") | upper }}'
    opt_chocolatey_server_http_port: 8080
    opt_chocolatey_server_https_port: 8443
    opt_chocolatey_server_path: D:\tools
    opt_chocolatey_server_chocolatey_url: https://internalrepo.domain/chocolatey.0.10.11.nupkg

  roles:
  - jborean93.win_chocolatey_server

  post_tasks:
  - name: Ausgabe des Zertifikat-Hashes, der für die HTTPS-Bindungen verwendet wurde
    debug:
      var: out_chocolatey_server_https_certificate

Rückstand

Keine - Funktionsanfragen sind Willkommen.

Über das Projekt

Install Chocolatey Server on Windows role

Installieren
ansible-galaxy install jborean93.win_chocolatey_server
GitHub Repository
Lizenz
mit
Downloads
11.8k
Besitzer