Benutzerhandbuch

Pakete erstellen, bearbeiten, bauen und verteilen

Rollen: Leser, Packager, Releaser, Administrator

Überblick

Das Benutzerhandbuch beschreibt die tägliche Arbeit mit oPBWeb: Pakete anlegen oder importieren, control-Daten und Scripte bearbeiten, Pakete bauen und auf die Depots deiner opsi-Configserver verteilen, von der Test- bis zur Produktionsstufe. Dazu kommen die Bereiche Snippets, Depots und Jobs sowie die Einstellungen für dein eigenes Konto.

Was du davon nutzen kannst, hängt von deiner Rolle ab. Schaltflächen, die deine Rolle nicht erlaubt, blendet oPBWeb aus oder deaktiviert sie. Der Server prüft jede Aktion zusätzlich.

Rollen

Die Rollen bauen aufeinander auf: Jede Rolle hat alle Rechte der Rolle davor. Deine Rolle siehst du im Avatar-Menü oben rechts unter deinem Namen.

RolleWas du damit tun darfst
LeserAlles ansehen außer Benutzer und Rollen und Einstellungen: Paketliste, Paket-Editor (nur lesen), Quelltext, Snippets, Jobs, Depots, Systemstatus. Gebaute .opsi- und .md5-Dateien herunterladen.
PackagerZusätzlich Pakete anlegen, importieren und bearbeiten, bauen, neue Versionen anlegen, Versionen löschen, eigene Snippets pflegen, Depots abgleichen, mit der Workbench abgleichen. Installieren, Deinstallieren und Pakete übernehmen auf Depots der Stufen Test und Staging.
ReleaserZusätzlich Installieren, Deinstallieren und Pakete übernehmen auf Depots der Stufe Produktion.
AdministratorZusätzlich Benutzer, Configserver, Einstellungen, Stufen von Configservern und Depots, globale Snippets und die Speicherbereinigung. Siehe Fachliche Administration .

Depot-Stufen

oPBWeb kann mehrere opsi-Configserver verwalten. Jeder Configserver hat eine Stufe: Produktion, Staging oder Test. Seine Depots erben diese Stufe, solange ein Administrator für ein Depot keine eigene festlegt; neue Configserver stehen zunächst auf Produktion. Die Stufe entscheidet, wer auf dem Depot installieren, deinstallieren, Pakete übernehmen, gesperrte Produkte entsperren und Repository-Dateien löschen darf:

StufeBenötigte Rolle
TestPackager oder höher
StagingPackager oder höher
ProduktionReleaser oder höher

Im Installationsdialog sind Depots, für die deine Rolle nicht reicht, mit „erfordert Rolle Releaser“ markiert und nicht auswählbar. Eine getestete Version bringst du mit Übernehmen … unverändert von einer Stufe auf die nächste, siehe Auf andere Stufe übernehmen .

Lebenszyklus eines Pakets

Jede Paketversion ist entweder Entwurf oder Freigegeben:

  1. Entwurf: Eine neue, importierte oder kopierte Version ist ein Entwurf. Du kannst sie beliebig bearbeiten.
  2. Bauen: Bauen erzeugt die .opsi-Datei. Die Version bleibt ein Entwurf, und du kannst sie beliebig oft neu bauen. Änderst du danach etwas, zeigt oPBWeb „seit dem Bauen geändert“ an.
  3. Installieren gibt frei: Mit Installieren … verteilst du den aktuellen Build auf Depots. Dabei wird die Version freigegeben und schreibgeschützt.
  4. Übernehmen: Mit Übernehmen … bringst du die getestete, freigegebene Version (denselben Build) auf die Depots der nächsten Stufe, etwa von Test nach Staging und dann nach Produktion.
  5. Weiterarbeiten: Für Änderungen legst du eine Neue Version an (bearbeitbare Kopie mit neuer Versionsnummer) oder setzt die Version Zurück auf Entwurf (gleiche Versionsnummer).

Details findest du in Bauen und verteilen .

Kapitel

  • Erste Schritte – Anmeldung, Aufbau der Oberfläche, Suche
  • Pakete – Paketliste, neue Pakete, Import, Meta-Pakete
  • Paket-Editor – control-Daten, Abhängigkeiten, Properties, Changelog
  • Dateien des Pakets – Dateibaum, Hochladen, MSI-Informationen, Struktur
  • Scripteditor – opsi-script bearbeiten mit Vervollständigung, Hilfe und Prüfung
  • Bauen und verteilen – Bauen, Installieren, Deinstallieren, Freigabe, Übernehmen auf andere Stufen
  • Snippets – Textbausteine anlegen, einfügen, importieren
  • Depots – Configserver und Depots, installierte Produkte, Dateien, Repository, Vergleich
  • Jobs – laufende und abgeschlossene Aufträge verfolgen
  • Konto und Sprache – Standardsprache, Passwort, Abmelden

Erste Schritte

Anmelden, Aufbau der Oberfläche und schnelles Navigieren mit der Suche

Rollen: Leser, Packager, Releaser, Administrator

Überblick

Dieses Kapitel zeigt dir, wie du dich anmeldest, wie die Oberfläche von oPBWeb aufgebaut ist und wie du mit der Suche schnell zu Paketen, Dateien und Befehlen springst. Am Ende findest du eine kurze Übersicht über Rollen und den Lebenszyklus eines Pakets.

Anmelden

  1. Öffne oPBWeb im Browser. Ohne gültige Sitzung landest du auf der Anmeldeseite.
  2. Gib deinen Benutzernamen und dein Passwort ein.
  3. Klick auf Anmelden.

Nach der Anmeldung öffnet sich die Paketliste, oder die Seite, die du ursprünglich aufrufen wolltest. Auf der Anmeldeseite kannst du oben in der Ecke schon die Sprache (DE/EN) und Hell/Dunkel umschalten.

Deine Sitzung bleibt bis zu sieben Tage erhalten, solange du dich nicht abmeldest. Abmelden kannst du dich über das Avatar-Menü, siehe Konto und Sprache .

Aufbau der Oberfläche

Die Oberfläche ist wie eine Entwicklungsumgebung aufgebaut: oben die Kopfleiste, links die Bereichsleiste, in der Mitte der Arbeitsbereich und unten die Statusleiste.

Oberfläche von oPBWeb mit Kopfleiste, Bereichsleiste, Paketliste und Statusleiste

Kopfleiste

Von links nach rechts findest du:

ElementFunktion
☰Blendet die Beschriftungen der Bereichsleiste ein oder aus (Tooltip „Menü mit Beschriftung ein-/ausklappen“).
Logo oPBWebFührt zurück zur Paketliste.
TitelZeigt, wo du gerade bist, im Paket-Editor zum Beispiel „Pakete › firefox“.
Suchfeld „Paket, Datei oder Befehl …“Öffnet die Suche (Tastenkürzel Strg K, am Mac ⌘ K).
Buch-SymbolÖffnet dieses Handbuch in einem neuen Tab (Handbuch (neuer Tab)), in der aktuellen Sprache der Oberfläche.
DE / ENSchaltet die Sprache für diese Sitzung um. Beim nächsten Anmelden gilt wieder deine Standardsprache.
Mond-SymbolWechselt zwischen hellem und dunklem Design (Hell oder dunkel umschalten). Solange du nichts wählst, folgt oPBWeb der Einstellung deines Betriebssystems.
AvatarZeigt deine Initialen. Das Menü enthält deinen Namen und deine Rolle, Standardsprache, Mein Konto (Kontodaten und Syntaxfarben im Editor ), Passwort ändern und Abmelden.

Bereichsleiste

Über die Bereichsleiste links wechselst du zwischen den Bereichen:

BereichInhalt
PaketeListe aller Pakete mit Details, Startseite nach der Anmeldung
Paket-EditorÖffnet das zuletzt bearbeitete Paket
SnippetsTextbausteine für opsi-script
JobsAlle Aufträge mit Live-Protokoll; ein Zähler zeigt deine laufenden Jobs
DepotsConfigserver und ihre Depots, installierte Produkte, Dateien, Repository
Systemstatus (unten)Erreichbarkeit der Dienste
Benutzer und Rollen, Einstellungen (unten)Nur für Administratoren sichtbar

Ohne Beschriftung zeigt die Leiste nur Symbole; fahr mit der Maus darüber, um den Namen als Tooltip zu sehen.

Statusleiste

Die Statusleiste unten zeigt links die Versionen von Frontend und Backend. Ist der Server nicht erreichbar, steht dort „Backend nicht verbunden“.

Daneben erscheint ein orangefarbener Hinweis, wenn mit einem Configserver etwas zu tun ist, etwa „Kein Configserver eingerichtet“, „Configserver 1: neues CA-Zertifikat“ oder „Configserver 1: CA läuft in 30 Tagen ab“. Für Administratoren führt der Hinweis in die Ansicht Depots. Rechts siehst du den Fortschritt der Jobs, die du in diesem Browser-Tab gestartet hast. Ein Klick darauf öffnet den Job im Bereich Jobs .

Bereiche in der Breite anpassen

Viele Ansichten sind in Bereiche geteilt, zum Beispiel Paketliste und Paketdetails. Die Trennlinien kannst du verschieben:

oPBWeb merkt sich die Breiten in deinem Browser.

Suche

Mit der Suche springst du per Tastatur zu Paketen, Dateien und Befehlen, ohne zu klicken.

  1. Drück Strg K (am Mac ⌘ K) oder klick in das Suchfeld „Paket, Datei oder Befehl …“.
  2. Tipp ein paar Buchstaben ein.
  3. Wähl mit den Pfeiltasten ↑ und ↓ einen Treffer aus und drück Enter. Mit Esc schließt du die Suche.

Geöffnete Suche mit Treffern in den Gruppen Pakete und Befehle

Die Treffer sind in Gruppen sortiert, höchstens 14 auf einmal:

GruppeInhalt
Dateien im PaketDateien des gerade geöffneten Pakets (nur, wenn ein Paket offen ist). Ein Treffer öffnet die Datei im Editor.
PaketePakete nach Product-ID, mit Version und Name als Hinweis
BefehleDie Bereiche (Pakete, Paket-Editor, Snippets …), Meine Jobs und Hell oder dunkel umschalten

Exakte Treffer stehen vor Treffern am Wortanfang, danach folgen Treffer irgendwo im Namen. Findet die Suche nichts davon, sucht sie unscharf (die Buchstaben in dieser Reihenfolge, auch mit Lücken).

Rollen im Überblick

Was du in oPBWeb tun darfst, legt deine Rolle fest:

RolleKurz gesagt
Lesernur lesen
PackagerPakete bearbeiten, bauen, auf Test- und Staging-Depots installieren
Releaserzusätzlich auf produktive Depots verteilen
Administratorzusätzlich Benutzer, Server und Einstellungen

Die ausführliche Tabelle findest du in der Übersicht des Benutzerhandbuchs .

Lebenszyklus in einem Bild

Entwurf ──Bauen (beliebig oft)──► „gebaut“
   ▲                                │ Installieren …
   │                                ▼
   └──── Zurück auf Entwurf ──── Freigegeben (schreibgeschützt)
                                    │ Neue Version
                                    ▼
                              neuer Entwurf (Kopie)

Ein Entwurf lässt sich bearbeiten und bauen. Erst das Installieren auf einem Depot gibt die Version frei. Wie das im Einzelnen abläuft, steht in Bauen und verteilen .

Pakete

Paketliste, neue Pakete anlegen, .opsi-Dateien und Workbench-Ordner importieren, Meta-Pakete erstellen

Rollen: Leser, Packager, Releaser, Administrator

Überblick

Der Bereich Pakete ist die Startseite von oPBWeb. Hier siehst du alle Pakete mit ihrer neuesten Version, prüfst in den Paketdetails, auf welchen Depots sie installiert sind, und legst neue Pakete an. Als Leser kannst du die Liste und die Details ansehen; Anlegen, Importieren und alle ändernden Aktionen brauchen mindestens die Rolle Packager.

Die Paketliste

Paketliste mit Statusfiltern, Tabelle und Paketdetails rechts

Die Tabelle zeigt pro Paket die neueste Version:

SpalteInhalt
Product-IDEindeutige Kennung des Produkts
NameAnzeigename
VersionProduktversion und Paketversion, zum Beispiel 1.0-3
Typlocalboot oder netboot
FormatFormat der control-Datei: INI oder TOML
StatusEntwurf oder Freigegeben
Geändert von, GeändertWer die Version zuletzt geändert hat und wann

Ein Klick wählt ein Paket aus und zeigt rechts seine Details. Ein Doppelklick öffnet es im Paket-Editor .

Filtern

Passt kein Paket, erscheint „Kein Paket passt zum Filter.“

Paketdetails

Im rechten Bereich siehst du zum ausgewählten Paket:

Verteilung

Detailbereich eines Pakets mit gruppierter Verteilung und dem Abschnitt Workbench

Die Tabelle Verteilung fasst die Depots je Configserver zusammen. Die Kopfzeile eines Servers nennt, auf wie vielen seiner Depots das Paket installiert ist („1 von 3 installiert“). Darunter steht je Depot die Stufe und die installierte Version:

Workbench

