Automatisierung zum Löschen von alten Paketversionen

Damit die alten Pakete nicht ewig gespeichert werden und man diese nicht dann per Hand löschen muss, wäre ein automatisches Löschen eine gutes Feature.

1 Comment
kohlbrecher
Crownpeak employee
Crownpeak employee

Hallo Mona,

für diesen Anwendungsfall gibt es bereits die benötigte API.

Hier ein Codeschnipsel, der dir vielleicht weiterhilft:

import de.espirit.firstspirit.access.packagepool.PackageManager;

import de.espirit.firstspirit.access.packagepool.PackageVersion;

packageManager = context.getConnection().getService(PackageManager.SERVICE_NAME);

myPackage = packageManager.getPackageByName("globalerTest");

packageVersions = myPackage.getVersions();

ArrayList<PackageVersion> myVersionList = new ArrayList();

for (version:packageVersions) {

context.logInfo("Version to remove: " + version.getTag() + " from Package");

myVersionList.add(version);

};

for (version:myVersionList) {

context.logInfo("removing Version: " + version.getTag());

myPackage.lock();

myPackage.removeVersion(version);

myPackage.save();

myPackage.unlock();

myPackage.refresh();

}

Viele Grüße

Jan