2016-07-26 5 views
2

Я удалил кучу старых версий (2.0.0 -> 2.0.6) артефакта из archiva, удалив файлы непосредственно из репозитория на диске (в Linux). К сожалению, я не могу заставить Archiva перестроить свой индекс артефактов и признать, что версии больше не существуют.Удаление артефактов на диске из Apache Archiva

Я попытался

  • Index Сканирование на хранилище.
  • Сканирование каталога в репозитории.
  • Отскок процесса Archiva.
  • Жертвоприношение моему первородному ребенку.
  • вручную удалить версию из UI -> Это работает, поэтому 2.0.0 не отображается в списке

Если я проверить структуру каталогов на диске, я могу видеть, что специалист-метаданные .xml содержит только те версии, которые остаются, поэтому они были перестроены правильно.

Вот то, что файловая система выглядит (хосты/пользователи и т.д. облагороженных):

[13:51] Linux [[email protected]:/net/nas/Archiva/repository/myproject-release/com/mycompany/myartifact]> ls -al 
total 24 
drwx------ 5 root root 4096 Jul 25 15:07 . 
drwx------ 23 root root 4096 Jul 12 18:15 .. 
drwx------ 2 root root 4096 Jun 29 15:00 2.0.7 
drwx------ 2 root root 4096 Jun 29 15:00 2.0.8 
drwx------ 2 root root 4096 Jul 13 10:00 2.0.9 
-rwx------ 1 root root 401 Jul 26 13:37 maven-metadata.xml 
-rwx------ 1 root root 52 Jul 26 13:37 maven-metadata.xml.md5 
-rwx------ 1 root root 60 Jul 26 13:37 maven-metadata.xml.sha1 

Вот содержимый Maven-metadata.xml

<?xml version="1.0" encoding="UTF-8"?> 

<metadata> 
    <groupId>com.mycompany</groupId> 
    <artifactId>myartifact</artifactId> 
    <versioning> 
    <latest>2.0.9</latest> 
    <release>2.0.9</release> 
    <versions> 
     <version>2.0.7</version> 
     <version>2.0.8</version> 
     <version>2.0.9</version> 
    </versions> 
    <lastUpdated>20160726123734</lastUpdated> 
    </versioning> 
</metadata> 

Вот скриншот упорного UI enter image description here

The Rest API аналогично кэшируются:

http://myarchivahost/restServices/archivaServices/browseService/versionsList/com.mycompany/myartifact

<versionsList> 
    <versions>2.0.1</versions> 
    <versions>2.0.2</versions> 
    <versions>2.0.3</versions> 
    <versions>2.0.4</versions> 
    <versions>2.0.5</versions> 
    <versions>2.0.6</versions> 
    <versions>2.0.7</versions> 
    <versions>2.0.8</versions> 
    <versions>2.0.9</versions> 
</versionsList> 

ответ

0

Это не идеальное решение, но это все, что я получил прямо сейчас.

  • Выполните операцию очистки
  • Удалить все Maven-метаданные файлов с диска
  • Воссоздать хранилище с информацией диска.
Смежные вопросы