Compare commits

...

2 Commits

Author SHA1 Message Date
Ettore Di Giacinto
9c61210b5b 🆕 Tag 0.22.6 2022-01-07 15:41:51 +01:00
Ettore Di Giacinto
519058f13c 🔧 Do not store file list of hidden packages 2022-01-07 00:02:22 +01:00
7 changed files with 61 additions and 5 deletions

View File

@@ -30,7 +30,7 @@ var cfgFile string
var Verbose bool
const (
LuetCLIVersion = "0.22.5"
LuetCLIVersion = "0.22.6"
LuetEnvPrefix = "LUET"
)

View File

@@ -502,12 +502,14 @@ func (cs *LuetCompiler) genArtifact(p *compilerspec.LuetCompilationSpec, builder
}
}
filelist, err := a.FileList()
if err != nil {
return a, errors.Wrapf(err, "Failed getting package list for '%s' '%s'", a.Path, a.CompileSpec.Package.HumanReadableString())
if !p.Package.Hidden {
filelist, err := a.FileList()
if err != nil {
return a, errors.Wrapf(err, "Failed getting package list for '%s' '%s'", a.Path, a.CompileSpec.Package.HumanReadableString())
}
a.Files = filelist
}
a.Files = filelist
a.CompileSpec.GetPackage().SetBuildTimestamp(time.Now().String())
err = a.WriteYAML(p.GetOutputPath())

View File

@@ -1064,5 +1064,41 @@ var _ = Describe("Compiler", func() {
files := art.Files
Expect(files).To(ContainElement("bin/busybox"))
})
It("is not generated after the compilation process and annotated in the metadata if a package is hidden", func() {
generalRecipe := tree.NewCompilerRecipe(pkg.NewInMemoryDatabase(false))
err := generalRecipe.Load("../../tests/fixtures/packagelayers_hidden")
Expect(err).ToNot(HaveOccurred())
Expect(len(generalRecipe.GetDatabase().GetPackages())).To(Equal(2))
compiler := NewLuetCompiler(sd.NewSimpleDockerBackend(ctx), generalRecipe.GetDatabase(), options.WithContext(context.NewContext()))
spec, err := compiler.FromPackage(&pkg.DefaultPackage{Name: "runtime", Category: "layer", Version: "0.1"})
Expect(err).ToNot(HaveOccurred())
compiler.Options.CompressionType = compression.GZip
Expect(spec.GetPackage().GetPath()).ToNot(Equal(""))
tmpdir, err := ioutil.TempDir("", "tree")
Expect(err).ToNot(HaveOccurred())
defer os.RemoveAll(tmpdir) // clean up
spec.SetOutputPath(tmpdir)
artifacts, errs := compiler.CompileParallel(false, compilerspec.NewLuetCompilationspecs(spec))
Expect(errs).To(BeNil())
Expect(len(artifacts)).To(Equal(1))
Expect(len(artifacts[0].Dependencies)).To(Equal(1))
Expect(artifacts[0].Files).ToNot(ContainElement("bin/busybox"))
Expect(fileHelper.Exists(spec.Rel("runtime-layer-0.1.metadata.yaml"))).To(BeTrue())
art, err := LoadArtifactFromYaml(spec)
Expect(err).ToNot(HaveOccurred())
files := art.Files
Expect(files).ToNot(ContainElement("bin/busybox"))
})
})
})

View File

@@ -0,0 +1,3 @@
unpack: true
image: "alpine"

View File

@@ -0,0 +1,3 @@
category: "layer"
name: "build"
version: "0.1"

View File

@@ -0,0 +1,8 @@
unpack: true
requires:
- category: "layer"
name: "build"
version: ">=0.1"
steps:
- rm -rfv /var

View File

@@ -0,0 +1,4 @@
category: "layer"
name: "runtime"
version: "0.1"
hidden: true