Commit Graph

428 Commits

Author SHA1 Message Date
Ettore Di Giacinto
cd73d950cc
Add fixture and test for includes and layered packages 2019-11-14 20:28:21 +01:00
Ettore Di Giacinto
ccdca66420
Small fixes and enhance output
Fixes a small issue with the Spinner which prevented to update the
spinner style. Also respect the temp folders of the output when
extracting the rootfs.
2019-11-14 20:22:49 +01:00
Ettore Di Giacinto
0eef18d75c
Add 'includes' to CompileSpec
The includes field is an array of regexp used to indicate what include
inside the packag. It can be omitted to default behavior (all)
2019-11-14 17:43:47 +01:00
Ettore Di Giacinto
08944a22ac
Add unicode icons 2019-11-14 00:14:43 +01:00
Ettore Di Giacinto
802adac5ee
Fixup resolvedeps updates of world
Drop useless code and address to some TODOs
2019-11-13 21:59:53 +01:00
Ettore Di Giacinto
cca20401e3
Enhance logging output 2019-11-13 17:07:59 +01:00
Ettore Di Giacinto
8de090c15c
Ensure destination folder exists when copying packages data
This currently breaks permission, but the whole method should be
re-worked also to keep more bits around
2019-11-13 17:07:09 +01:00
Ettore Di Giacinto
d5a8579454
Propagate also original Artifact name inside the copyjob 2019-11-13 17:06:55 +01:00
Ettore Di Giacinto
d752c0572b
Add unpack field to specify a package used as layer
Closes #9
2019-11-13 09:43:54 +01:00
Ettore Di Giacinto
747d0ef9ac
Do not fail in case we cannot remove cached images
Add a TODO, we should have a cli flag to treat warnings as fatal
2019-11-12 22:17:51 +01:00
Ettore Di Giacinto
f8f319941a
Parse packages in build cmd 2019-11-12 22:17:23 +01:00
Ettore Di Giacinto
5ee610f976
Merge pull request #6 from mudler/buildtree
Allow luet to solve buildtrees
2019-11-12 17:51:04 +01:00
Ettore Di Giacinto
fc1ac8fa38
Update vendor/ 2019-11-12 17:32:56 +01:00
Ettore Di Giacinto
2bbca653fd
Add tree test and minor comment fixups 2019-11-12 17:31:50 +01:00
Ettore Di Giacinto
a2c32aaaa1
Propagate reverse dep calculation
Whenever we update the tree with new informations, all the sibilings
needs to be updated as well

Also switch to inmemory db for recipe - even if this should be a switch
2019-11-12 17:30:06 +01:00
Ettore Di Giacinto
a85f4a53ec
Fix topological ordering
Keep unordered things on top and add two ways of topological sorting

Note: AssertionHash cannot order here as doesn't know the start point
2019-11-12 17:28:22 +01:00
Ettore Di Giacinto
a7a20358ef
Search in world instead of db (or solver would mismatch) 2019-11-12 17:26:00 +01:00
Ettore Di Giacinto
8c36580722
Use image tags for cache instead of names 2019-11-12 17:24:24 +01:00
Ettore Di Giacinto
b64cf677c6
First order, then drop - or hash would mismatch 2019-11-12 17:24:00 +01:00
Ettore Di Giacinto
4c1c7451e7
Resolve deps before compiling 2019-11-12 08:48:07 +01:00
Ettore Di Giacinto
e0aa92efa4
Add fixture 2019-11-12 00:13:24 +01:00
Ettore Di Giacinto
e7a328bca7
Fix compilation and hash image calculation. Tests fails on spec (installing d) 2019-11-12 00:13:03 +01:00
Ettore Di Giacinto
af49696aff
WIP Compiler for images by solving the deptree 2019-11-11 19:19:13 +01:00
Ettore Di Giacinto
8550265d75
Add assertion hashing 2019-11-11 14:58:12 +01:00
Ettore Di Giacinto
2dd56e9e49
Create a type for lists of PackageAssertion, and move Order() inside it 2019-11-11 11:02:47 +01:00
Ettore Di Giacinto
ebd4cfc318
Make Compile work in parallel
Also make the spinner thread-safe
2019-11-11 10:22:55 +01:00
Ettore Di Giacinto
49a77280ae
Add build cmd in the cli 2019-11-10 22:40:31 +01:00
Ettore Di Giacinto
420186b7db
Switch to go mod 2019-11-10 18:05:28 +01:00
Ettore Di Giacinto
f634493dc0
Add tests for package compilation with images 2019-11-10 10:49:24 +01:00
Ettore Di Giacinto
ea2a51ce66
Implement compilation with images
A compilespec with an image defined (and no seed) can now be compiled,
and an artifact delta is provided at the end of the process.
2019-11-10 10:48:07 +01:00
Ettore Di Giacinto
c51c6264d7
Backend nows must expose a way to unpack rootfs of images 2019-11-10 10:47:28 +01:00
Ettore Di Giacinto
fc93c9e3ea
Generate artifact delta from layer diffs 2019-11-10 10:46:57 +01:00
Ettore Di Giacinto
a9bf9223c9
Rename PreBuildSteps in Prelude 2019-11-10 10:45:13 +01:00
Ettore Di Giacinto
8bebd2a7f2
Add container-diff to travis 2019-11-09 14:00:33 +01:00
Ettore Di Giacinto
45651a3bcc
Define Artifact diffs layers
It also add in simpledocker a naive implementation using the container-diff binary, which is supposed to go away with a proper API implementation.
2019-11-09 13:58:15 +01:00
Ettore Di Giacinto
1131a52f97
Extend the test also for the packages that doesn't have a special ordering 2019-11-09 11:18:20 +01:00
Ettore Di Giacinto
a3b4d953d7
Add disequality test for assertion ordering 2019-11-09 11:16:22 +01:00
Ettore Di Giacinto
383efe3c99
Update vendor/ 2019-11-09 10:47:44 +01:00
Ettore Di Giacinto
f7efbe23f2
Add topological order for assertions 2019-11-09 10:47:18 +01:00
Ettore Di Giacinto
0672dd792e
Add WIP Compiler steps for rootfs 2019-11-08 19:57:23 +01:00
Ettore Di Giacinto
4ea8f26878
Define a generic Artifact object for now 2019-11-08 19:57:04 +01:00
Ettore Di Giacinto
b2d305bb8d
Add docker service to travis 2019-11-08 18:32:56 +01:00
Ettore Di Giacinto
29ccb3e168
Add SimpleDocker backend 2019-11-08 18:31:16 +01:00
Ettore Di Giacinto
639d4438e1
Adapt tests 2019-11-08 18:30:53 +01:00
Ettore Di Giacinto
3920f9a5ac
Add accessors for LuetCompilationSpec 2019-11-08 18:30:19 +01:00
Ettore Di Giacinto
300e60984a
CompilerBackend now consumes a CompilerOptions 2019-11-08 18:29:51 +01:00
Ettore Di Giacinto
0321973359
Add PreBuild steps
They are executed when building the "builder" image, those are not accounted to the diffs when producing the final artifact
2019-11-08 18:28:01 +01:00
Ettore Di Giacinto
287212db1c
Add simple img backend 2019-11-05 17:37:21 +01:00
Ettore Di Giacinto
ff88ff67c2
Add Separate tree for build dependency
Reuse the Recipe and extend it to read a separate tree for build
dependencies.

Also add accessors to compilespec to produce dockerfile image format.
2019-11-05 17:36:22 +01:00
Ettore Di Giacinto
f570f74a9e
Add make fmt 2019-11-05 17:21:06 +01:00