Der Abschnitt Workbench zeigt, in welchen Projektordnern der Workbenches das Paket liegt: Configserver, Projektordner und Version. Weicht die Version von der neuesten in oPBWeb ab, ist sie orange markiert. Liegt das Paket auf keiner Workbench, steht dort „Auf keiner Workbench.“

oPBWeb liest die Workbench nicht bei jedem Öffnen, sondern merkt sich, was es zuletzt gesehen hat. Aktuell wird die Angabe

Die Zeile „Stand:“ darunter nennt je Configserver, wann seine Workbench zuletzt vollständig gelesen wurde, oder „nie gelesen“. Hast du die Workbench direkt auf dem Server geändert, gleich vorher ab.

Bauen, Installieren und Deinstallieren sind in Bauen und verteilen beschrieben. Mehrere Pakete auf einmal von einer Stufe auf die nächste bringst du mit Übernehmen … in der Werkzeugleiste der Paketliste, siehe Auf andere Stufe übernehmen .

Neues Paket anlegen

Rollen: Packager, Releaser, Administrator

  1. Klick in der Paketliste auf Neues Paket.

    Dialog Neues Paket mit Product-ID, Name, Produktversion und Paketversion

  2. Füll die Felder aus:

    • Product-ID (Pflicht): nur Kleinbuchstaben, Ziffern, Punkt, Binde- und Unterstrich. Das erste Zeichen muss ein Kleinbuchstabe oder eine Ziffer sein, insgesamt höchstens 128 Zeichen. Beispiel: firefox-esr.
    • Name: Anzeigename. Lässt du ihn leer, übernimmt oPBWeb die Product-ID.
    • Produktversion (Pflicht): Version der Software, vorbelegt aus den Einstellungen (Standard 1.0).
    • Paketversion (Pflicht): Version des Pakets, vorbelegt aus den Einstellungen (Standard 1).
  3. Klick auf Anlegen. Solange die Product-ID ungültig ist, bleibt die Schaltfläche deaktiviert.

oPBWeb legt das Paket als Entwurf an und öffnet es im Paket-Editor. Das neue Paket enthält bereits ein setup- und ein uninstall-Script als Vorlage (CLIENT_DATA/setup.opsiscript, CLIENT_DATA/uninstall.opsiscript) und einen leeren Ordner SERVER_DATA/. Priorität, control-Format und Ablage des Changelogs kommen aus den Einstellungen für neue Pakete .

.opsi-Dateien importieren

Rollen: Packager, Releaser, Administrator

Vorhandene Pakete übernimmst du, indem du ihre .opsi-Dateien importierst. Jede importierte Version wird ein Entwurf.

  1. Klick auf Importieren. Der Dialog „Pakete importieren“ öffnet sich.

    Dialog Pakete importieren mit zwei ausgewählten .opsi-Dateien

  2. Zieh eine oder mehrere .opsi-Dateien in das Feld „.opsi-Dateien hierher ziehen oder auswählen“ oder klick auf Dateien auswählen. Andere Dateitypen und doppelt gewählte Dateien werden ignoriert.

  3. Optional: Aktivier Vorhandene Entwurfsversion gleicher Nummer überschreiben, wenn eine schon vorhandene Version ersetzt werden soll.

  4. Klick auf Import starten.

oPBWeb lädt die Dateien nacheinander hoch und importiert sie. Jede Zeile zeigt den Zustand: „bereit“, „lädt hoch“, „wird importiert“, „importiert“ oder „fehlgeschlagen“. Unter der Liste läuft das Protokoll aller Importe in einem gemeinsamen Feld mit. Solange der Import läuft, ist Schließen deaktiviert.

Beim Import übernimmt oPBWeb die control-Daten und den Changelog in seine Datenbank. Das Format der control-Datei (INI oder TOML) und die Ablage des Changelogs bleiben erhalten. Alte Sicherungen control-*.bak des opsiPackageBuilders übernimmt oPBWeb nicht; das Job-Protokoll nennt ihre Anzahl.

Aus der Workbench importieren

Rollen: Packager, Releaser, Administrator

Liegen Paketquellen als Projektordner in der Workbench eines Configservers, kannst du sie direkt übernehmen – einzeln, mehrere oder alle auf einmal.

Dialog „Import aus der Workbench“ mit Auswahl des Configservers und Zustand je Projekt

  1. Klick auf Workbench …. Der Dialog „Import aus der Workbench“ öffnet sich.

  2. Wähl oben unter Configserver den Server, dessen Workbench du lesen willst. Die Liste zeigt jeden Server mit Name und Stufe. oPBWeb merkt sich deine Wahl in diesem Browser; ohne frühere Wahl ist der erste Server der Stufe Test vorbelegt, sonst der erste Server. Der Dialog liest die Workbench automatisch ein („Lese Workbench …“), auch nach jedem Wechsel des Servers.

  3. Prüf die Tabelle. Sie zeigt Projektordner, Product-ID, Version, Format und Zustand:

    ZustandBedeutung
    „neues Paket“Die Product-ID gibt es in oPBWeb noch nicht.
    „neue Version“Das Paket gibt es, diese Version noch nicht.
    „Entwurf vorhanden“Die Version gibt es schon als Entwurf.
    „freigegeben vorhanden“Die Version gibt es schon und sie ist freigegeben.
    „archiviert“Das Paket ist archiviert und lässt sich nicht importieren.

    Ordner ohne OPSI-Ordner oder mit unlesbarer control-Datei zeigen den Grund in der Spalte Format und haben kein Häkchen. Mit dem Filterfeld grenzt du die Liste ein.

  4. Setz die Häkchen bei den Projektordnern, die du importieren willst. Das Häkchen im Tabellenkopf wählt alle aus, Alle neuen auswählen wählt alle Ordner, deren Version es in oPBWeb noch nicht gibt.

  5. Leg unter Vorhandene Versionen fest, was mit Ordnern geschehen soll, deren Version es schon gibt:

    • „überspringen“ (voreingestellt): Der Ordner wird nicht importiert.
    • „Entwürfe überschreiben“: Ein vorhandener Entwurf wird ersetzt. Freigegebene Versionen werden übersprungen.
    • „als nächste Paketversion importieren“: oPBWeb legt die Version mit der nächsten freien Paketversion an (höchste numerische Paketversion dieser Produktversion + 1).
  6. Klick auf Ausgewählte importieren (n).

Der Import läuft als ein einziger Job „Import aus Workbench (Server), Projekte: n“ und arbeitet die Ordner nacheinander ab. Den Fortschritt siehst du als „Importiere … 40 %“. Schließt du den Dialog, läuft der Job trotzdem weiter. Schlägt ein Ordner fehl, macht oPBWeb mit den übrigen weiter.

Danach zeigt jede Zeile ihr Ergebnis: „importiert als 1.0-2“, „übersprungen“ oder „fehlgeschlagen“ (den Grund zeigt der Tooltip). Unten steht eine Zusammenfassung wie „3 importiert, 1 übersprungen, 0 fehlgeschlagen“. Das Job-Protokoll unter Jobs enthält eine Zeile pro Projekt.

Übernommen werden nur die Ordner OPSI, CLIENT_DATA und SERVER_DATA; andere Inhalte der Projektordner bleiben unberührt. Mit Neu einlesen aktualisierst du die Liste. Freigegebene Versionen überschreibt der Import nie.

Einzelne Ordner kannst du auch unter Depots im Reiter Dateien mit In oPBWeb importieren übernehmen, siehe Depots . Wurde eine importierte Version später direkt auf der Workbench geändert, holst du die Änderungen mit Mit Workbench abgleichen … im Paket-Editor nach, siehe Paket-Editor .

Übergabe vom opsi-setup-detector

Rollen: Packager, Releaser, Administrator

Der opsi-setup-detector kann nach dem Erzeugen der Produktdateien den alten opsiPackageBuilder starten. Mit dem Launcher von oPBWeb öffnet sich an dieser Stelle stattdessen oPBWeb im Browser und fragt, ob du den neuen Workbench-Ordner importieren willst.

Launcher einrichten

  1. Lade den Launcher für dein System herunter: im Dialog „Import aus der Workbench“ über Launcher für den opsi-setup-detector herunterladen oder direkt unter /downloads/ deiner oPBWeb-Adresse. Es gibt je eine ZIP-Datei für Windows, macOS und Linux (amd64 und arm64).

  2. Entpack die Datei. Sie heißt opsipackagebuilder.exe (Windows) bzw. opsipackagebuilder. Den Namen darfst du nicht ändern, der opsi-setup-detector akzeptiert nur diesen.

  3. Leg sie an einen Ort, an dem der opsi-setup-detector sie findet, oder trag den Pfad in dessen Konfiguration unter PathToOpsiPackageBuilder ein:

    SystemStandardpfad
    WindowsC:\Program Files (x86)\opsi PackageBuilderNG\opsipackagebuilder.exe
    macOS/Applications/opsiPackageBuilder.app/Contents/MacOS/opsipackagebuilder
    Linux/usr/bin/opsipackagebuilder
  4. Hinterleg einmalig die Adresse von oPBWeb:

    opsipackagebuilder --set-url https://opbweb.example.org
    

    Alternativ legst du neben dem Launcher eine Datei opb-launcher.conf mit der Zeile url = https://opbweb.example.org an (gilt dann für alle Benutzer des Rechners) oder setzt die Umgebungsvariable OPBWEB_URL.

  5. Arbeitet der opsi-setup-detector mit einem verbundenen Laufwerk (zum Beispiel W:\) statt mit einem UNC-Pfad, hinterleg zusätzlich den Configserver dieser Workbench:

    opsipackagebuilder --set-server opsi-test.example.org
    

    Alternativ trägst du in opb-launcher.conf die Zeile server = opsi-test.example.org ein oder setzt die Umgebungsvariable OPBWEB_SERVER.

Der opsi-setup-detector und oPBWeb müssen dieselbe Workbench verwenden: Der opsi-setup-detector schreibt in die Workbench-Freigabe eines Configservers, und dieser Server muss in oPBWeb eingerichtet sein. Der Launcher teilt oPBWeb mit, um welchen Configserver es geht: Bei einem UNC-Pfad wie \\opsi-test.example.org\opsi_workbench\firefox ist es der Hostname aus dem Pfad, sonst der mit --set-server hinterlegte Server.

Übergabe nutzen

  1. Wähl im opsi-setup-detector als Modus create opsi product files and start the interactive PackageBuilder und erzeuge das Produkt.

  2. oPBWeb öffnet sich im Browser. Bist du nicht angemeldet, meldest du dich zuerst an.

  3. Der Dialog „Übergabe vom opsi-setup-detector“ liest den Workbench-Ordner. Sind mehrere Configserver eingerichtet, ist unter Configserver der Server vorgewählt, den der Launcher übergeben hat (Hostname oder Kurzname). Kennt oPBWeb diesen Server nicht, erscheint ein Hinweis und vorbelegt ist der zuletzt gewählte; dann wählst du den passenden Server aus. Danach fragt der Dialog je nach Lage:

    LageAuswahl
    Das Paket gibt es in oPBWeb noch nichtImportieren oder Abbrechen
    Das Paket gibt es, die Version noch nichtNeue Version anlegen oder Abbrechen
    Die Version gibt es schonAls … anlegen (nächste freie Paketversion, zum Beispiel 1.0-3 statt 1.0-2), Entwurf überschreiben (nur wenn die vorhandene Version ein Entwurf ist) oder Abbrechen
    Das Paket ist archiviertnur Abbrechen; stell das Paket erst wieder her
  4. Nach dem Import öffnet sich die neue Version im Editor.

Die Modi Bauen und Bauen + Installieren des opsi-setup-detectors brauchen den Launcher nicht: Ab opsi 4.2.0.311 baut der opsi-setup-detector dann direkt über den opsi-Service. Ruft er den Launcher trotzdem zum Bauen auf, meldet der Launcher einen Fehler, denn oPBWeb baut nicht über die Kommandozeile.

Meta-Paket anlegen

Rollen: Packager, Releaser, Administrator

Ein Meta-Paket installiert eine Reihe anderer Produkte. Es enthält selbst kein Programm, sondern nur Abhängigkeiten: Jedes gewählte Produkt wird zur Abhängigkeit „setup, installiert, vorher“. Das Script des Meta-Pakets tut nichts.

  1. Klick auf Meta-Paket …. Der Dialog „Neues Meta-Paket“ öffnet sich.

    Dialog Neues Meta-Paket mit Produktauswahl rechts und Reihenfolge links

  2. Füll links die Felder aus:

    • Product-ID: vorbelegt mit dem Präfix aus den Einstellungen (Standard meta-). Es gelten dieselben Regeln wie bei einem neuen Paket.
    • Name, Beschreibung: optional.
    • Produktversion, Paketversion: vorbelegt aus den Einstellungen.
  3. Wähl rechts die Produkte aus. Mit „Produkte filtern …“ grenzt du die Liste ein. Zur Auswahl stehen alle Pakete in oPBWeb und alle Produkte, die auf den Depots gefunden wurden; Produkte, die es nur auf einem Depot gibt, sind mit „nur im Depot“ markiert.

  4. Bring die Produkte unter Reihenfolge mit ↑ und ↓ in die gewünschte Installationsreihenfolge. Mit × entfernst du ein Produkt aus der Auswahl.

  5. Klick auf Anlegen. Die Schaltfläche ist aktiv, sobald die Product-ID gültig ist und mindestens ein Produkt gewählt ist.

