Ettore Di Giacinto
797a34ba49
Reuse same dockerfile gen logic between prelude and steps
...
As now we build only when necessary, we need to make sure the images are
built similarly. The discrepancies between the two are less now, and
they can share the same logic.
This fixes a regresion where when no prelude is defined, the build
context isn't copied over
2020-12-12 11:16:34 +01:00
Ettore Di Giacinto
a1453b7242
Fixup error messages
2020-12-11 23:03:56 +01:00
Ettore Di Giacinto
9eef7e5c6d
Clean up if condition
2020-12-09 22:58:33 +01:00
Ettore Di Giacinto
332824fd42
Fail in the downloader goroutine and don't skip errors with force
2020-12-09 22:56:55 +01:00
Ettore Di Giacinto
737fbdbdc1
Don't make artifact checksum skippable
2020-12-09 21:31:07 +01:00
Ettore Di Giacinto
b5990b5333
Generate changes from CompilerBackendOptions and pass by image name so img can unpack images
2020-12-09 00:27:37 +01:00
Ettore Di Giacinto
9911888d18
Stabilize test
2020-12-08 14:56:51 +01:00
Ettore Di Giacinto
cf5e4e1305
Detect removed also when availables aren't found
2020-12-08 12:28:20 +01:00
Ettore Di Giacinto
519586f6bc
Search for removed in Def DB
2020-12-08 12:07:28 +01:00
Ettore Di Giacinto
6dbc422b8f
Apply solver change to UpgradeUniverse also to the parallel variant and adapt tests
...
Similarly, we want just to consider what is being uninstalled and the
new rules of the package that is going to be upgraded
2020-12-08 11:43:38 +01:00
Ettore Di Giacinto
a3cfebf438
Create BuildFormula from installed with InstallDatabase
...
Instead of using the DefinitionDB which supposedly contains only the
relations present in the online repositories. In this way the solver its
more consistent and tries to solve with only the internal definitions.
This also fixes quirks with luet upgrade --universe
2020-12-08 10:58:08 +01:00
Ettore Di Giacinto
24201b25ef
Apply solver change also to the parallel variant
2020-12-08 10:41:03 +01:00
Ettore Di Giacinto
7c53296530
Adapt tests
2020-12-08 10:39:15 +01:00
Ettore Di Giacinto
a3cb0ed17f
When attempting to uninstall, do it from the internal db so it can resolve the current versions
2020-12-08 02:04:54 +01:00
Ettore Di Giacinto
9a34296be0
Build step is always required for tagging images
2020-12-07 19:39:56 +01:00
Ettore Di Giacinto
ebd18ae22c
Set builderTagged image afterwards
2020-12-07 18:58:14 +01:00
Ettore Di Giacinto
6bf7368993
Don't replace buildertaggedImage if there aren't build steps
2020-12-07 18:39:15 +01:00
Ettore Di Giacinto
338f310d67
Tag and push an image when virtual is supplied, to have a track of it in the image graph tree
2020-12-07 17:59:30 +01:00
Ettore Di Giacinto
59d78c3f5c
While upgrading always use nodeps while computing uninstall
2020-12-07 17:20:55 +01:00
Ettore Di Giacinto
86c256a062
Generate empty tar
2020-12-07 17:20:32 +01:00
Ettore Di Giacinto
3c0dd2b71d
Adapt test
2020-12-07 00:07:57 +01:00
Ettore Di Giacinto
e9b4d66a3e
Retrieve should be rendered also for step images
2020-12-07 00:00:32 +01:00
Ettore Di Giacinto
5047316b70
Try to build only when strictly necessary
2020-12-06 23:50:51 +01:00
Ettore Di Giacinto
d479ada402
Don't consider deps while uninstalling during package Swap
...
Beside being forced, it also doesn't need to look deep into the deps, as
we already have precalculated those
2020-12-06 22:48:48 +01:00
Ettore Di Giacinto
7b800c9a20
Pre-compute swap step
...
Otherwise, while upgrading, it could happen that package dependencies
aren't downloaded before, and they would just be installed in the middle
of installation, after removal already happened.
2020-12-06 22:11:17 +01:00
Ettore Di Giacinto
18e6e085d5
Sort correctly also subfolders
2020-12-05 23:17:05 +01:00
Ettore Di Giacinto
67c43eb936
Don't bail out if package is installed and we have a list
2020-12-03 20:03:37 +01:00
Ettore Di Giacinto
cf80e5fc09
Resolvers might omit packages
2020-12-03 18:53:57 +01:00
Ettore Di Giacinto
d668d8344b
Accept selectors on uninstall and fixup failure logic
2020-12-03 18:32:24 +01:00
Ettore Di Giacinto
b17ac447f1
Display matched packages only, and check if they are available
2020-12-03 17:25:29 +01:00
Ettore Di Giacinto
6dbf19f085
Use single image to build packages
2020-12-02 21:18:12 +01:00
Ettore Di Giacinto
9423b7c1e3
Add image build events, and add luet replace
...
Enhance also some commands descriptions
2020-12-02 18:24:35 +01:00
Ettore Di Giacinto
9784d6192a
Don't hide error on pulling image
2020-11-28 18:03:43 +01:00
Ettore Di Giacinto
0fe30ddcfd
Add ability to interpolate during build
...
Now build takes a --values argument, which is a yaml file that can be
used to interpolate the specs that are going to be compiled.
2020-11-28 15:47:29 +01:00
Ettore Di Giacinto
44d33eceba
Set workdir also on step image
...
Otherwise with DOCKER_SQUASH=true it wouldn't be coherent on where to
find the package files
2020-11-28 12:07:07 +01:00
Ettore Di Giacinto
8ce135fe12
Add DOCKER_SQUASH
2020-11-27 23:38:31 +01:00
Ettore Di Giacinto
18d9366bca
Minor fixes
2020-11-24 18:27:49 +01:00
Ettore Di Giacinto
db1b190fb5
Minor fixup and cleanups around the new prompt feature
2020-11-23 18:20:30 +01:00
Ettore Di Giacinto
b349665ff2
Add user prompts
...
Fixes #106
2020-11-22 23:43:29 +01:00
Ettore Di Giacinto
53ab0e0dd2
Merge pull request #151 from mudler/download-progress-bar
...
Download progress bar
2020-11-20 19:00:25 +01:00
Daniele Rondina
60d5c9dfd5
Add download progress bar
2020-11-20 18:12:23 +01:00
Ettore Di Giacinto
1f807f369a
Move revdeps computation to db
2020-11-20 17:23:21 +01:00
Ettore Di Giacinto
0cc2b72831
Drop converter code, will be in a separate extension
2020-11-19 18:10:16 +01:00
Ettore Di Giacinto
f2df3faee5
Now Uninstall takes multiple packages
2020-11-19 18:05:27 +01:00
Daniele Rondina
f9a7113ab9
client/http: Add experimental download info
2020-11-19 00:56:28 +01:00
Ettore Di Giacinto
ac149e9336
Use candidate for search, as doesn't have a selector
2020-11-15 11:47:32 +01:00
Ettore Di Giacinto
b9c8e50e42
Allow to define multiple templated packages with collections
...
Collections, similarly to packages, have a `build.yaml` and
a `finalize.yaml` that are templated for each package.
They have a `collection.yaml` containing a list of
packages that are part of the tree.
2020-11-15 00:13:46 +01:00
Daniele Rondina
83f924da35
spectools: Add DefaultPackageSanitized.Clone()
2020-11-14 12:42:49 +01:00
Ettore Di Giacinto
0e46e763d5
Move bus implementation to a separate repo, hook to events in luet
2020-11-13 18:25:44 +01:00
Ettore Di Giacinto
a793b44e83
Wip
2020-11-12 23:21:10 +01:00
Ettore Di Giacinto
a8624fe451
Move image removal in compileWithImage and further cleanup
2020-11-10 18:48:39 +01:00
Ettore Di Giacinto
14c1d6ef24
Refactor and optimize build process
2020-11-10 18:14:18 +01:00
Ettore Di Giacinto
36c58307e2
Don't export unless needed
2020-11-10 16:57:24 +01:00
Ettore Di Giacinto
a765147c1d
Add templated finalizers
2020-11-08 21:14:19 +01:00
Ettore Di Giacinto
cead09fb9f
Merge pull request #148 from mudler/respect_rootfs4conf
...
Respect rootfs path for configs and url
2020-11-08 18:25:29 +01:00
Daniele Rondina
9a1787ddaf
client/local: Handle config_from_host on DownloadFile
2020-11-08 17:06:05 +01:00
Ettore Di Giacinto
b1316b50b4
Add excludes tests
2020-11-08 16:02:11 +01:00
Ettore Di Giacinto
d92ee9e1d9
Add preliminar support for excludes
2020-11-08 15:35:24 +01:00
Ettore Di Giacinto
6a1b64acea
Order files before uninstall
...
Fixes #149
2020-11-08 12:36:41 +01:00
Ettore Di Giacinto
459eb01a59
Don't write err to stdout if not present
2020-11-08 10:02:00 +01:00
Daniele Rondina
e70cdbaaf7
Respect rootfs on repositories urls
2020-11-08 00:00:15 +01:00
Daniele Rondina
513f441bb3
Add option config_from_host
2020-11-07 18:56:25 +01:00
Daniele Rondina
ebe7466fdc
Respect rootfs path for load config
2020-11-07 18:28:23 +01:00
Ettore Di Giacinto
46ed6423ad
Merge pull request #147 from mudler/fix-protect-uninstall
...
Fix protect uninstall
2020-11-07 12:28:24 +01:00
Daniele Rondina
d5df40512b
installer: Improve message for protected files
2020-11-07 12:27:18 +01:00
Daniele Rondina
d219a2e0fb
Run travis task with/without buildkit
2020-11-07 11:41:44 +01:00
Daniele Rondina
4048138dcb
Add test suite for ConfigProtect
2020-11-07 11:39:31 +01:00
Daniele Rondina
e5f44eee09
ConfigProtect: support annotation without initial /
2020-11-07 11:39:13 +01:00
Daniele Rondina
6819a28f07
Add support to DOCKER_BUILDKIT on test
2020-11-07 11:37:58 +01:00
Daniele Rondina
24eb6eaef5
Fix test with docker buildkit
2020-11-07 11:37:58 +01:00
Daniele Rondina
c72565e019
Integrate tests for config protects with uninstall
2020-11-06 23:30:37 +01:00
Daniele Rondina
68bc8d4d27
ConfigProtect: Permit to obtain the list of files without initial /
2020-11-06 23:29:08 +01:00
Daniele Rondina
b24d335538
GetProtectFiles() is used also for tree tarball without specs
2020-11-06 23:00:37 +01:00
Ettore Di Giacinto
99bf9e291d
Use LStat and attempt removing before bailing out on first failure
2020-11-06 21:34:56 +01:00
Daniele Rondina
51417ecb5d
pkg/compiler/artifact.go: permit to support config protect with only annotation
2020-11-06 20:23:46 +01:00
Daniele Rondina
130eb8de1a
Integrate config protection on uninstall too
2020-11-06 20:14:25 +01:00
Ettore Di Giacinto
5b5735266a
Calculate provides for parallel solver too
2020-11-05 21:00:24 +01:00
Ettore Di Giacinto
984366d3a5
Consider provides during upgrades
2020-11-05 20:52:02 +01:00
Ettore Di Giacinto
25f69d4f1c
Bump topsort
2020-11-03 17:20:52 +01:00
Ettore Di Giacinto
102a788c91
Revert "Revert "Stabilize ordering graph""
...
This reverts commit 2b23016a51
.
2020-11-02 15:43:35 +01:00
Ettore Di Giacinto
2b23016a51
Revert "Stabilize ordering graph"
...
This reverts commit 940f553e1c
.
2020-11-02 15:43:15 +01:00
Ettore Di Giacinto
940f553e1c
Stabilize ordering graph
...
In this way when we order, we always return the same solution order in
case there are weak deps.
The following is optional - it doesn't change the "correctness" of the
solver results: We add an extra edge between deps that
share common dependendencies. This makes the link more stronger and
balances the graph so it doesn't show different results for the same query, as they
could be shuffled as don't have a direct connection.
2020-11-02 14:30:41 +01:00
Ettore Di Giacinto
c3ef549673
Warn user only when required when uninstalling directories
2020-10-31 11:56:03 +01:00
Ettore Di Giacinto
0e764e525e
Filter packages to install instead of looping solver result
2020-10-31 01:25:18 +01:00
Ettore Di Giacinto
f401e2b37f
Add install benchmark test for solver
2020-10-30 22:20:08 +01:00
Ettore Di Giacinto
91dfb8ce3a
Enhance CLI output
2020-10-30 19:15:04 +01:00
Ettore Di Giacinto
f6a4b634c1
Don't always walk all World() packages
...
With this change the solver during install now considers only the part
of the tree which is required to calculate the solution, it doesn't
consider anymore World() as the search space.
The search space now is narrowed down to the packages that related to
the one which we are considering.
In this subset of changes we are also optimizing the Parallel solver
avoiding an useless loop.
This change boost overall performance on large datasets which don't
necessarly have relations touching the whole tree.
2020-10-30 19:12:12 +01:00
Ettore Di Giacinto
39bc74fc73
Add boltDB test and fixup range over interface cast
2020-10-29 16:32:13 +01:00
Ettore Di Giacinto
99c59643a1
Add benchmarks tests
2020-10-29 16:32:13 +01:00
Ettore Di Giacinto
ffea4d8cf9
Fix priority constraint formula
...
The parallel solver made the issue more visible, the constraints needed
to be less relaxed and needed to be exclusive so our candidate is looked
up at it first
2020-10-29 16:32:13 +01:00
Ettore Di Giacinto
e459ddf470
Optimize BoltDB World() call
2020-10-29 16:32:13 +01:00
Ettore Di Giacinto
eb2c240e84
Adapt installer tests
2020-10-29 16:32:13 +01:00
Ettore Di Giacinto
95e640c9d0
Make solver type switchable
2020-10-29 16:32:13 +01:00
Ettore Di Giacinto
9f1a182eee
Add tests and various fixes to parallel implementation
2020-10-29 16:32:13 +01:00
Ettore Di Giacinto
9a7d92b02e
Make the parallel solver completely parallel in building formulas from dataset
2020-10-29 16:32:13 +01:00
Ettore Di Giacinto
c5ed36b2bd
Sketch concourrent solver when building formulas
2020-10-29 16:32:13 +01:00
Daniele Rondina
6806103b3e
installer: Start spinner of upgrade calculation
2020-10-25 14:01:45 +01:00
Ettore Di Giacinto
0aa0411c6e
Bump copy dep and handle shallow symlinks
2020-10-19 17:58:43 +02:00
Daniele Rondina
c0cc9ec703
convert: Now use slot for category name
2020-10-18 19:58:15 +02:00
Daniele Rondina
07dff7f197
installer: log packages ignored on create-repo
2020-10-12 08:42:19 +02:00
Daniele Rondina
d67cf2fa33
Revert "Do image export only if we have to generate the package"
...
This reverts commit 0857e53b03
.
2020-10-07 10:14:06 +02:00
Ettore Di Giacinto
0857e53b03
Do image export only if we have to generate the package
2020-10-06 19:01:25 +02:00
Ettore Di Giacinto
1c1bdca343
Add only-target-package option to luet build
2020-10-06 17:57:57 +02:00
Ettore Di Giacinto
74246780d4
Support templated packages
2020-10-04 19:33:15 +02:00
Daniele Rondina
097ea37c97
compiler/artefact: remove debug println
2020-10-02 22:37:38 +02:00
Daniele Rondina
c64660b8d1
Permit to ignore config protect rules
...
* Added command line option --skip-config-protect
* Added config option config_protect_skip
2020-10-02 22:25:21 +02:00
Daniele Rondina
c8c53644f3
Avoid segfault if tree path doesn't exist
2020-09-17 08:05:05 +02:00
Daniele Rondina
045d25bb28
pkg/package: Add method SetVersion to DefaultPackage
2020-08-30 08:53:37 +02:00
Daniele Rondina
93187182e5
pkg/compiler: Fix typo on error message
2020-08-19 19:24:46 +02:00
Ettore Di Giacinto
a076613f66
Fixup import path
2020-08-07 19:30:08 +02:00
Ettore Di Giacinto
95b125cb91
Pull images before executing diff tests
2020-08-06 18:03:00 +02:00
Ettore Di Giacinto
66513955c7
Compute image diffs internally
...
Is it more faster in this way as we already have all the needed folders
to the comparison extracted. In this way we don't repeat I/O operation
twice by calling container-diff.
Do not depend on container-diff anymore
2020-08-05 19:09:45 +02:00
Ettore Di Giacinto
e30bb056d5
Drop IsFlagged from tests
2020-08-02 12:22:43 +02:00
Ettore Di Giacinto
052a551c0c
Add "hidden" field to packages
...
Also drop residual of IsSet which isn't actually used
Related to #26
2020-08-02 11:31:23 +02:00
Ettore Di Giacinto
07a1058ac1
Add cli option to skip packages if only metadata is present (without checking the image)
2020-07-17 22:42:03 +02:00
Ettore Di Giacinto
5dcf77c987
Add package buildtimestamp and luet upgrade --sync
...
Annotate the package build time when compiling, and use that from the
client to force upgrade of packages that changed the artifact, but
didn't changed any version.
The client can trigger this behavior with `luet upgrade --sync`
2020-07-12 15:29:38 +02:00
Daniele Rondina
364b5648b4
repository loader now support .yaml extension
2020-07-04 20:07:32 +02:00
Daniele Rondina
e2260b6956
Add --no-spinner option
2020-06-27 16:45:49 +02:00
Ettore Di Giacinto
16e9d7b20c
Use packageImage as builder image fingerprint
...
This allows to have an unique identifier for the builder image id against
different depgraphs combinations. The package fingerprint is not enough,
as an atom could have a difference deptree depending on the requires
constraints.
TODO: Don't use the full image name, but only the hash as a salt
(currently the salt contains ALSO a reference of the image-repository,
as such it doesn't allow to port a tree in a different docker registry)
2020-06-23 18:59:18 +02:00
Ettore Di Giacinto
7b51e83902
Merge pull request #119 from mudler/config-protect
...
Integrate feature config-protect like Gentoo/Funtoo do
2020-06-07 11:33:55 +02:00
Daniele Rondina
3a365c709b
Integrate config-protect from package spec
2020-06-06 13:12:54 +02:00
Daniele Rondina
0917c2703e
helpers/archive: Refactor and add support for config protect when sameOwner is false
2020-06-06 12:34:44 +02:00
Ettore Di Giacinto
264e1e9652
Print inspect output as string
2020-06-06 11:32:47 +02:00
Daniele Rondina
c87db16d31
tarModifierWrapperFunc: Now use strings.HasPrefix for match path
2020-06-06 10:38:11 +02:00
Daniele Rondina
837eeb04ec
config/config_protect: Fix load of configuration files
2020-06-06 10:35:38 +02:00
Ettore Di Giacinto
90a25406a0
Add --full option to build
...
Don't compile dependencies when computing all the compilation specs from
a tree if are among the target deps
Fixes #41
2020-06-06 08:58:18 +02:00
Daniele Rondina
d946e39a15
pkg/helpers/archive_test: Fix test
2020-06-05 23:53:33 +02:00
Daniele Rondina
415b1dab9a
Add test of modifier
2020-06-05 23:12:35 +02:00
Daniele Rondina
16f717f04b
tarModifierWrapperFunc: Fix config protect filename
2020-06-05 23:12:19 +02:00
Ettore Di Giacinto
9e0e1199df
Check if image exists before skipping compilation
2020-06-03 21:00:30 +02:00
Daniele Rondina
8f0c528c08
Create helpers.UntarProtect for handle protected files
...
Currently, it's used the archive.ReplaceFileTarWrapper
that requite a []byte of the files replaced. This is not
a good idea if files are big and instead could be better
in the near future reimplement ReplaceFileTarWrapper with
a callback that return io.Reader instead of []byte.
If a protected file is already present on target rootfs
it is created a file with the same prefix used in Gentoo:
._cfgXXXX_<filename>
2020-06-02 11:08:37 +02:00
Daniele Rondina
a2231749ab
Begin implementation for catch config protect files
2020-06-02 09:04:40 +02:00
Ettore Di Giacinto
990a5405cf
Merge pull request #116 from mudler/review-config-path
...
Review configuration file parsing logic
2020-05-31 11:05:55 +02:00
Daniele Rondina
1d8a6174bb
Drop duplicate code for general.same_owner
2020-05-30 16:51:10 +02:00
Daniele Rondina
9e7c7e69f8
Review configuration file parsing logic
...
Luet support now these priorities on read configuration file:
- command line option (if available)
- $PWD/.luet.yaml
- $HOME/.luet.yaml
- /etc/luet/luet.yaml
2020-05-30 16:46:29 +02:00
Ettore Di Giacinto
cc21e6fa5e
Respect user-defined repository naming
2020-05-24 12:16:02 +02:00
geaaru
8c4f5b2911
Merge pull request #113 from mudler/annotations
...
Add Annotations to package spec
2020-05-23 10:52:32 +02:00
Daniele Rondina
44d68a9583
Add annotations option to package spec
2020-05-23 09:27:38 +02:00
Daniele Rondina
dba6c361c2
Move helpers/cli to cmd/helpers
2020-05-23 08:51:33 +02:00
Ettore Di Giacinto
4197d7af61
Add upgrade by using only the SAT core
...
- Adds upgrade --universe and upgrade --universe --clean. It will
attempt to bring the system as much close as the content available in
the repositories. It differs from a standard upgrade which checks
directly that what is pulled in doesn't conflict with the system. In
this new way, we just query the SAT solver to decide that on our
behalf.
- Add uninstall --full-clean. It uses only the SAT solver to uninstall
the package and it will drop as many packages as required (including
revdeps of packages too.
2020-05-22 21:20:58 +02:00
Ettore Di Giacinto
bfde9afc7f
Add Nodeps and Full options to upgrade
2020-05-22 21:20:57 +02:00
Ettore Di Giacinto
3237423dde
Enhance upgrade output
2020-05-22 21:20:57 +02:00
Ettore Di Giacinto
ab179db96a
Don't drop packages that would be re-installed during upgrade
...
Check for packages that are marked for deletion. If the ones that are
marked for install are depending on it, don't remove them at all
2020-05-22 21:20:52 +02:00
geaaru
916b2a8927
Merge pull request #112 from mudler/package-sanitized
...
Package sanitized
2020-05-20 11:42:47 +02:00
Daniele Rondina
a16bdddeb2
Add spectooling test suite
2020-05-20 10:26:30 +02:00
Daniele Rondina
e38a4b3d9b
Use DefaultPackageSanitized struct for write specs
2020-05-20 09:59:48 +02:00
Ettore Di Giacinto
9971fe9f45
Unique hashes for packages without deps
2020-05-18 19:57:01 +02:00
Daniele Rondina
11759f98e0
package/NewPackage: init Labels on AddLabel
2020-05-18 19:51:47 +02:00
Daniele Rondina
cb2ac15de8
package: Fix typo on labels key
2020-05-17 19:17:14 +02:00
Ettore Di Giacinto
51711dafba
Add package_dir to pack a spec dir as the main artifact
2020-05-16 21:34:27 +02:00
Ettore Di Giacinto
2803430515
Add solver test scenario
2020-05-16 11:11:17 +02:00
Daniele Rondina
a7d1381cb5
cmd/create-repo: Add support for multiple trees
2020-05-10 20:18:10 +02:00
Daniele Rondina
13df161fc6
logging: permit to disable color and emoji
...
Now it's possible disable color and emoji on standard
output with:
$> luet <cmd> --color=false --emoji=false
Hereinafter, the list of changes:
* Added logging option logging.color (default true)
* Added logging option logging.enable_emoji (default true)
* Added persistent flag --color
* Added persistent flag --emoji
2020-05-09 10:08:21 +02:00
Daniele Rondina
fe5ab9246f
Added option for enable log to file.
...
Now it's possible logging to file is handled by the enable_logfile
option and by the path.
From cli is now possible:
* enable log to file with the option --enable-logfile
* modify the logfile path with the option --logfile/-l <path>
2020-05-09 10:05:34 +02:00
Ettore Di Giacinto
20cb96e0cc
Simplify ordering check
...
we don't need a map[string]map[string]interface{}, as we don't need to
keep the data around
2020-05-04 17:34:29 +02:00
Daniele Rondina
b68634b58a
solver: skip same packages in the order and avoid loop
2020-05-04 12:21:49 +02:00
Ettore Di Giacinto
46014fb9c1
Enhance install output
2020-05-03 13:22:06 +02:00
Ettore Di Giacinto
ada9d886fa
Enhance uninstall output
2020-05-03 13:22:00 +02:00
Ettore Di Giacinto
a1d8ef1422
Allow to partially uninstall a package graph, make uninstall --full optional
2020-05-03 13:04:34 +02:00
Ettore Di Giacinto
7b6e4a2176
Add to the Solver the capability to check conflicts with revdeps
2020-05-03 10:34:18 +02:00
Ettore Di Giacinto
3befbfa915
Optimize uninstall computation
2020-05-02 15:43:57 +02:00
Ettore Di Giacinto
d4c25d74f5
Remove focus from test
2020-05-02 13:27:15 +02:00
Ettore Di Giacinto
2ed9781c88
Don't try to match against repo already installed packages
2020-05-02 13:24:46 +02:00
Ettore Di Giacinto
9d6d6bc0c8
Add more upgrade and reclaim tests scenarios
2020-05-02 12:18:19 +02:00
Ettore Di Giacinto
f8b2837741
Enhance reclaim output
2020-05-02 12:17:54 +02:00
geaaru
878e6d7b9c
Merge pull request #103 from mudler/tmpdir-cleanup
...
Tmpdir cleanup
2020-05-02 09:20:01 +02:00
Daniele Rondina
a89c0af2f8
config/config_test: Fix typo
2020-05-01 15:34:17 +02:00
Daniele Rondina
1f99fde1c5
Add config test suite
2020-05-01 15:26:53 +02:00
Ettore Di Giacinto
4b63c9eaf9
Add test to be sure we don't index packages not in the tree
2020-05-01 11:48:05 +02:00
Ettore Di Giacinto
286d0fba2c
Fix typo
2020-05-01 11:07:14 +02:00
Ettore Di Giacinto
624518bf77
Don't add package to the repository which aren't referenced by the tree
2020-05-01 10:52:40 +02:00
Daniele Rondina
51a4037b1b
config: Initialize luet tmp basedir if doesn't exist
2020-05-01 08:18:18 +02:00
Ettore Di Giacinto
9cb290b484
Improve database errors
2020-04-30 20:44:34 +02:00
Daniele Rondina
11944873ea
Integrate tmpdir_base params and tmpdirs cleanup
2020-04-30 20:29:28 +02:00
Ettore Di Giacinto
322ac99f17
Annotate package runtime definition when reclaiming
...
This was an issue as we were copying the buildspec instead
2020-04-30 18:56:50 +02:00
Ettore Di Giacinto
6acc5fc97e
Make BuildFormula support dependency cycles
2020-04-30 18:56:35 +02:00
Ettore Di Giacinto
6a4557a3b3
Make RequireContains support dependency cycles
2020-04-30 18:56:06 +02:00
Ettore Di Giacinto
a457c53824
Fixups to ExpandedRevdeps
2020-04-24 00:15:18 +02:00
Ettore Di Giacinto
8305d01e76
Walk requires in ExpandedRevdeps
...
In this way we annotate the visited and we avoid cycles that can be
generated by revdeps
2020-04-23 23:44:42 +02:00
Ettore Di Giacinto
9321a310a5
Support mount with target folder in box exec
...
Also mount bind before pivotroot, this fixes bind mounting in general
2020-04-21 17:30:27 +02:00
Ettore Di Giacinto
4cee27da7f
Fixup box CLI params and consume new box options
2020-04-20 23:03:03 +02:00
Ettore Di Giacinto
98876c8f20
Add support for env and hostmounts in box
2020-04-20 23:01:49 +02:00
Ettore Di Giacinto
4c2d38be59
Add package ExpandedRevdeps
2020-04-19 11:55:13 +02:00
Ettore Di Giacinto
8e91c255a3
Make FindPackageMatch match packages HumanReadableString
2020-04-19 10:47:55 +02:00
Ettore Di Giacinto
ac871cb0a3
Add --output option to search
...
In such way it can be parsed by scripts more easily.
It also disable the spinner based on loglevel
Fixes #92
2020-04-18 23:22:00 +02:00
Ettore Di Giacinto
4d466d0330
Sync the repository data with user configured data
...
Fixup a regression, in this way we respect the user configuration in
regards to a repository to be consumed (priority and repository type)
regardless of the one advertized remotely.
Also add informative message about prio and type.
2020-04-18 17:33:46 +02:00
Ettore Di Giacinto
84407e5ae7
Add SetPriority to repository
2020-04-18 17:33:34 +02:00
Ettore Di Giacinto
64bac0823c
Consume our moby fork
...
It handles #91
2020-04-18 11:41:34 +02:00
Ettore Di Giacinto
ee0fe1a86a
Allow to finalizer to specify entrypoint command
...
In this way, finalizer in strict environment can override the default
shell used to run commands.
The shell keyword is a list, as it needs to contain the full command +
args.
2020-04-14 17:46:39 +02:00
Ettore Di Giacinto
538ba8f5df
Add luet reclaim
...
Reclaim allows to migrate between different system layouts. This
is a experimental feature (yet) and might be revisited in the future.
This change:
- Adds Reclaim(system) to Installer
- Adds unit tests
Relates to #86
2020-04-13 19:32:51 +02:00
Ettore Di Giacinto
eb56956c65
Add Touch file helper
2020-04-13 19:32:50 +02:00
Ettore Di Giacinto
4e2d42e397
Drop downloadOnly bool from installer.Install
2020-04-13 19:32:50 +02:00
Ettore Di Giacinto
528f481a7b
Annotate package files in metadata
...
Fixes #87
2020-04-13 10:52:41 +02:00
Ettore Di Giacinto
f987ee9fa0
Handle errors from os/user
...
We use it to generate defaults, if error is found, we imply preserve
permissions
2020-04-11 20:05:56 +02:00
Daniele Rondina
69a82a1ca5
simpledocker: Use debug option for print container-diff results
2020-04-10 09:32:12 +02:00
Daniele Rondina
02c33896d5
simpledocker: Move warning before return
2020-04-10 09:31:08 +02:00
Daniele Rondina
c2e9176ab2
solver.Order now return error
2020-04-09 17:07:57 +02:00
Ettore Di Giacinto
0d2668e452
Print warning if container-diffs return errors to stderr
2020-04-08 18:31:40 +02:00
Ettore Di Giacinto
77ba4193aa
Add ValidateSelector to versioner interface and consume it
...
We can refactor furthermore by dropping the package methods, as now we
can consume a versioner in all places that requires it
2020-04-05 15:52:16 +02:00
Ettore Di Giacinto
5a5e7f1dfa
Move version logic inside versioner
...
WIP, it needs yet to be under the interface implementation
2020-04-05 11:16:14 +02:00