【问题标题】:Nebula Ospackage plugin incremental build issueNebula Ospackage 插件增量构建问题
【发布时间】:2022-11-09 23:10:31
【问题描述】:

使用 Nebula RPM Plugin 对于某些 ospackage 扩展属性,我在增量构建支持方面存在一些问题。

请参见下面的简单示例:

plugins {
  id "nebula.ospackage" version "9.1.1"
}

ospackage {
    packageDescription = "my sample package"
    user  "root"
    createDirectoryEntry true
    addParentDirs        true   
}

当更改 createDirectoryEntry 属性值时,Gradle 正确检测到更改并将任务视为 NOT up-to-date ,正如预期的那样:

> Task :buildRpm
Caching disabled for task ':buildRpm' because:
  Build cache is disabled
Task ':buildRpm' is not up-to-date because:
  Value of input property 'createDirectoryEntry' has changed for task ':buildRpm'
Created rpm java.io.RandomAccessFile@25ee06fa
:buildRpm (Thread[Execution worker for ':',5,main]) completed. Took 0.02 secs.

但更改addParentDirs 属性值时,未检测到更改,并且任务被认为是最新的!

> Task :buildRpm UP-TO-DATE
Caching disabled for task ':buildRpm' because:
  Build cache is disabled
Skipping task ':buildRpm' as it is up-to-date.
:buildRpm (Thread[Execution worker for ':',5,main]) completed. Took 0.007 secs.

addParentDirs 和 createDirectoryEntry 都是简单的布尔属性,它们的 getter 使用 @Input 正确注释,请参阅 https://github.com/nebula-plugins/gradle-ospackage-plugin/blob/main/src/main/groovy/com/netflix/gradle/plugins/packaging/SystemPackagingExtension.groovy#L71。

我们如何解释这两个属性的最新检查中的不同行为?

笔记

是否使用属性赋值时的行为相同(例如:addParentDirs true 与 addParentDirs = true 效果相同);似乎可能存在与使用的语法相关的问题,请参阅 https://github.com/nebula-plugins/gradle-ospackage-plugin/issues/82 和 https://github.com/nebula-plugins/gradle-ospackage-plugin/issues/39

(使用 Gradle v7.4,ospackage 插件 v9.1.1)

【问题讨论】:

    标签: gradle netflix-nebula-plugins


    【解决方案1】:

    根本原因是ospackage 中定义的addParentDirs 属性被nebula ospackage 插件简单地忽略了,由于问题https://github.com/nebula-plugins/gradle-ospackage-plugin/issues/246。

    因此,无论在此扩展中为此属性定义什么值,它都不会影响任务配置,我想这就是它被最新检查机制忽略的原因。

    【讨论】:

      猜你喜欢
      • 2014-08-10
      • 1970-01-01
      • 2019-05-31
      • 1970-01-01
      • 2013-06-02
      • 2019-03-30
      • 1970-01-01
      • 2012-12-19
      • 2013-10-25
      相关资源
      最近更新 更多