oPBWeb öffnet das neue Meta-Paket im Editor. Es bekommt die Priorität und den Namen des Setup-Scripts aus den Einstellungen (Standard: Priorität −100, Script dummy.opsiscript) und kein uninstall-Script. Ein Meta-Paket kann sich nicht selbst enthalten; maximal sind 200 Produkte möglich.

Version löschen

Rollen: Packager, Releaser, Administrator

Eine einzelne Version löschst du im Paket-Editor:

  1. Öffne die Version im Paket-Editor und wähl den Abschnitt Produkt.
  2. Klick unten auf Diese Version löschen.
  3. Bestätige die Rückfrage „Version … endgültig löschen?“.

Das Löschen ist auch bei freigegebenen Versionen möglich und lässt sich nicht rückgängig machen. Ist die Version auf einem Produktions-Depot installiert, darf sie nur ein Releaser löschen (siehe Stufenregel ). Die gebaute .opsi-Datei der Version wird mit gelöscht. Ist es die letzte Version, verschwindet das ganze Paket aus der Liste. Danach öffnet oPBWeb eine andere Version des Pakets oder die Paketliste.

Paket archivieren

Rollen: Packager, Releaser, Administrator

Ein Paket, das du nicht mehr brauchst, aber behalten willst, archivierst du:

  1. Wähl das Paket in der Paketliste aus.
  2. Klick in den Details unter Paket auf Archivieren.
  3. Bestätige die Rückfrage „… archivieren? Das Paket verschwindet aus der Liste und wird schreibgeschützt, die gebauten .opsi-Dateien werden gelöscht.“

Ein archiviertes Paket

Laufen für das Paket noch Jobs oder warten welche, lehnt oPBWeb das Archivieren ab. Auf den Depots installierte Produkte bleiben erhalten; du kannst sie in den Details weiterhin mit Deinstallieren … entfernen.

Zum Zurückholen wählst du das Paket unter Archiv aus und klickst auf Wiederherstellen. Die Versionen behalten ihren Status. Vor dem nächsten Installieren musst du das Paket neu bauen.

Paket löschen

Rollen: Packager, Releaser, Administrator

Ein ganzes Paket mit allen Versionen löschst du in der Paketliste, auch wenn es archiviert ist:

  1. Wähl das Paket aus.
  2. Klick in den Details unter Paket auf Paket löschen ….
  3. Gib zur Bestätigung die Product-ID ein und klick auf Endgültig löschen. Die Schaltfläche ist erst aktiv, wenn die Eingabe genau stimmt.

Gelöscht werden alle Versionen, ihre Dateien und Build-Ergebnisse. Das lässt sich nicht rückgängig machen. Ist irgendeine Version des Produkts auf einem Produktions-Depot installiert, darf nur ein Releaser das Paket löschen.

Paket-Editor

control-Daten eines Pakets bearbeiten: Produkt, Abhängigkeiten, Properties, Changelog und Quelltext

Rollen: Leser, Packager, Releaser, Administrator

Überblick

Im Paket-Editor bearbeitest du eine Paketversion: die control-Daten (Produktangaben, Scripte, Abhängigkeiten, Properties), den Changelog und die Dateien des Pakets. Dieses Kapitel beschreibt den Reiter control. Wie du mit Dateien und Scripten arbeitest, steht in Dateien des Pakets und Scripteditor .

Bearbeiten kannst du nur Entwürfe, und nur mit mindestens der Rolle Packager. Als Leser und bei freigegebenen Versionen sind alle Felder gesperrt; ansehen kannst du alles.

Editor öffnen

Du öffnest den Editor auf einem dieser Wege:

Aufbau

Der Editor ist in drei Bereiche geteilt:

Werkzeugleiste des control-Reiters

ElementFunktion
Bearbeiten | QuelltextWechselt zwischen Formular und erzeugtem Quelltext.
Produkt | Abhängigkeiten | Properties | ChangelogAbschnitte des Formulars. Bei Abhängigkeiten und Properties steht die Anzahl dahinter, ein ● markiert ungespeicherte Änderungen.
VersionsauswahlAlle Versionen des Pakets mit Status (zum Beispiel „1.0-2 · Entwurf“). Eine Auswahl wechselt zu dieser Version.
„gebaut“ / „seit dem Bauen geändert“Zustand des letzten Builds (nur bei Entwürfen mit Build).
BauenErzeugt die .opsi-Datei. Deaktiviert, solange es ungespeicherte Änderungen gibt.
SpeichernSpeichert alle geänderten Abschnitte und geänderten offenen Dateien. Nur aktiv, wenn es Änderungen gibt.
.opsi herunterladenLädt den letzten Build herunter (nur, wenn einer existiert).
Installieren …Verteilt den Build auf Depots.
⋯ (Weitere Aktionen)Neue Version, In Workbench exportieren …, Mit Workbench abgleichen …, .opsi herunterladen, .md5 herunterladen, Deinstallieren …

Bauen, Speichern und Installieren … siehst du nur mit mindestens der Rolle Packager. Bauen, Installieren und Exportieren beschreibt Bauen und verteilen . In Workbench exportieren … fragt dabei unter Configserver, in welche Workbench geschrieben wird. Den Abgleich mit der Workbench beschreibt Mit Workbench abgleichen .

Speichern und ungespeicherte Änderungen

Änderungen im Formular landen erst mit Speichern auf dem Server. oPBWeb zeigt nach dem Speichern kurz „Gespeichert“.

Willst du den Editor oder die Version mit ungespeicherten Änderungen verlassen, fragt oPBWeb nach: „Es gibt ungespeicherte Änderungen. Trotzdem verlassen?“. Auch der Browser warnt beim Schließen des Tabs.

Abschnitt Produkt

Abschnitt Produkt mit Produktangaben, Scripten je Aktion und Paketformat

Produkt

FeldBeschreibung
Product-IDNur lesbar. Die Product-ID lässt sich nach dem Anlegen nicht mehr ändern.
NameAnzeigename des Produkts
Typlocalboot oder netboot
PrioritätGanzzahl von −100 bis 100. Produkte mit höherer Priorität werden auf dem Client früher ausgeführt.
Produktversion, PaketversionNur lesbar. Eine andere Versionsnummer bekommst du über Neue Version.
Lizenzpflicht„nein“, „ja“ oder „nicht gesetzt“
ProduktklassenOptional, mehrere durch Komma getrennt
BeschreibungBeschreibung des Produkts
Hinweis (Advice)Hinweistext für Administratoren in opsi

Scripte je Aktion

Für jede Aktion (setup, uninstall, update, always, once, custom, userLogin) wählst du das Script aus. Zur Auswahl stehen „—“ (kein Script) und alle Script-Dateien unter CLIENT_DATA/ mit den Endungen .opsiscript, .ins und .opsiinc.

Verweist die control-Datei auf ein Script, das es nicht gibt, steht dahinter „(Datei fehlt)“. So ein Paket lässt sich nicht bauen, bis du die Datei anlegst oder die Auswahl änderst.

Paket

FeldBeschreibung
Format control„INI (Altformat)“ erzeugt OPSI/control, „TOML“ erzeugt OPSI/control.toml.
ChangelogWo der Changelog liegt: „Changelog eingebettet“ (als Abschnitt [Changelog] in der INI-control-Datei), „changelog.txt“ oder „changelog.md“ im Ordner OPSI/. Bei TOML ist „Changelog eingebettet“ nicht möglich.
PaketabhängigkeitenPakete, die auf dem Depot vorhanden sein müssen, als Liste mit Komma, optional mit Bedingung: zum Beispiel opsi-script (>=4.12), mshotfix. Ohne Bedingung gilt >=.

Änderst du das Format, erscheint der Hinweis „Beim Speichern wird das Format des Pakets umgestellt. Die Quelltext-Ansicht zeigt das Ergebnis vorher.“ Steht beim Wechsel auf TOML der Changelog noch auf „eingebettet“, legt oPBWeb ihn beim Speichern als changelog.txt ab.

Diese Version löschen

Unter dem Abschnitt Produkt findest du als Packager die Schaltfläche Diese Version löschen. Sie funktioniert auch bei freigegebenen Versionen. Details stehen in Pakete .

Abschnitt Abhängigkeiten

Hier legst du fest, welche anderen Produkte vor oder nach diesem Produkt installiert sein müssen.

Abschnitt Abhängigkeiten eines Meta-Pakets mit drei Einträgen

  1. Klick auf + Abhängigkeit. Eine neue Zeile mit „setup / setup / before“ erscheint.
  2. Füll die Spalten aus:
    • Für Aktion: Bei welcher Aktion dieses Produkts die Abhängigkeit gilt (setup, uninstall, update, always, once, custom, userLogin).
    • Benötigtes Produkt: Product-ID des anderen Produkts. Bekannte Product-IDs werden beim Tippen vorgeschlagen.
    • Benötigte Aktion: Aktion, die für das andere Produkt gesetzt wird, oder „—“.
    • Benötigter Status: installed, not_installed, unknown oder „—“.
    • Reihenfolge: before (vorher), after (nachher) oder „—“.
    • Version: optional, die benötigte Version.
  3. Klick auf Speichern.

Pro Abhängigkeit muss entweder eine benötigte Aktion oder ein benötigter Status angegeben sein. Mit × am Zeilenende entfernst du eine Abhängigkeit.

Abschnitt Properties

Properties sind Einstellungen, die opsi-Administratoren pro Client oder Depot setzen können und die deine Scripte auslesen.

Abschnitt Properties mit aufgeklapptem Property und Prüfergebnis

Property anlegen oder bearbeiten

  1. Klick auf + Property. oPBWeb legt ein Property property_<n> vom Typ unicode an und klappt den Editor auf. Ein Klick auf ▸ klappt ein vorhandenes Property auf.
  2. Füll die Felder aus:
    • Name: Buchstaben, Ziffern, _, . und -; jeder Name darf in der Version nur einmal vorkommen.
    • Typ: unicode (Text) oder bool (true/false).
    • Bei unicode: Mehrfachwerte (mehrere Werte gleichzeitig wählbar) und editierbar (eigene Werte erlaubt).
    • Beschreibung.
    • Bei unicode: Werte unter „Werte · Klick markiert/entfernt Default“. Tipp einen Wert in „Wert hinzufügen …“ und drück Enter. Ein Klick auf einen Wert markiert ihn als Default oder hebt das auf, × entfernt ihn.
    • Bei bool: Default true oder false.
  3. Klick auf Speichern.

Scripte prüfen

Scripte prüfen durchsucht alle Scripte des Pakets nach GetProductProperty, GetConfidentialProductProperty und GetProductPropertyList und vergleicht die gelesenen Properties mit den definierten:

Geprüft werden nur die Scripte dieses Pakets, nicht die uib-Bibliotheken auf dem Client. Die Prüfung kannst du auch als Leser starten; Anlegen braucht einen Entwurf und die Rolle Packager.

Abschnitt Changelog

Ein Etikett neben der Überschrift nennt, wo der Changelog liegt (OPSI/changelog.md, OPSI/changelog.txt oder OPSI/control [Changelog]). Daneben schaltest du zwischen Einträge und Freitext um.

Abschnitt Changelog in der Ansicht Einträge mit aufgeklapptem Eintrag

Einträge

Entspricht der Changelog der Standardform, öffnet oPBWeb ihn als Liste der Einträge. Standardform heißt:

Ein Klick auf eine Zeile klappt den Eintrag auf. Dort änderst du Version, Status und Dringlichkeit (nur Debian-Stil), Text, Autor, E-Mail und Datum; Jetzt setzt das aktuelle Datum. Mit ↑ und ↓ verschiebst du einen Eintrag, × löscht ihn nach einer Rückfrage. Gespeichert wird mit Speichern in der Werkzeugleiste. Unveränderte Einträge schreibt oPBWeb zeichengenau zurück, eine Änderung betrifft also nur die Zeilen des geänderten Eintrags.

Freitext

Im Freitext bearbeitest du den Changelog direkt im Texteditor; speichern kannst du mit Speichern oder Strg S. Weicht der Text von der Standardform ab, steht darüber „Der Changelog entspricht nicht der Standardform. Bearbeiten ist nur als Freitext möglich.“ und Einträge ist gesperrt. Sobald der Text wieder der Standardform entspricht, kannst du zurückschalten.

Eintrag hinzufügen

  1. Klick auf + Eintrag für … (die aktuelle Version steht im Namen der Schaltfläche).
  2. Trag im Dialog „Neuer Changelog-Eintrag“ unter Änderungen (eine pro Zeile) deine Änderungen ein.
  3. Bei txt- und eingebettetem Changelog: Wähl Status (testing, stable, unstable; Standard testing) und Dringlichkeit (low, medium, high, critical; Standard low).
  4. Klick auf Hinzufügen.

Der Eintrag wird oben eingefügt, mit deinem Namen, deiner E-Mail-Adresse und dem aktuellen Datum. Hast du keine E-Mail-Adresse hinterlegt, verwendet oPBWeb benutzername@<Mail-Domain> aus den Einstellungen. In der Ansicht Einträge ist der neue Eintrag danach aufgeklappt und wird mit Speichern gespeichert; im Freitext speichert oPBWeb ihn sofort.

