Age | Commit message (Collapse) | Author |
|
Merge formatting, but do not enforce it because that'd be a too high
hurdle for possible contributors.
|
|
Signed-off-by: Matthias Beyer <matthias.beyer@atos.net>
|
|
This field may be used by the packager to define meta information on a package
and later use that meta-information in their packaging scripts. For example:
meta.description = "A simple package"
and later use that to write a RPM spec file:
echo "Description: {{this.meta.description}}" >> specfile
Signed-off-by: Matthias Beyer <matthias.beyer@atos.net>
|
|
elided
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
This is the right scope anyways.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
This patch adds the "allowlist" feature for packages.
A package can have a list of allowed images to be built on - butido will
not execute the submit if one package is not allowed on the image
passed to butido.
This is the opposite of the denylist, of course.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
|
|
Before this patch, if a package had the following dependencies:
build = ["other =1"]
runtime = ["other =1"]
the package "other" in version "1" was built twice.
This is not necessary, we only need to build "other" once. This patch
fixes this bug.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
This makes the typing a bit more helpful by using a type for the name of
environment variables.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
This patch changes the sources to be named.
This is required for nice interpolation when layering pkg.toml files.
Before this, we had to make sure that the `[[sources]]` array element
was on the right position.
For example, consider two files:
/pkg.toml
/package/pkg.toml
in the first:
[[sources]]
url = "some/thing"
in the second:
[[sources]
hash.type = "sha1"
hash.value = "asdf..."
When merged:
[[sources]
url = "some/thing"
hash.type = "sha1"
hash.value = "asdf..."
but because the _position_ was responsible for merging these elements,
adding a new source file _before_ the existing on in /pkg.toml would
yield the /package/pkg.toml incomplete when merged onto /pkg.toml, thus
resulting in an error.
With named source entries, this is less likely.
The source file name includes the source name as well, of course.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Because we want to be able to work on different distros, we cannot have
a concept of "system dependencies", because each distro names their
packages differently.
The concept of installing stuff from a distro image can still be
accomplished easily via environment variables.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
This patch implements multiple (unnamed) sources per package.
This means that a package can have an array of sources.
What was adapted to allow multiple sources per package:
* Downloads are made in parallel now
* The cache structure was changed to /<package>-<version>/<hash>.source
* The UI was changed to contain the full `Package` struct (as JSON
object) in a UI format string
Tests were adapted.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Because we want to write the whole Tree object into the database as
JSON, we need to be able to serialize all these types.
Some of them (which had no implementation of Deserialize) also got an
implementation of Deserialize, because we also want to be able to read
them from the database and print them to the user.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
(cherry picked from commit 3170c9ed14e22c5baa41618326a4db02389da445)
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
The Executor type was supposed to execute the dependency scripts and
return a list of dependencies the script(s) printed.
As we removed the idea of dependency-scripts, we can remove the Executor
type as well.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
We don't even know anymore which problem we wanted to solve with this,
so remove it.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
This patch also implements helper functions (cfg(test)-gated) on various
types so we can instantiate them properly in the tests.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Because the derived Debug implementation has way too much information to
keep the log readable.
This way, the log stays readable.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
(Because none of the types implement Serialize)
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
definitions
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
This adds an Executor trait, which can be used to execute things on the
system for finding, for example, dependency specifications.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|
|
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
|