aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/rosa
diff options
context:
space:
mode:
Diffstat (limited to 'internal/rosa')
-rw-r--r--internal/rosa/state.go19
1 files changed, 13 insertions, 6 deletions
diff --git a/internal/rosa/state.go b/internal/rosa/state.go
index a14f4a5d..cd010d5c 100644
--- a/internal/rosa/state.go
+++ b/internal/rosa/state.go
@@ -1041,12 +1041,6 @@ func (ctx *evalContext) pf(
}
meta.ID = int(anitya)
- if output != nil {
- v = cachedArtifact{&meta, output}
- set = true
- return
- }
-
for _, pathname := range patches {
var p []byte
p, err = fs.ReadFile(ctx.b, pathname)
@@ -1059,6 +1053,19 @@ func (ctx *evalContext) pf(
})
}
+ if output != nil {
+ if len(attr.Patches) != 0 || attr.Chmod {
+ rn := string(name)
+ if meta.Version != Unversioned {
+ rn = string(name) + "-" + meta.Version
+ }
+ output = ctx.t.NewPatchedSource(rn, output, !attr.Chmod, attr.Patches...)
+ }
+ v = cachedArtifact{&meta, output}
+ set = true
+ return
+ }
+
if overlay == "" {
for _, h := range extraH {
_, a := ctx.t.MustLoad(h)