Mit Workbench abgleichen

Rollen: Packager, Releaser, Administrator

Manchmal ändert jemand ein Paket direkt in der Workbench eines Configservers, zum Beispiel ein Script, und baut es dort neu. Mit ⋯ › Mit Workbench abgleichen … holst du solche Änderungen in die Version in oPBWeb, damit sie nicht verloren gehen.

Abgleich mit der Workbench mit aufgeklapptem Unterschied einer Script-Datei

Der Abgleich geht nur in eine Richtung, von der Workbench nach oPBWeb, und bietet nur an, was auf der Workbench neuer ist. Später in oPBWeb geänderte Dateien überschreibt er nicht, Dateien, die auf der Workbench fehlen, löscht er nicht.

  1. Öffne die Version im Editor und wähl ⋯ › Mit Workbench abgleichen …. Der Dialog „Abgleich mit der Workbench: firefox 128.0-1“ öffnet sich und vergleicht sofort.

  2. Prüf oben die Vorgaben und klick nach einer Änderung auf Vergleichen:

    • Configserver: der Server, dessen Workbench verglichen wird.
    • Projektordner: vorbelegt mit dem Ordner, aus dem die Version importiert wurde, sonst mit der Product-ID.
    • Der Chip Nur Unterschiede (voreingestellt aktiv) blendet gleiche Dateien aus.
  3. Prüf die Tabelle mit den Spalten Datei, Zustand, Workbench geändert und oPBWeb geändert (Zeitpunkt der letzten Änderung):

    ZustandBedeutungÜbernehmbar
    „neu auf der Workbench“Die Datei gibt es nur auf der Workbench.ja, vorausgewählt
    „auf der Workbench neuer“Die Datei wurde auf der Workbench später geändert als in oPBWeb.ja, vorausgewählt
    „in oPBWeb neuer“Die Datei wurde in oPBWeb später geändert.nein, wird nie überschrieben
    „nur in oPBWeb“Die Datei fehlt auf der Workbench.nein, wird nie gelöscht
    „gleich“kein Unterschied–

    Ein Klick auf eine Zeile mit ▸ zeigt die Unterschiede: rot ist der Stand in oPBWeb, grün der Stand auf der Workbench. Unten steht eine Zusammenfassung wie „Übernehmbar: 2 · gleich: 14“.

  4. Entferne die Häkchen bei allem, was du nicht übernehmen willst, und klick auf Übernehmen (n).

Nach dem Übernehmen meldet oPBWeb „Änderungen aus der Workbench übernommen“, vergleicht erneut und lädt die Version im Editor neu. Verglichen werden nur die Ordner OPSI/, CLIENT_DATA/ und SERVER_DATA/; alte Sicherungen control-*.bak werden ignoriert. Vergleich und Übernahme laufen als Jobs („Abgleich mit Workbench (Server): …“, „Aus Workbench übernehmen (Server): …“).

control-Daten

control-Datei und Changelog-Datei erscheinen gemeinsam als eine Zeile „control-Daten (control, changelog.txt)“. oPBWeb vergleicht hier die Daten, nicht den Text: Eine andere Formatierung, etwa andere Leerzeichen, zählt nicht als Unterschied. Übernimmst du diese Zeile, ersetzt oPBWeb Produktdaten, Abhängigkeiten, Properties und Changelog der Version durch den Stand der Workbench.

Freigegebene Versionen

Übernehmen kannst du nur in einen Entwurf. Bei einer freigegebenen Version zeigt der Dialog die Unterschiede, meldet aber „Diese Version ist freigegeben. Zum Übernehmen erst eine neue Version anlegen und diese abgleichen.“ Leg dann mit Neue Version eine neue Version an und gleiche diese ab.

Quelltext-Ansicht

Quelltext zeigt die control-Datei und den Changelog so, wie sie beim Bauen erzeugt werden. Die Ansicht ist nur zum Lesen und steht allen Rollen zur Verfügung.

Quelltext-Ansicht mit Gliederung links und INI/TOML-Umschalter

Die Quelltext-Ansicht zeigt den gespeicherten Stand. Ungespeicherte Änderungen im Formular siehst du dort erst nach dem Speichern.

Freigegebene Versionen

Sobald eine Version auf einem Depot installiert wurde, ist sie freigegeben und schreibgeschützt. Oben im Editor erscheint dann:

Version … ist freigegeben (installiert) und schreibgeschützt. Für Änderungen eine neue Version anlegen oder zurück auf Entwurf setzen.

In diesem Zustand gilt:

AktionWirkung
Neue VersionLegt eine bearbeitbare Kopie mit allen Daten und Dateien an. Vorbelegt sind dieselbe Produktversion und die Paketversion +1 (bei nicht-numerischer Paketversion wird .1 angehängt). Die freigegebene Version bleibt unverändert.
Zurück auf EntwurfMacht genau diese Version wieder zum Entwurf, ohne die Versionsnummer zu ändern. Ist sie auf einem Produktions-Depot installiert, darf das nur ein Releaser.

Dateien des Pakets

Dateibaum, Hochladen, Kontextmenü, MSI-Informationen und die Include-Struktur der Scripte.

Rolle: Packager

Überblick

Jede Paketversion besteht aus den drei Bereichen OPSI/, CLIENT_DATA/ und SERVER_DATA/. Im Paket-Editor siehst du sie links unter dem Reiter Dateien. Dort legst du Dateien und Ordner an, lädst Installer hoch, benennst um, verschiebst und löschst. Der Reiter Struktur daneben zeigt, welche Scripte welche anderen Scripte einbinden.

Ändern kannst du Dateien nur in einer Version mit dem Status Entwurf und mit mindestens der Rolle Packager. In freigegebenen Versionen und mit der Rolle Leser ist der Dateibaum schreibgeschützt: Öffnen und Herunterladen funktionieren weiterhin, alle ändernden Einträge im Kontextmenü sind ausgegraut.

Der Dateibaum

Die drei Bereiche stehen immer oben im Baum. OPSI/ und CLIENT_DATA/ sind beim Öffnen aufgeklappt. Ein Bereich ohne Inhalt trägt den Vermerk „leer“. Bei Binärdateien steht die Dateigröße hinter dem Namen.

Die Bereiche selbst kannst du weder umbenennen noch löschen.

Das Kontextmenü

Ein Rechtsklick auf eine Datei oder einen Ordner öffnet das Kontextmenü.

Dateibaum mit geöffnetem Kontextmenü

EintragWirkung
ÖffnenÖffnet die Datei als Reiter (nur bei Dateien).
HerunterladenLädt die Datei auf deinen Rechner (nur bei Dateien).
MSI-InformationenZeigt die Eigenschaften eines Windows-Installers (nur bei .msi-Dateien).
Neue DateiLegt eine Datei im gewählten Ordner an. Vorgeschlagen wird neu.opsiscript.
Neuer OrdnerLegt einen Unterordner an.
Dateien hochladen …Öffnet die Dateiauswahl deines Browsers; die Dateien landen im gewählten Ordner.
Umbenennen / verschiebenFragt nach dem Neuen Pfad. Gibst du dabei einen anderen Ordner an, wird die Datei dorthin verschoben. Das geht auch mit ganzen Ordnern.
LöschenLöscht nach einer Rückfrage die Datei bzw. den Ordner mit Inhalt.

Bei einem Rechtsklick auf eine Datei beziehen sich Neue Datei, Neuer Ordner und Dateien hochladen … auf den Ordner, in dem die Datei liegt.

Ein Rechtsklick auf die freie Fläche unterhalb der Einträge zeigt nur Neue Datei, Neuer Ordner und Dateien hochladen …; Ziel ist dann CLIENT_DATA/.

Neue Datei anlegen

  1. Klick mit der rechten Maustaste auf den Zielordner, z. B. CLIENT_DATA/.
  2. Wähl Neue Datei.
  3. Gib im Feld „Name in CLIENT_DATA/“ den Dateinamen ein, z. B. install.opsiinc.
  4. Bestätige den Dialog. Die Datei wird angelegt und erscheint im Baum.

Dateien hochladen

Du hast zwei Wege, um Dateien ins Paket zu bringen:

Während des Hochladens zeigt ein Fortschrittsbalken den Stand. Danach meldet oPBWeb „3 Datei(en) hochgeladen“. Eine vorhandene Datei mit gleichem Pfad wird ohne Rückfrage ersetzt.

Ausführbare Dateien

Ob eine Datei ausführbar ist (z. B. ein Shell-Script unter Linux), zeigt der Dateibaum nicht an. oPBWeb übernimmt das Kennzeichen beim Import eines .opsi-Pakets und setzt es beim Bauen wieder. Beim Import aus der Workbench werden .sh- und .py-Dateien in CLIENT_DATA/ automatisch als ausführbar markiert.

MSI-Informationen

Für .msi-Dateien liest oPBWeb die wichtigsten Eigenschaften direkt aus dem Installer. Das ist praktisch, um ProductCode und Version für dein Script zu übernehmen.

  1. Klick mit der rechten Maustaste auf die .msi-Datei.
  2. Wähl MSI-Informationen. Der Dialog „MSI: setup.msi“ zeigt kurz „Lese MSI-Datei …“ und dann eine Tabelle, u. a. mit ProductName, ProductVersion, ProductCode, UpgradeCode, Manufacturer und ProductLanguage.
  3. Klick neben einem Wert auf Kopieren, um ihn in die Zwischenablage zu übernehmen. Der Knopf zeigt kurz „kopiert“.
  4. Mit Alle Properties anzeigen (24) blendest du die vollständige Property-Tabelle des Installers ein, mit Weniger anzeigen wieder aus.

Dialog MSI-Informationen mit ProductCode und Kopieren-Knöpfen

Der Reiter Struktur

Der Reiter Struktur zeigt, wie die Scripte des Pakets zusammenhängen. Ausgangspunkt sind die Scripte, die im control für die einzelnen Aktionen (setup, uninstall, update …) eingetragen sind.

Reiter Struktur mit Aktions-Scripten und eingebundenen Dateien

Sind im control keine Aktions-Scripte hinterlegt, erscheint „Keine Aktions-Skripte im Control hinterlegt.“

Scripteditor

opsi-Scripte und andere Textdateien des Pakets bearbeiten: Hervorhebung, Vervollständigung, Diagnose, Hilfe und Snippets.

Rolle: Packager

Überblick

Textdateien des Pakets öffnest du per Klick im Dateibaum (siehe Dateien des Pakets ). Sie erscheinen als eigener Reiter neben dem Reiter control im Scripteditor. Für opsi-Scripte bietet der Editor Vervollständigung, Fehlerprüfung, Hilfe zu den Befehlen und Snippets. Alle anderen Textformate bekommen eine Syntaxhervorhebung. Die Farben der Hervorhebung legst du pro Dateityp unter Mein Konto fest.

Bearbeiten kannst du Dateien nur in einer Version mit dem Status Entwurf und mindestens mit der Rolle Packager. Sonst ist der Editor schreibgeschützt; Lesen, Suchen, Hilfe und das Kopieren von Text funktionieren trotzdem.

Scripteditor mit geöffnetem opsi-Script und Seitenleiste Snippets

Aufbau

Zeilenenden bleiben beim Speichern erhalten: Eine Datei mit Windows-Zeilenenden (CRLF) bleibt eine CRLF-Datei.

Unterstützte Sprachen

Die Sprache erkennt der Editor am Dateinamen.

SpracheDateien
opsi-script.opsiscript, .opsiinc, .ins, .opsifunc
Shell / Batchpreinst, postinst, .sh, .cmd, .bat
Inno Setup.iss, .isl
AutoIt.au3
PowerShell.ps1, .psm1, .psd1
INI und ähnliche.ini, .inf, .reg, .cfg, .conf, .properties, .toml, .desktop
XML.xml, .xsd, .xsl, .manifest, .config, .plist, .svg
YAML.yml, .yaml
JSON.json
Python.py

Für opsi-script kennt der Editor den Sprachumfang aus dem opsi-script-Handbuch 4.3: Anweisungen, eingebaute Funktionen, Sektionstypen, Befehle der Sekundärsektionen und Konstanten. Dazu kommen die Funktionen der uib-Bibliotheken, die opsi-script mitbringt (z. B. uib_exitcode.opsiscript, uib_strlistutils.opsiscript, uib_backend.opsiscript, osd-lib.opsiscript).

Alle weiteren Funktionen – Vervollständigung, Diagnose, Hilfe, Kontextmenü, Snippets und Seitenleiste – gibt es nur für opsi-Scripte.

Vervollständigung

Beim Tippen schlägt der Editor passende Einträge vor. Mit Strg+Leertaste öffnest du die Liste jederzeit von Hand. Mit den Pfeiltasten wählst du aus, mit Enter übernimmst du den Eintrag.

Vorgeschlagen werden:

Übernimmst du eine Funktion, setzt der Editor die Klammern gleich mit und stellt den Cursor hinein. Innerhalb der Klammern zeigt ein kleiner Hinweis die Signatur; der Parameter, an dem du gerade schreibst, ist fett.

