Zum Inhalt springen

Hinweise zu Paketformaten

Stabile Verhaltenshinweise zu den aktuell unterstützten Paket-Ökosystemen und Repository-Typen.

Unterstützung im Überblick

Craftifact unterstützt aktuell diese Repository-Familien:

  • Maven
  • Python
  • npm
  • OCI
  • Go beta

Für alle davon unterstützt das Konfigurationsmodell Hosted-, Proxy- und Group-Repositorys.

Allgemeine Regeln:

  • Hosted-Repositorys sind das normale schreibbare Ziel
  • Proxy-Repositorys sind effektiv schreibgeschützt
  • Group-Repositorys sind effektiv schreibgeschützt und hängen von ihren Member-Repositorys ab

Maven

version_policy ist der wichtigste Maven-spezifische Verhaltensschalter.

Unterstützte Werte sind:

  • Release
  • Snapshot
  • Mixed

Aktuelles Verhalten:

  • Standard-Normalisierung ist Mixed
  • ein Wechsel eines bestehenden Maven-Repositorys auf eine strengere Ziel-Policy wird blockiert, wenn vorhandene Artefakte diese Ziel-Policy verletzen würden
  • Metadaten-Dateien sowie Checksum- und Signatur-Sidecars gelten nicht als Policy-Verletzungen

OCI

Bei OCI gibt es zwei Grace-bezogene Verhaltensweisen, die man kennen sollte.

Untag-Grace

Wenn du den letzten Tag entfernst, der auf ein Manifest zeigt, wird die Manifest-Closure nicht sofort gelöscht. Sie geht zuerst in ein Untag-Grace-Fenster von 5 Minuten.

Namespace-Delete-Grace

Das Löschen eines Namespace im UI nutzt eine Grace-Periode von 1 Stunde. Damit hast du vor der finalen Bereinigung ein Restore-Fenster.

Garbage Collection

OCI-Garbage-Collection läuft nach Zeitplan. Standardmäßig nutzt die Konfigurationsschicht ein 10-Minuten-Intervall für OCI-GC-Scheduling. Nicht referenzierte hochgeladene OCI-Inhalte, die älter als die Grace-Periode sind, können gelöscht werden.

Go

Go-Repositorys folgen demselben Hosted-, Proxy- und Group-Modell wie die übrigen Familien. Die gehostete Variante ist noch in Entwicklung.

Python und npm

Python und npm verhalten sich heute auf Repository-Typ-Ebene wie die übrigen Familien:

  • Hosted-, Proxy- und Group-Repositorys werden unterstützt
  • einen besonderen Policy-Schalter wie Maven version_policy gibt es aktuell nicht

Import-bezogene Hinweise

Die aktuelle Nexus-Import-Abdeckung umfasst:

  • Maven
  • Python
  • OCI
  • npm

Proxy-Repository-Definitionen können importiert werden, Proxy-Cache-Inhalte aber nicht.

Verwandte Seiten