【发布时间】:2019-02-18 05:05:43
【问题描述】:
我最近设置了 NXRM3.13.0-01 并一直在构建 maven-snapshots 存储库的工件快照。与我的本地 Maven 构建的集成似乎没问题。它从 Nexus 读取,在构建时部署最新的带时间戳的工件,并在被告知时获取最新的带时间戳的快照。我有一个 Maven - 删除快照 任务配置为使用以下配置删除快照:
存储库:所有存储库
快照保留(天):30
最小快照计数:3
如果发布则删除:是
发布后的宽限期(天):7
当此任务运行时,它不会从快照存储库中删除任何内容。我还按照文档运行了 Compact Blob Store 任务,以防需要回收磁盘空间但无济于事。从日志中,我可以看到 1.0 和 5.8.01 这两个版本被确定为候选版本。但是,不会清除任何工件。在日志中,我可以看到以下内容。它没有找到可以移除的合格工件:
2018-09-13 10:12:49,423+0000 INFO [qtp1041814774-1123] admin org.sonatype.nexus.quartz.internal.task.QuartzTaskInfo - Task 'Mark Snapshots for Deletion' [repository.maven.remove-snapshots] runNow
2018-09-13 10:12:49,424+0000 INFO [qtp1041814774-1123] admin org.sonatype.nexus.quartz.internal.task.QuartzTaskInfo - Task 'Mark Snapshots for Deletion' [repository.maven.remove-snapshots] state change WAITING -> RUNNING
2018-09-13 10:12:49,459+0000 INFO [quartz-5-thread-20] *SYSTEM org.sonatype.nexus.repository.maven.tasks.RemoveSnapshotsTask - Task log: /nexus-data/log/tasks/repository.maven.remove-snapshots-20180913101249447.log
2018-09-13 10:12:49,460+0000 INFO [quartz-5-thread-20] *SYSTEM org.sonatype.nexus.repository.maven.tasks.RemoveSnapshotsTask - Executing removal of snapshots on repository 'maven-snapshots'
2018-09-13 10:12:49,496+0000 INFO [quartz-5-thread-20] *SYSTEM org.sonatype.nexus.repository.maven.internal.RemoveSnapshotsFacetImpl - Beginning snapshot removal on repository 'maven-snapshots' with configuration: org.sonatype.nexus.repository.maven.tasks.RemoveSnapshotsConfig(minimumRetained:3, snapshotRetentionDays:30, removeIfReleased:true, gracePeriod:7)
2018-09-13 10:12:49,497+0000 INFO [quartz-5-thread-20] *SYSTEM org.sonatype.nexus.repository.maven.internal.RemoveSnapshotsFacetImpl - Begin processing snapshots in repository 'maven-snapshots'
2018-09-13 10:12:49,504+0000 INFO [quartz-5-thread-20] *SYSTEM org.sonatype.nexus.repository.maven.internal.RemoveSnapshotsFacetImpl - Found 2 snapshot GAVs to analyze
2018-09-13 10:12:49,516+0000 INFO [quartz-5-thread-20] *SYSTEM org.sonatype.nexus.repository.maven.internal.RemoveSnapshotsFacetImpl - ---- Searching for GAVS with snapshots that qualify for deletion on repository 'maven-snapshots' ----
2018-09-13 10:12:49,517+0000 INFO [quartz-5-thread-20] *SYSTEM org.sonatype.nexus.repository.maven.internal.RemoveSnapshotsFacetImpl - Elapsed time: 12.14 ms, deleted 0 components from 0 distinct GAVs
2018-09-13 10:12:49,518+0000 INFO [quartz-5-thread-20] *SYSTEM org.sonatype.nexus.repository.maven.internal.RemoveSnapshotsFacetImpl - Finished processing snapshots with more than 3 versions created before 2018-08-14T10:12:49.517Z
2018-09-13 10:12:49,518+0000 INFO [quartz-5-thread-20] *SYSTEM org.sonatype.nexus.repository.maven.internal.RemoveSnapshotsFacetImpl - Updating metadata on repository 'maven-snapshots'
2018-09-13 10:12:49,519+0000 INFO [quartz-5-thread-20] *SYSTEM org.sonatype.nexus.repository.maven.internal.RemoveSnapshotsFacetImpl - Completed snapshot removal on repository 'maven-snapshots'
2018-09-13 10:12:49,520+0000 INFO [quartz-5-thread-20] *SYSTEM org.sonatype.nexus.quartz.internal.task.QuartzTaskInfo - Task 'Mark Snapshots for Deletion' [repository.maven.remove-snapshots] state change RUNNING -> WAITING (OK)
快照存储库如下。我的假设是 v5.8.01-SNAPSHOT 的前两个将被删除,而后两个将根据任务配置保留:
我的问题是:
- 我错过了什么吗?
- 我可以做些什么来获得所需的行为?
【问题讨论】:
-
您已配置为保留
Minimum snapshot count: 3...我建议将其更改为0并且您的保留天数听起来很长..通常我将 Nexus 配置为最多 7 天...和没有宽限期...因为 7 天后 SNAPSHOT 已被其他几个 SNAPSHOT 替换...所以不需要那些旧的...除此之外,您是否有充分的理由使用像5.8.01这样的版本?为什么不简单地使用5.8.1?顺便说一句:如果您看到时间戳是从 11.9.2018 开始的,这意味着只有两天,所以我不希望被删除? -
不幸的是,版本控制就是这样。也就是说,我是个傻瓜。保留日期是问题所在。盯着我的脸。我将它调整为 0 并解决了它。盯着它太久了。谢谢!
-
没问题。不时发生...欢迎来到俱乐部 ;-)
标签: maven nexus snapshot nexus3