Hilfe zu Befehlen

Fährst du mit der Maus über einen Befehl, eine Funktion, eine Variable oder eine Konstante, erscheint ein Hinweis:

Die ausführliche Hilfe steht im Reiter Hilfe der Seitenleiste: Name, Signatur, Beschreibung, Kategorie und Herkunft (z. B. die Bibliothek oder die Datei mit Zeilennummer). Der Reiter zeigt immer die Hilfe zum zuletzt angefragten Befehl, auch wenn du nur mit dem Mauszeiger darauf zeigst. Mit F1 auf dem Befehl oder über das Kontextmenü Hilfe zum Befehl springt die Seitenleiste direkt auf den Reiter Hilfe.

Seitenleiste Hilfe mit Beschreibung eines opsi-script-Befehls

Findet der Editor keinen Eintrag, steht dort „Keine Hilfe zu „Messagebox“ gefunden.“ Die Beschreibungen sind Zusammenfassungen aus dem opsi-script-Handbuch 4.3 der uib GmbH (CC BY-SA 4.0).

Diagnose

Während du schreibst, prüft der Editor die aktuelle Datei und markiert Auffälligkeiten im Text und am linken Rand. Fährst du mit der Maus über eine Markierung, siehst du die Meldung. Die Zähler „2 Fehler“ und „5 Warnungen“ in der Werkzeugleiste fassen das Ergebnis zusammen.

Diagnose im Editor mit markierter Warnung

ArtMeldungBedeutung
Fehler„Sektion [x] ist nicht definiert“Die Datei ruft eine Sektion auf, die es nicht gibt.
Hinweis„Sektion [x] ist in dieser Datei nicht definiert (evtl. in einer eingebundenen Datei)“Wie oben, aber die Sektion kann aus einer eingebundenen Datei stammen (bei sub_-Sektionen und Dateien mit Includes).
Warnung„Variable $x$ wird deklariert, aber in dieser Datei nicht verwendet“Die Variable ist überflüssig.
Warnung„Variable $x$ wird gesetzt, aber in dieser Datei nicht gelesen“Der Wert der Variable wird nie benutzt.

Das Kontextmenü

Ein Rechtsklick in den Text oder Umschalt+F10 öffnet das Kontextmenü. Du kannst es auch mit der Tastatur bedienen: Pfeiltasten, Enter oder Leertaste zum Ausführen, → öffnet das Untermenü, Esc schließt.

