Automatisieren von Drone-Updates mit Autoupdate

Date: Wed, Mar 8, 2023

Tag(s): Automatisieren Drone Updates Autoupdate Automatisch

Drone ist eine Continuous-Integration-Plattform, die Entwicklern dabei hilft, ihre Build-, Test- und Freigabeworkflows zu automatisieren. Das Aktualisieren Ihrer Software ist wichtig für Sicherheit und Stabilität. Mit Chapati Systems Autoupdate war es noch nie einfacher, Drone CI zu aktualisieren.

Konfigurieren von Autoupdate für Drone CI

Um Autoupdate für das Aktualisieren von Drone CI zu konfigurieren, müssen Sie dem Konfigurationsfile einen Abschnitt für Drone hinzufügen. Hier ist ein Beispiel, wie die Konfiguration für Drone CI aussehen könnte:

[Drone]
update=True
composeDir=/opt/drone
containerization=podman
site=https://ci.kernel.fun
apiUrl=https://api.github.com/repos/harness/drone/releases/latest
preUpdateHook=
postUpdateHook=

In diesem Beispiel haben wir update auf True gesetzt, um Updates für Drone zu ermöglichen. Wir haben auch das Verzeichnis angegeben, in dem unsere Docker-Compose-Datei für Drone CI mit composeDir liegt. Wir haben podman als unser Containerisierungstool mit containerization ausgewählt. Die Optionen site und apiUrl geben die URL unserer Drone-Instanz bzw. die URL der neuesten Version auf GitHub an. Mit den Optionen preUpdateHook und postUpdateHook können wir Befehle angeben, die vor und nach der Aktualisierung von Drone ausgeführt werden.

Aktualisieren von Drone

Sobald Sie Autoupdate für Drone konfiguriert haben, ist das Aktualisieren so einfach wie das Ausführen als Root-Benutzer auf Ihrem Server mit einem Befehl wie dem folgenden:

root@server:/opt/config# ./autoupdate --config=/opt/config/drone.ini

Dadurch wird die Konfigurationsdatei aus /opt/config/drone.ini gelesen und die folgenden Schritte ausgeführt:

  1. Abrufen der neuesten Versionsinformationen von https://api.github.com/repos/harness/drone/releases/latest
  2. Vergleichen der aktuellen Version von Drone auf Ihrem Server mit der neuesten verfügbaren Version auf GitHub
  3. Wenn es eine neuere Version gibt, werden die neuen Docker-Images heruntergeladen
  4. Wenn angegeben, Ausführung von preUpdateHook vor dem Aktualisieren von Drone
  5. Neustart der Container mit den neuen Docker-Images
  6. Wenn angegeben, Ausführung von postUpdateHook nach dem Aktualisieren von Drone
  7. Das war’s! Sie haben Drone erfolgreich mit Chapati Systems Autoupdate aktualisiert.

Mit Chapati Systems Autoupdate war es noch nie einfacher, Software wie Drone CI zu aktualisieren. Durch Hinzufügen eines einfachen Konfigurationsabschnitts für jede Software, die Sie aktualisieren möchten, und Ausführen eines einzigen Befehls als Root-Benutzer auf Ihrem Server können Sie Ihr System mit minimalem Aufwand auf dem neuesten Stand halten.