EintragTastenkürzel
Gehe zu DefinitionF12
Alle Vorkommen auswählenStrg+Umschalt+L
Hilfe zum BefehlF1
Vorschläge anzeigenStrg+Leertaste
Snippet einfügen ▸Untermenü nach Kategorien
Snippet aus Auswahl erstellen …–
AusschneidenStrg+X
KopierenStrg+C
EinfügenStrg+V
Kommentar umschaltenStrg+Umschalt+C
Sektion faltenStrg+Umschalt+[
Alles faltenStrg+Alt+[
Alles entfaltenStrg+Alt+]
Suchen/ErsetzenStrg+F

Einträge, die den Text ändern, sind in schreibgeschützten Dateien ausgegraut. Erlaubt dein Browser keinen Zugriff auf die Zwischenablage, meldet oPBWeb „Kein Zugriff auf die Zwischenablage – bitte Strg+C/V verwenden.“

Tastenkürzel

Auf dem Mac gilt ⌘ statt Strg und ⌥ statt Alt.

TastenkürzelWirkungDateien
Strg+SDatei speichernalle
Strg+Z / Strg+YRückgängig / Wiederholenalle
Strg+FSuchen/Ersetzen (Leiste oben im Editor)alle
F3 / Umschalt+F3nächster / vorheriger Trefferalle
Strg+/ oder Strg+Umschalt+CKommentar umschaltenalle
Tabeinrückenalle
Alt+Ziehen mit der Mausrechteckige Auswahlalle
Strg+LeertasteVorschläge anzeigenopsi-script
F1Hilfe zum Befehl unter dem Cursoropsi-script
F12 oder Strg+KlickGehe zu Definitionopsi-script
Strg+Umschalt+Lalle Vorkommen auswählenopsi-script
Umschalt+F10Kontextmenü öffnenopsi-script
Tab / Umschalt+Tabnach dem Einfügen eines Snippets zum nächsten / vorherigen Platzhalteropsi-script

Die Seitenleiste

Bei opsi-Scripten steht rechts neben dem Text die Seitenleiste mit vier Reitern. Mit Werkzeugleiste ausblenden in der Werkzeugleiste des Reiters blendest du sie aus, mit Werkzeugleiste einblenden wieder ein.

Snippets

Hier findest du alle Snippets, die du verwenden darfst: die globalen und deine eigenen (Abzeichen „eigen“). Sie sind nach Kategorien gruppiert; das Feld „Snippets filtern …“ grenzt die Liste ein. Zeigst du mit der Maus auf ein Snippet, erscheint unten eine Vorschau der ersten zehn Zeilen mit hervorgehobenen Platzhaltern. Ein Klick auf eine Kategorie klappt sie ein oder aus.

Ein Snippet einfügen:

  1. Setz den Cursor an die Stelle im Script, an der das Snippet stehen soll.
  2. Doppelklick in der Seitenleiste auf das Snippet oder steuere es mit der Tab-Taste an und drück Enter. Alternativ ziehst du das Snippet mit der Maus an die gewünschte Stelle im Text, wählst es im Kontextmenü unter Snippet einfügen oder übernimmst es aus der Vervollständigung.
  3. Enthält das Snippet Platzhalter der Form ${Name}, ist der erste davon markiert. Überschreib ihn und spring mit Tab zum nächsten Platzhalter.

Über den Link Snippets verwalten gelangst du zur Snippet-Verwaltung, siehe Snippets .

Variablen

Ein Klick auf eine Variable oder Sektion springt in die zugehörige Zeile.

Warnungen

Reiter Warnungen mit Warnungen und Hinweisen der Datei, darunter Gehe zu Definition

Listet alle Fehler, Warnungen und Hinweise der Datei untereinander, Fehler zuerst, mit Zeilennummer. Die Zahl am Reiter nennt ihre Anzahl. Ein Klick auf einen Eintrag springt in die Zeile. Bei Sektionen, die in einer anderen Datei stehen können, führt Gehe zu Definition unter der Meldung direkt zur Definition in einem anderen Script des Pakets.

Hilfe

Zeigt die ausführliche Hilfe zum zuletzt angefragten Befehl, siehe Hilfe zu Befehlen . Ist noch nichts angefragt, steht dort „F1 auf einem Befehl zeigt hier die Hilfe an.“

Snippet aus Auswahl erstellen

Code, den du öfter brauchst, machst du direkt im Editor zu einem eigenen Snippet.

  1. Markiere den gewünschten Text im Script.
  2. Öffne mit einem Rechtsklick das Kontextmenü und wähl Snippet aus Auswahl erstellen ….
  3. Im Dialog „Snippet aus Auswahl“ prüfst du den Namen. Vorgeschlagen wird die erste nicht leere Zeile der Auswahl (höchstens 60 Zeichen).
  4. Wähl eine Kategorie oder leg mit Neue Kategorie eine an und gib den Namen der Kategorie ein.
  5. Wähl die Sichtbarkeit: Nur für mich oder – nur als Administrator – Global.
  6. Klick auf Speichern. oPBWeb meldet „Snippet gespeichert“; das Snippet steht sofort in der Seitenleiste zur Verfügung.

Funktionen des Pakets

Funktionen, die du in einem Script des Pakets mit DefFunc definierst, kennt der Editor in allen Scripten desselben Pakets. Sie erscheinen in der Vervollständigung und in der Hilfe, jeweils mit Datei und Zeile der Definition als Herkunft.

Als Beschreibung übernimmt oPBWeb die Kommentarzeilen direkt über dem DefFunc. Kommentare im Stil der uib-Bibliotheken mit @Description und @Returns werden ausgewertet:

; @Description Liefert den Installationspfad des Produkts
; @Returns Pfad als String
DefFunc GetInstallDir(val $Arch$ : string) : string
  ...
EndFunc

Die Liste der Funktionen wird aktualisiert, sobald du eine Datei gespeichert hast.

Speichern

Mit Strg+S oder der Schaltfläche Speichern in der Werkzeugleiste des Reiters speicherst du die Datei. oPBWeb bestätigt mit „Gespeichert“.

Ungespeicherte Änderungen gehen nicht unbemerkt verloren:

Bauen und verteilen

Pakete bauen, auf Depots installieren und deinstallieren, auf andere Stufen übernehmen, Versionen freigeben, zurück auf Entwurf setzen und neue Versionen anlegen.

Rollen: Packager, Releaser

Überblick

Dieses Kapitel beschreibt den Weg einer Paketversion vom Entwurf bis auf die Depots: Bauen erzeugt die .opsi-Datei, Installieren … bringt sie auf ein oder mehrere Depots und gibt die Version dabei frei, Übernehmen … bringt eine getestete Version unverändert auf die Depots der nächsten Stufe. Alle Aktionen findest du in der Werkzeugleiste des Reiters control im Paket-Editor und im Menü ⋯ (Weitere Aktionen).

Bauen, Installieren auf Test- und Staging-Depots und die übrigen Aktionen in diesem Kapitel brauchen mindestens die Rolle Packager. Für produktive Depots ist die Rolle Releaser nötig. Mit der Rolle Leser kannst du gebaute Pakete nur herunterladen.

Der Lebenszyklus einer Version

Entwurf ──Bauen (beliebig oft)──► „gebaut“
   ▲          Änderung → „seit dem Bauen geändert“ → erneut bauen
   │
   │      Installieren … (nur mit aktuellem Build)
   │                     ▼
   └── Zurück auf Entwurf ── Freigegeben (schreibgeschützt)
                              └── Neue Version → neuer Entwurf
StatusBedeutung
EntwurfDie Version lässt sich bearbeiten und beliebig oft bauen.
FreigegebenDie Version wurde installiert und ist schreibgeschützt.

Bauen allein gibt eine Version nicht frei. Freigegeben wird sie erst durch das Installieren auf einem Depot.

Bauen

  1. Öffne die Version im Paket-Editor und wechsle auf den Reiter control.
  2. Speichere alle Änderungen – im control und in allen geöffneten Dateien. Solange etwas ungespeichert ist, bleibt Bauen ausgegraut („Bitte zuerst alle Änderungen speichern.“).
  3. Klick auf Bauen. Die Schaltfläche zeigt „Baut …“, und unten im Panel JOBS läuft das Protokoll des Build-Jobs mit.
  4. Nach dem Ende meldet oPBWeb „Paket gebaut“ bzw. „Build fehlgeschlagen“. Neben der Versionsauswahl erscheint das Abzeichen gebaut.

Werkzeugleiste mit Abzeichen „gebaut“ und den Schaltflächen Bauen und Installieren

Du kannst eine Version im Status Entwurf so oft bauen, wie du willst. Jeder Build ersetzt den vorherigen; die Version bleibt bearbeitbar.

Das Abzeichen „gebaut“

Das Abzeichen zeigt, ob der letzte Build noch zum aktuellen Stand der Version passt:

Ohne Abzeichen wurde die Version noch nie gebaut.

Wenn der Build fehlschlägt

Das Protokoll im Panel JOBS (und unter Jobs ) nennt den Grund. Häufige Ursachen:

MeldungUrsache und Abhilfe
„Script Datei (Aktion) fehlt in CLIENT_DATA.“Im control ist für eine Aktion ein Script eingetragen, das es nicht gibt. Leg die Datei an oder korrigiere den Eintrag unter Produkt › Scripte je Aktion.
„Die Version wurde während des Builds geändert. Bitte erneut bauen.“Jemand hat während des Bauens gespeichert. Bau erneut.
„Für diese Version läuft bereits ein Build.“Warte, bis der laufende Build fertig ist.

Warnungen im Protokoll (kein Script für irgendeine Aktion, keine Dateien in CLIENT_DATA/) brechen den Build nicht ab, deuten aber meist auf ein unvollständiges Paket hin.

Gebautes Paket herunterladen

Sobald es einen Build gibt, lädst du ihn mit .opsi herunterladen in der Werkzeugleiste herunter. Die Prüfsummendatei holst du über ⋯ › .md5 herunterladen. Beides steht jeder Rolle zur Verfügung, auch für freigegebene Versionen.

Installieren

Installieren … überträgt den Build auf die gewählten Depots und installiert ihn dort. Die Schaltfläche ist nur aktiv, wenn

  1. Klick auf Installieren …. Der Dialog „Installieren: firefox 128.0-1“ öffnet sich.

    Dialog Installieren mit Depots, Configserver, Stufen und Optionen

  2. Wähl in der Tabelle die Depots aus. Die Tabelle enthält die Depots aller Configserver. Für jedes Depot siehst du:

    • Depot – die Depot-ID, beim Depot auf dem Configserver selbst mit dem Zusatz „Configserver“,
    • Configserver – der Name des Configservers, zu dem das Depot gehört,
    • Stufe – die wirksame Stufe Produktion, Staging oder Test; kursiv, wenn das Depot sie von seinem Configserver erbt,
    • Installiert – die dort installierte Version und den Zeitpunkt des letzten Abgleichs.

    Vorausgewählt sind die Depots, auf denen du zuletzt installiert hast.

  3. Setz bei Bedarf die Optionen (siehe unten).

  4. Prüf den Zähler „2 von 3 Depots ausgewählt“ und klick auf Installieren.

  5. Der Dialog schließt sich, das Panel JOBS zeigt das Protokoll. Am Ende meldet oPBWeb „Job erfolgreich abgeschlossen“ oder „Job fehlgeschlagen“.

Die Depots werden nacheinander bearbeitet. Ist ein Depot gerade durch einen anderen Job belegt, wartet die Installation, bis es frei ist.

Gesperrte Depots im Dialog

Nicht jedes Depot lässt sich auswählen. Der Grund steht in der letzten Spalte:

HinweisBedeutung
„erfordert Rolle Releaser“Das Depot hat die Stufe Produktion, du hast aber nur die Rolle Packager. Test- und Staging-Depots darfst du als Packager bespielen.
„deaktiviert“Ein Administrator hat das Depot deaktiviert.
„nicht mehr vorhanden“Der Configserver meldet das Depot nicht mehr.

Depots erben die Stufe ihres Configservers; neue Configserver stehen zunächst auf Produktion. Welche Server und Depots Test- oder Staging-Stufe haben, legt ein Administrator fest, siehe opsi-Server und Depot-Verwaltung . Hast du mindestens ein produktives Depot ausgewählt, weist der Dialog mit „Mindestens ein produktives Depot ist ausgewählt.“ darauf hin.

Sind gar keine Depots bekannt, erscheint „Keine Depots bekannt. Bitte unter „Depots“ abgleichen.“ – siehe Depots .

Optionen beim Installieren

Freigegebene Versionen

Nach der Installation ist die Version freigegeben. Im Editor erscheint der Hinweis „Version 128.0-1 ist freigegeben (installiert) und schreibgeschützt. Für Änderungen eine neue Version anlegen oder zurück auf Entwurf setzen.“ mit Dateiname und Größe des Builds sowie den Schaltflächen Neue Version und Zurück auf Entwurf. Alle Formulare, der Dateibaum und der Scripteditor sind schreibgeschützt.

Freigegebene Version mit Hinweis und den Schaltflächen Neue Version und Zurück auf Entwurf

Eine freigegebene Version kannst du jederzeit erneut installieren, z. B. auf weiteren Depots. Installieren … ist dann die hervorgehobene Schaltfläche.

Auf andere Stufe übernehmen

Rollen: Packager, Releaser

Ein Paket, das auf den Test-Depots funktioniert, bringst du mit dieser Aktion unverändert auf die Depots der nächsten Stufe. Übernommen wird genau das Paket, das auf den Depots der Quellstufe installiert ist – derselbe Build, kein neuer. Deshalb lassen sich nur freigegebene Versionen übernehmen.

Dialog „Pakete auf andere Stufe übernehmen“ von Test nach Staging

oPBWeb hat einen gemeinsamen Paketbestand für alle Configserver. Was auf welchem Depot installiert ist, unterscheidet sich je Server und kommt aus dem letzten Abgleich der Depots .

Typischer Ablauf

  1. Auf dem Test-Configserver entwickeln: aus der Workbench importieren, bearbeiten, bauen und auf den Test-Depots installieren. Dabei wird die Version freigegeben.
  2. Testen und die Version mit Übernehmen … von Test nach Staging bringen.
  3. Nach dem Test auf Staging die Version von Staging nach Produktion übernehmen. Dafür ist die Rolle Releaser nötig.

Dialog öffnen

Pakete übernehmen

  1. Wähl oben Von (Quellstufe, voreingestellt Test) nach (Zielstufe, voreingestellt Staging). Quell- und Zielstufe müssen verschieden sein.

  2. Prüf unter Ziel-Depots die Depots, auf die übernommen wird. Angeboten werden alle aktiven Depots der Zielstufe, auf allen Configservern. Vorausgewählt sind alle, die du ändern darfst; produktive Depots ohne die Rolle Releaser sind gesperrt („erfordert Rolle Releaser“).

  3. Prüf die Tabelle der Pakete:

    SpalteInhalt
    Product-IDKennung des Produkts
    Version auf … (z. B. Version auf Test)die neueste Version, die auf einem Depot der Quellstufe installiert ist
    Auf den Ziel-Depots„überall aktuell“ oder „fehlt auf 2 von 3“, dazu die Versionen, die stattdessen auf den Ziel-Depots liegen

    Der Chip Nur ausstehende (voreingestellt aktiv, nur im Dialog für alle Pakete) blendet Pakete aus, die auf allen Ziel-Depots schon aktuell sind. Vorausgewählt sind alle ausstehenden Pakete, die sich übernehmen lassen. Übernehmbare Pakete stehen oben.

  4. Setz bei Bedarf die Optionen:

    • Setup auf allen Clients anfordern, auf denen das Produkt installiert ist und Installation erzwingen (force), auch wenn das Produkt gesperrt ist – wie beim Installieren .
    • Auch auf die Workbench der Ziel-Configserver schreiben (vorhandene Projektordner werden überschrieben) – schreibt die Version zusätzlich als Projektordner in die Workbench jedes Configservers, zu dem ein Ziel-Depot gehört.
  5. Prüf den Zähler „Pakete: 2 · Ziel-Depots: 3“ und klick auf Übernehmen (n).

oPBWeb startet einen Installations-Job pro Version und, falls gewählt, einen Export-Job pro Version und Ziel-Configserver. Es meldet „Jobs gestartet: 3“. Jobs für dasselbe Depot laufen nacheinander. Den Fortschritt verfolgst du unter Jobs .

Warum lässt sich ein Paket nicht übernehmen?

Pakete ohne Häkchen zeigen in der Spalte Auf den Ziel-Depots den Grund:

HinweisBedeutung
„nicht in oPBWeb“Das Produkt gibt es nur auf den Depots, nicht in oPBWeb.
„in oPBWeb wieder Entwurf (kein getesteter Build)“Die Version wurde nach dem Test mit Zurück auf Entwurf wieder bearbeitbar gemacht. Der getestete Build existiert nicht mehr. Bau und installier sie erneut auf der Quellstufe.
„archiviert“Das Paket ist archiviert.

Hast du ein produktives Depot ausgewählt, weist der Dialog mit „Mindestens ein produktives Depot ist ausgewählt.“ darauf hin.

Deinstallieren

Mit ⋯ › Deinstallieren … entfernst du das Produkt von Depots.

  1. Öffne ⋯ und wähl Deinstallieren …. Der Dialog „Deinstallieren: firefox“ öffnet sich.
  2. Vorausgewählt sind alle Depots, auf denen das Produkt installiert ist. Depots ohne das Produkt sind mit „nicht installiert“ gesperrt; die Stufenregel gilt wie beim Installieren.
  3. Prüf die Optionen:
    • Dateien im Depot löschen (voreingestellt) – entfernt auch die Paketdateien vom Depot.
    • Deinstallation erzwingen (force) – deinstalliert auch, wenn das Produkt gesperrt ist.
  4. Klick auf Deinstallieren. Das Protokoll erscheint im Panel JOBS.

Deinstallieren bezieht sich auf das Produkt, nicht auf die gerade geöffnete Version. Der Status der Version in oPBWeb ändert sich dadurch nicht.

Zurück auf Entwurf

Mit Zurück auf Entwurf machst du eine freigegebene Version wieder bearbeitbar, ohne die Versionsnummer zu ändern. Das ist sinnvoll, wenn ein Fehler auffällt, die Versionsnummer aber gleich bleiben soll.

  1. Klick im Hinweis der freigegebenen Version auf Zurück auf Entwurf.
  2. Der Dialog „Version 128.0-1 wieder bearbeiten“ erklärt die Folgen. Ist die Version bereits auf Depots installiert, nennt er diese.
  3. Bestätige mit Zurück auf Entwurf. oPBWeb meldet „Version ist wieder bearbeitbar“.

Solange für die Version ein Job wartet oder läuft, ist Zurück auf Entwurf nicht möglich.

Neue Version

Neue Version legt eine bearbeitbare Kopie der aktuellen Version mit allen Daten und Dateien an. Du findest die Aktion im Hinweis einer freigegebenen Version und im Menü ⋯; sie funktioniert für Entwürfe und freigegebene Versionen.

  1. Klick auf Neue Version.
  2. Prüf Produktversion und Paketversion. Vorgeschlagen wird dieselbe Produktversion mit um eins erhöhter Paketversion; ist die Paketversion keine reine Zahl, wird .1 angehängt.
  3. Klick auf Anlegen. Der Editor öffnet die neue Version im Status Entwurf.

Denk daran, in der neuen Version einen Changelog-Eintrag anzulegen, siehe Paket-Editor .

In Workbench exportieren

Mit ⋯ › In Workbench exportieren … schreibst du die Version als Projektordner in die Workbench eines Configservers, z. B. um dort mit opsi-makepackage oder anderen Werkzeugen weiterzuarbeiten. Das geht für Entwürfe und freigegebene Versionen.

  1. Öffne ⋯ und wähl In Workbench exportieren ….
  2. Wähl unter Configserver den Server, in dessen Workbench du schreiben willst (Name und Stufe; vorbelegt ist der zuletzt gewählte, sonst der erste Server der Stufe Test).
  3. Gib den Projektordner an. Vorgeschlagen wird die Product-ID; / und \ sind nicht erlaubt.
  4. Gibt es den Ordner schon, setz das Häkchen Vorhandenen Ordner überschreiben (überzählige Dateien in den Paketordnern werden gelöscht). Ohne Häkchen schlägt der Export bei einem vorhandenen Ordner fehl.
  5. Klick auf Exportieren. Nach dem Job meldet oPBWeb „In die Workbench exportiert“.

Geschrieben werden nur OPSI/, CLIENT_DATA/ und SERVER_DATA/. Andere Inhalte des Projektordners bleiben erhalten. Nach dem Export zeigt die Paketliste den Projektordner unter Workbench . Den umgekehrten Weg beschreibt Pakete (Workbench …). Änderungen, die später direkt auf der Workbench entstehen, holst du mit Mit Workbench abgleichen … zurück, siehe Paket-Editor .

Job-Ausgabe verfolgen

Bauen, Installieren, Deinstallieren, das Übernehmen auf andere Stufen und der Export laufen als Jobs im Hintergrund. Du kannst währenddessen weiterarbeiten.

Snippets

Wiederverwendbare Codebausteine mit Platzhaltern anlegen, ordnen, importieren und exportieren.

Rollen: Leser, Packager, Releaser, Administrator

Überblick

Snippets sind Textbausteine für opsi-script, die du im Scripteditor per Doppelklick, Autovervollständigung oder Kontextmenü einfügst. Die Ansicht Snippets in der Aktivitätsleiste ist der Ort, an dem du sie verwaltest: Kategorien anlegen, Snippets schreiben und testen, Dateien importieren und exportieren.

Leser sehen alle Snippets, können aber nichts ändern. Ab der Rolle Packager legst du eigene Snippets an und pflegst die gemeinsamen Kategorien.

Globale und eigene Snippets

Jedes Snippet hat eine Sichtbarkeit:

SichtbarkeitWer sieht es?Wer darf es ändern?
Global (für alle)alle Benutzernur Administratoren
Nur für michnur dunur du

In der Liste erkennst du die Sichtbarkeit am Badge global bzw. eigen. Kategorien sind dagegen für alle gemeinsam: Jeder Packager kann Kategorien anlegen, umbenennen und löschen, und alle sehen dieselbe Kategorienstruktur.

Aufbau der Ansicht

Snippet-Ansicht mit Kategorienbaum, Editor und Testbereich

Die Ansicht hat drei Spalten. Die Breite der linken und rechten Spalte kannst du durch Ziehen am Rand ändern.

Kategorien verwalten

Jedes Snippet gehört zu genau einer Kategorie. Bevor du das erste Snippet anlegen kannst, muss es mindestens eine Kategorie geben.

Snippet anlegen und bearbeiten

Snippet im Bearbeitungsmodus mit Platzhaltern und Testbereich

  1. Klick auf Neues Snippet. Es entsteht ein Entwurf mit dem Namen „Neues Snippet“ und dem Text ; ${Kommentar}.
  2. Gib einen aussagekräftigen Name ein und wähl die Kategorie.
  3. Wähl die Sichtbarkeit. Als Packager steht nur Nur für mich zur Verfügung; Global (für alle) ist Administratoren vorbehalten.
  4. Trag optional eine Beschreibung ein. Sie erscheint später in der Autovervollständigung des Scripteditors.
  5. Schreib den Snippet-Text im Editor. Er unterstützt opsi-script-Hervorhebung, Platzhalter werden farbig markiert.
  6. Klick auf Speichern.

Solange es ungespeicherte Änderungen gibt, zeigt ein Punkt neben dem Titel das an. Verwerfen stellt den gespeicherten Stand wieder her. Wechselst du mit ungespeicherten Änderungen zu einem anderen Snippet, fragt oPBWeb „Ungespeicherte Änderungen verwerfen?“.

Löschen entfernt das Snippet nach einer Rückfrage endgültig.

Platzhalter

Platzhalter markieren die Stellen, die du nach dem Einfügen anpassen musst. Sie haben die Form ${name}, zum Beispiel:

; ${Kommentar}
Winbatch_${Sektionsname}

Nach dem Einfügen springst du mit der Tab-Taste von Platzhalter zu Platzhalter und überschreibst ihn jeweils.

Snippet testen

Im Bereich TESTEN probierst du das Snippet aus, bevor du es im echten Script verwendest:

  1. Setz den Cursor im Testeditor an die gewünschte Stelle.
  2. Klick auf Einfügen. Das Snippet wird genau wie im Scripteditor eingefügt.
  3. Spring mit Tab durch die Platzhalter.
  4. Klick auf Zurücksetzen, um den Testeditor wieder auf den Beispieltext zu bringen.

Snippet aus dem Scripteditor erstellen

Du kannst ein Snippet auch direkt aus einem Script heraus anlegen:

  1. Markiere im Scripteditor den gewünschten Text.
  2. Öffne mit Rechtsklick das Kontextmenü und wähl Snippet aus Auswahl erstellen ….
  3. Im Dialog „Snippet aus Auswahl“ prüfst du Name (vorbelegt mit der ersten nicht leeren Zeile), Kategorie und Sichtbarkeit. Über „Neue Kategorie“ legst du bei Bedarf gleich eine neue Kategorie an.
  4. Klick auf Speichern.

Wie du Snippets im Scripteditor einfügst, beschreibt Scripteditor .

Snippets importieren

oPBWeb liest zwei Dateiformate:

So importierst du:

  1. Klick auf Snippets importieren.
  2. Wähl die Sichtbarkeit der importierten Snippets. Packager importieren immer als Nur für mich; global importieren können nur Administratoren.
  3. Klick auf Datei auswählen … und wähl die Datei aus.

oPBWeb meldet anschließend „42 Snippets importiert, 3 übersprungen“. Übersprungen werden Snippets, die es mit gleichem Namen in derselben Kategorie und Sichtbarkeit schon gibt. Fehlende Kategorien werden automatisch angelegt; Snippets ohne Kategorie landen in „Allgemein“.

Snippets exportieren

Klick auf Snippets exportieren (die Schaltfläche gibt es ab der Rolle Packager). Dein Browser lädt die Datei opbweb-snippets.json herunter. Sie enthält alle Snippets, die du sehen darfst, also alle globalen und deine eigenen, jeweils mit Name, Kategorie, Beschreibung und Text. Die Datei kannst du in einer anderen oPBWeb-Installation wieder importieren.

Depots

Configserver und Depots ansehen und abgleichen, installierte Produkte und Repository prüfen, Dateien auf dem Server verwalten und Depots vergleichen.

Rollen: Leser, Packager, Releaser, Administrator

Überblick

Die Ansicht Depots zeigt alle opsi-Configserver, die in oPBWeb eingerichtet sind, und ihre Depots so, wie oPBWeb sie zuletzt gelesen hat. Du siehst, welche Produkte in welcher Version installiert sind, räumst das Repository auf, bearbeitest Dateien direkt auf dem Server und vergleichst die Depots untereinander.

Leser sehen alles, können aber nichts verändern. Was Packager und Releaser auf einem Depot ändern dürfen, hängt von dessen Stufe ab (siehe Stufen und Rollen ). Configserver hinzufügen, bearbeiten und entfernen können nur Administratoren, siehe opsi-Server .

Configserver und Depots

Links steht ein Baum mit allen Configservern und ihren Depots. Jedes Depot gehört zu genau einem Configserver.

Configserver sind fett dargestellt. Jede Zeile zeigt:

Depots stehen eingerückt unter ihrem Configserver, jeweils mit Depot-ID, Stufen-Badge und einer Kurzinfo wie „Configserver · 42 Produkte“ (beim Depot auf dem Configserver selbst) oder „17 Produkte“. Ein kursives, helleres Stufen-Badge bedeutet: Das Depot hat keine eigene Stufe und erbt die seines Configservers (Tooltip „vom Configserver geerbt“). Zusätzlich können dort folgende Hinweise stehen:

Ist noch kein Configserver eingerichtet, steht dort „Noch kein Configserver eingerichtet.“ Das Anlegen übernimmt ein Administrator.

Liste zuklappen und durchsuchen

Bei vielen Depots hilft dir zweierlei:

Configserver ansehen

Klick auf die Zeile eines Configservers. Als Packager, Releaser oder Leser siehst du rechts eine Übersicht, die du nicht ändern kannst:

Ab Packager steht oben Abgleichen für genau diesen Server. Administratoren sehen an dieser Stelle stattdessen das Formular des Servers, siehe opsi-Server .

Depot ansehen

Klick auf ein Depot, um rechts seine Details zu sehen. Oben stehen Depot-ID, Stufe, der Name des Configservers und der Zeitpunkt des letzten Abgleichs („abgeglichen …“).

Abgleichen

Ein Abgleich liest die Depots eines Configservers und ihre installierten Produkte neu. Er läuft als Job; währenddessen steht „Gleicht ab …“ auf der Schaltfläche. Abgleichen kannst du ab der Rolle Packager:

SchaltflächeWirkungTitel des Jobs
Abgleichen in der Detailansicht eines Depots oder Configserversgleicht nur diesen Configserver und seine Depots ab„Depots abgleichen (Server)“
⟳ oben in der Liste (Tooltip „Alle Configserver abgleichen“)gleicht alle Configserver nacheinander ab„Depots aller Configserver abgleichen“

Der Abgleich eines Servers ändert nie die Depots eines anderen Servers.

Ein Abgleich über Abgleichen oder ⟳ liest außerdem die Workbench jedes Configservers. Dabei merkt sich oPBWeb, welcher Projektordner welches Paket in welcher Version enthält; das siehst du in der Paketliste unter Workbench . Ist die Workbench nicht lesbar, meldet der Job das als Warnung und gleicht die Depots trotzdem ab.

oPBWeb prüft zusätzlich alle fünf Minuten (Standard, einstellbar unter Einstellungen → Worker) selbstständig alle Configserver und gleicht die Depots jedes erreichbaren Servers ab; dieser automatische Abgleich erscheint nicht in der Jobliste und liest die Workbench nicht. Die Workbench liest der Worker getrennt davon, standardmäßig stündlich (ebenfalls unter Einstellungen → Worker). Einen manuellen Abgleich brauchst du vor allem, wenn du eine Änderung auf dem Server sofort sehen willst.

Einstellungen des Depots

Unter den Depotdetails stehen die Einstellungen mit Stufe, Dienst-URL und Aktiv sowie Infofelder wie Verwendete URL und Von opsi gemeldet. Bei Stufe bedeutet „wie Configserver (Produktion)“, dass das Depot die Stufe seines Configservers erbt. Ändern können diese Werte nur Administratoren; für alle anderen sind sie schreibgeschützt. Details stehen in Depot-Verwaltung .

Stufen und Rollen

Jeder Configserver hat eine Stufe: Produktion, Staging oder Test. Seine Depots erben diese Stufe, solange ein Administrator für ein Depot keine eigene festlegt. Die wirksame Stufe eines Depots bestimmt, wer dort schreibende Aktionen ausführen darf:

AktionTest- und Staging-DepotProduktives Depot
Installieren, DeinstallierenPackagerReleaser
Pakete auf diese Stufe übernehmenPackagerReleaser
Produkte entsperrenPackagerReleaser
Dateien aus dem Repository löschenPackagerReleaser

Administratoren dürfen alles, was Releaser dürfen. Neue Configserver starten in der Stufe Produktion; ein Administrator stellt Test- und Staging-Server bzw. einzelne Depots um. Fehlt dir die nötige Rolle, blendet oPBWeb die betreffenden Schaltflächen aus oder sperrt das Depot im Dialog.

Wie du ein getestetes Paket von einer Stufe auf die nächste bringst, steht in Bauen und verteilen .

Tab „Installierte Produkte“

Tab Installierte Produkte mit Versionsvergleich und gesperrtem Produkt

Die Tabelle zeigt alle Produkte, die auf dem Depot installiert sind:

SpalteBedeutung
Product-IDKennung des Produkts. Gibt es das Paket in oPBWeb, ist die ID ein Link in den Paket-Editor.
Im Depotinstallierte Version (Produkt- und Paketversion)
oPBWeb (gebaut)gebaute Version in oPBWeb; orange, wenn sie von der installierten abweicht
TypProdukttyp

Mit dem Chip Abweichend von oPBWeb schränkst du die Liste auf Produkte ein, bei denen Depot und oPBWeb unterschiedliche Versionen haben. Das Feld „Filtern …“ sucht nach der Product-ID.

Gesperrte Produkte entsperren

Bricht eine Installation ab, bleibt das Produkt auf dem Depot manchmal gesperrt. Es trägt dann das Badge gesperrt. So hebst du die Sperre auf:

  1. Setz bei den gesperrten Produkten das Häkchen.
  2. Klick auf Entsperren (n).

Das Entsperren läuft als Job; danach meldet oPBWeb „2 Produkte entsperrt“. Die Häkchen und die Schaltfläche siehst du nur, wenn du auf diesem Depot schreiben darfst.

Tab „Dateien“

Der Tab Dateien ist ein Dateimanager für die Freigaben des Depots. Je nach Depot gibt es bis zu drei Freigaben als Unter-Tabs:

FreigabeInhaltZugriff
/workbenchArbeitsverzeichnis für Paketquellenlesen für alle, schreiben ab Packager
/repositoryhochgeladene .opsi-Dateiennur lesen
/depotentpackte, installierte Produktenur lesen

/workbench gibt es nur auf dem Configserver und auf Depots, die eine Workbench melden. In schreibgeschützten Freigaben zeigt oPBWeb den Hinweis „/repository ist nur lesbar.“ bzw. „Ändern erfordert die Rolle Packager.“

Dateimanager im Tab Dateien mit Kontextmenü in der Workbench

Dateien ansehen und bearbeiten

Klick auf eine Textdatei (Scripte, control, .ini, .xml, .json, .ps1, .cmd, .log und viele mehr), um sie im Texteditor zu öffnen. opsi-Scripte bekommen dabei dieselbe Hervorhebung wie im Scripteditor. In /workbench kannst du die Datei ändern und mit Speichern zurückschreiben; in den anderen Freigaben ist sie „nur lesbar“.

Der Editor behält Zeichenkodierung (UTF-8 oder CP1252) und Zeilenenden der Datei bei; die Kodierung steht unten im Dialog. Bearbeiten lassen sich Textdateien bis 2 MB. Größere Dateien und Binärdateien lädst du herunter.

Herunterladen

Klick auf eine Datei, die kein Text ist, oder wähl im Kontextmenü (Rechtsklick) Herunterladen. Der Download läuft in zwei Schritten: Zuerst kopiert ein Job die Datei vom Server, danach startet dein Browser den Download. Nur wer den Download ausgelöst hat, kann die Datei abholen.

In der Workbench arbeiten (ab Packager)

In /workbench stehen dir zusätzlich zur Verfügung:

Alternativ ziehst du Dateien oder ganze Ordner per Drag & drop in die Liste. Sie landen im aktuell geöffneten Ordner. Der Fortschritt erscheint als „Lade hoch … 45 %“; anschließend kopiert ein Job die Dateien auf den Server und oPBWeb meldet „3 Dateien hochgeladen“.

Paket aus der Workbench übernehmen

Ein Paketverzeichnis in /workbench kannst du direkt in oPBWeb importieren:

  1. Öffne /workbench im Stammverzeichnis.
  2. Klick mit der rechten Maustaste auf den Paketordner.
  3. Wähl In oPBWeb importieren.

Der Import läuft als Job und liest aus der Workbench des Configservers, zu dem das Depot gehört; danach meldet oPBWeb „{name} importiert“. Eine schon vorhandene Version wird dabei nicht überschrieben. Zum Ersetzen und für den Import mehrerer Ordner nutzt du den Dialog Workbench … in der Paketliste, siehe Pakete .

Tab „Repository“

Das Repository eines Depots enthält die hochgeladenen .opsi-Dateien samt .md5- und .zsync-Prüfdateien. Im Laufe der Zeit sammeln sich dort alte Versionen an.

Tab Repository nach „Repository lesen“ mit den .opsi-Dateien des Depots

Beim ersten Öffnen liest oPBWeb das Repository automatisch ein; mit Repository lesen wiederholst du das. Das Lesen läuft als Job. Darüber steht eine Zusammenfassung wie „12 Pakete, 1,4 GB“.

Die Tabelle zeigt Datei, Product-ID, Version und Größe sowie folgende Badges:

Prüfdateien ohne zugehörige .opsi-Datei listet oPBWeb unter „Verwaiste Prüfsummen“ auf.

Dateien aus dem Repository löschen

  1. Setz bei den Paketen, die weg sollen, das Häkchen.
  2. Klick auf Löschen (n).
  3. Bestätige die Rückfrage „2 Pakete samt .md5 und .zsync aus dem Repository von depot01.example.local löschen?“.

oPBWeb löscht die .opsi-Dateien zusammen mit ihren Prüfdateien. Installierte Produkte bleiben dabei erhalten. Die Häkchen siehst du nur, wenn du auf diesem Depot schreiben darfst (siehe Stufen und Rollen ).

Tab „Vergleich“

Der Tab Vergleich stellt für das ausgewählte Depot drei Versionen jedes Produkts nebeneinander: oPBWeb (gebaut), den Configserver, zu dem das Depot gehört (Spaltenkopf mit dem Zusatz „Configserver“), und das Depot selbst. Wählst du das Depot auf dem Configserver, gibt es nur die beiden Spalten oPBWeb und Configserver. Abweichende Versionen sind orange markiert.

Tab Vergleich mit oPBWeb, Configserver und dem ausgewählten Depot

Verwandte Themen

Jobs

Länger laufende Aktionen als Jobs verfolgen, Protokolle lesen und wartende Jobs abbrechen.

Rollen: Leser, Packager, Releaser, Administrator

Überblick

Alles, was länger dauert oder mit einem opsi-Server spricht, führt oPBWeb als Job im Hintergrund aus. Du startest die Aktion, arbeitest weiter und verfolgst den Fortschritt in der Statusleiste, im Paket-Editor oder in der Ansicht Jobs.

Alle Benutzer sehen alle Jobs, auch die der Kollegen, samt Protokoll. So lässt sich nachvollziehen, wer wann was gebaut oder verteilt hat.

Welche Aktionen laufen als Job?

AktionAnzeige in der Spalte Aktion
.opsi-Paket importierenImport
BauenBauen
Installieren …, Übernehmen … auf andere StufeInstallieren
Deinstallieren …Deinstallieren
Abgleichen der Depots (ein Configserver oder alle)Depot-Abgleich
Bereinigen … des Objektspeichers (nur Administratoren)Bereinigung
Workbench einlesen, importieren, exportierentechnischer Name, z. B. scan_workbench, import_workbench, import_workbench_many (Import mehrerer Projektordner), export_workbench
Mit Workbench abgleichen …: vergleichen, übernehmencompare_workbench, apply_workbench
Repository lesen, Repository-Dateien löschenlist_repository, delete_repository_files
Produkte entsperrenunlock_products
Dateien im Tab Dateien der Depots hoch- und herunterladenfiles_upload, files_download
CA-Zertifikat holen, Verbindung testen (nur Administratoren)fetch_opsi_ca, check_opsi_server

Nur die ersten sechs Aktionen haben einen übersetzten Namen; alle anderen erscheinen mit ihrem technischen Namen. Titel und Protokollzeilen der Jobs kommen vom Server und erscheinen in der Sprache der Oberfläche. Jobs, die vor Version 0.15.0 entstanden sind, behalten ihre deutschen Titel und Protokollzeilen.

Die Jobliste

Öffne Jobs in der Aktivitätsleiste.

Jobliste mit Filterchips und Detailbereich mit Live-Protokoll

Oben stehen die Filter:

Die Tabelle hat die Spalten Aktion, Titel, Ziel (Paket oder Depot), Status, Ausgelöst von, Start und Dauer. Laufende Jobs zeigen beim Status zusätzlich den Fortschritt in Prozent. Die Liste aktualisiert sich alle paar Sekunden von selbst und zeigt die letzten 200 Jobs („200 von 1.348 Jobs angezeigt“).

Ein Job hat einen dieser Zustände: wartet, läuft, erfolgreich, fehlgeschlagen oder abgebrochen.

Job-Details und Live-Protokoll

Klick auf einen Job in der Liste. Rechts erscheinen Titel, Status, Ziel, Auslöser und Startzeit, ein Fortschrittsbalken, bei Fehlern die Fehlermeldung und darunter das Protokoll.

Bei laufenden Jobs kommen neue Protokollzeilen live hinzu, und die Ansicht scrollt automatisch mit. Die Zeilen sind nach Bedeutung eingefärbt: grün für Erfolg, orange für Warnungen, rot für Fehler.

Im Detailbereich stehen je nach Job diese Schaltflächen:

Jobs abbrechen

Abbrechen kannst du nur Jobs im Zustand wartet, also Jobs, die noch nicht begonnen haben. Ein laufender Job lässt sich nicht abbrechen; er läuft bis zum Ende oder bis zu einem Fehler.

Wähl den Job aus und klick auf Abbrechen. Der Job erhält den Zustand abgebrochen.

Brichst du einen wartenden Installations-Job ab, der einen Entwurf freigegeben hat, ist die Version danach wieder ein Entwurf.

Fortschritt in der Statusleiste

Jobs, die du in diesem Browser-Tab gestartet hast, erscheinen rechts in der Statusleiste mit Titel, Fortschrittsbalken und Prozentangabe. Ein Klick darauf öffnet den Job in der Jobliste. Ist kein Job mehr aktiv, zeigt die Statusleiste den zuletzt beendeten Job mit seinem Ergebnis.

Zusätzlich zeigt das Symbol Jobs in der Aktivitätsleiste die Anzahl der laufenden Jobs, die du in diesem Browser gestartet hast.

Bricht die Verbindung zum Server während eines Jobs ab, meldet oPBWeb „Verbindung zum Job verloren“. Der Job selbst läuft auf dem Server weiter; seinen Endstand siehst du in der Jobliste.

Jobs im Paket-Editor

Im Paket-Editor gibt es unten das Panel JOBS. Es listet die letzten Jobs des geöffneten Pakets mit Status und Zeitpunkt und zeigt rechts das Protokoll des ausgewählten Jobs, bei laufenden Jobs live.

Startest du im Editor einen Job, etwa mit Bauen oder Installieren …, öffnet sich das Panel automatisch. Mit × schließt du es; die Schaltfläche Jobs ▴ am unteren Rand blendet es wieder ein.

Mehr zum Bauen und Verteilen steht in Bauen und verteilen .

Konto und Sprache

Oberflächensprache festlegen, Passwort ändern, abmelden, die Darstellung und die Syntaxfarben im Editor anpassen.

Rollen: Leser, Packager, Releaser, Administrator

Überblick

Die Einstellungen zu deinem eigenen Konto erreichst du über das Avatar-Symbol mit deinen Initialen ganz rechts in der Kopfleiste. Daneben findest du in der Kopfleiste die Umschalter für Sprache und Hell-/Dunkel-Darstellung sowie den Zugang zu diesem Handbuch.

Diese Funktionen stehen allen Benutzern zur Verfügung, unabhängig von der Rolle.

Das Benutzermenü

Klick auf das Avatar-Symbol, um das Benutzermenü zu öffnen.

Geöffnetes Benutzermenü mit Standardsprache, Mein Konto, Passwort ändern und Abmelden

Oben im Menü stehen dein Anzeigename sowie Benutzername und Rolle, zum Beispiel mmuster · Packager. Darunter folgen Standardsprache, Mein Konto, Passwort ändern und Abmelden.

Mein Konto

Mein Konto im Benutzermenü öffnet eine eigene Seite. Oben stehen deine Kontodaten: Benutzername, Name, E-Mail, Rolle und Herkunft (lokal oder Verzeichnis). Dort legst du auch die Standardsprache fest und änderst mit Passwort ändern dein Passwort, genau wie im Benutzermenü. Darunter folgen die Syntaxfarben im Editor .

Sprache

oPBWeb kennt zwei Oberflächensprachen: Deutsch und Englisch. Es gibt zwei Wege, die Sprache zu wechseln, die sich in ihrer Wirkung unterscheiden.

Wo?WirkungGilt bis
Standardsprache im Benutzermenüwird in deinem Benutzerkonto gespeichertdauerhaft, bei jeder Anmeldung und auf jedem Gerät
Umschalter DE/EN in der Kopfleistegilt nur in diesem Browser-Tabzur nächsten Anmeldung

Standardsprache festlegen

  1. Öffne das Benutzermenü.
  2. Klick in der Zeile Standardsprache auf DE oder EN.

Die Oberfläche wechselt sofort, und oPBWeb merkt sich die Sprache in deinem Konto. Nach jeder Anmeldung startet oPBWeb in dieser Sprache, auch an einem anderen Rechner oder Browser.

Sprache vorübergehend umschalten

Der Umschalter in der Kopfleiste zeigt die aktuelle Sprache (DE oder EN). Ein Klick schaltet auf die andere Sprache um. Das ist praktisch, wenn du kurz einen englischen Begriff nachsehen oder einem Kollegen etwas auf Englisch zeigen willst.

Die Umstellung gilt nur für den aktuellen Browser-Tab und bleibt auch beim Neuladen der Seite erhalten. Sobald du dich ab- und wieder anmeldest, gilt wieder deine Standardsprache.

Sprache auf der Anmeldeseite

Auch die Anmeldeseite hat einen Sprachumschalter. Vor der Anmeldung kennt oPBWeb dich noch nicht; es verwendet die zuletzt in diesem Browser genutzte Sprache oder, beim ersten Besuch, die Sprache deines Browsers. Nach der Anmeldung übernimmt oPBWeb deine Standardsprache.

Passwort ändern

Diese Funktion gibt es nur für lokale Konten, also Konten, die in oPBWeb selbst angelegt wurden.

  1. Öffne das Benutzermenü.
  2. Klick auf Passwort ändern.
  3. Gib dein Aktuelles Passwort ein.
  4. Gib das Neue Passwort ein und wiederhole es unter Neues Passwort wiederholen. Das neue Passwort muss mindestens 10 Zeichen lang sein.
  5. Klick auf Speichern.

Ist das Passwort zu kurz oder stimmen die beiden Eingaben nicht überein, zeigt der Dialog „Mindestens 10 Zeichen.“ bzw. „Die Passwörter stimmen nicht überein.“ an und Speichern bleibt gesperrt.

Hast du dein Passwort vergessen, wende dich an einen Administrator. Er kann dir ein neues Passwort setzen, siehe Benutzer und Rollen .

Abmelden

Klick im Benutzermenü auf Abmelden. oPBWeb beendet deine Sitzung und zeigt wieder die Anmeldeseite. Eine vorübergehend umgeschaltete Sprache wird dabei verworfen.

Hell oder dunkel

Das Mond-Symbol in der Kopfleiste (Hell oder dunkel umschalten) wechselt zwischen heller und dunkler Darstellung. Solange du nichts auswählst, folgt oPBWeb der Einstellung deines Betriebssystems. Deine Wahl speichert der Browser; sie gilt also für diesen Browser, nicht für dein Konto.

Den Umschalter gibt es auch auf der Anmeldeseite und als Befehl in der Befehlssuche (Strg K).

Syntaxfarben im Editor

Auf der Seite Mein Konto stellst du im Abschnitt Syntaxfarben im Editor ein, in welchen Farben der Editor Dateien hervorhebt. Das gilt für alle Editoren in oPBWeb: Scripteditor, Snippets, die Quelltextansicht des control und die Dateien auf dem Depot. Die Einstellung gehört zu deinem Konto und gilt auf jedem Gerät, an dem du dich anmeldest.

So ist der Abschnitt aufgebaut:

Syntaxfarben im Editor: Standard mit der Vorlage opsi ScriptEditor, Kommentar zusätzlich kursiv, daneben die Vorschau

Farben einstellen

  1. Wähl Hell oder Dunkel.
  2. Wähl links den Dateityp. Für alle Dateitypen auf einmal nimmst du Standard (alle Dateitypen).
  3. Bei einem einzelnen Dateityp: Setz den Haken Eigenes Schema für diesen Dateityp. Das eigene Schema startet mit den Farben des Standards.
  4. Wähl eine Vorlage.
  5. Ändere bei Bedarf einzelne Farben: Klick auf das Farbfeld oder gib den Farbwert als Hex-Wert ein, z. B. #a31515. Schalte mit F und K fett und kursiv um. Ein geändertes Element bekommt den Knopf ↺, der wieder Farbe und Schrift der Vorlage einsetzt.
  6. Klick auf Speichern.

Wechselst du die Vorlage, verwirft oPBWeb die einzeln geänderten Farben und Schriften dieses Dateityps. Anpassungen zurücksetzen setzt alle Farben und Schriften des Dateityps auf die Vorlage zurück. Nimmst du den Haken Eigenes Schema für diesen Dateityp wieder heraus, gilt für den Dateityp wieder der Standard. Alle Syntaxfarben zurücksetzen stellt nach einer Rückfrage für beide Modi und alle Dateitypen die Vorgaben von oPBWeb wieder her. Auch das wird erst mit Speichern übernommen; Verwerfen stellt den zuletzt gespeicherten Stand wieder her.

Handbuch öffnen

Das Buch-Symbol in der Kopfleiste (Handbuch (neuer Tab)) öffnet dieses Handbuch in einem neuen Browser-Tab, und zwar in der aktuell eingestellten Oberflächensprache: bei Deutsch das deutsche, bei Englisch das englische Handbuch.

Die Aktivitätsleiste am linken Rand zeigt normalerweise nur Symbole; der Name eines Bereichs erscheint als Tooltip. Mit dem Symbol ☰ ganz links in der Kopfleiste (Menü mit Beschriftung ein-/ausklappen) blendest du die Beschriftungen ein, sodass neben jedem Symbol der Name steht. Ein weiterer Klick klappt die Leiste wieder ein.

Einen Überblick über die ganze Oberfläche gibt Erste Schritte .