Commit Graph

1464 Commits

Author SHA1 Message Date
Ettore Di Giacinto
f71cc5281e Offer World from database
Compute here world instead of scattering it in different structures.

Also move Best() in package and make expansion here #20
2019-11-29 19:01:48 +01:00
Ettore Di Giacinto
c9d93454b8 Drop IsFlagged() from what the solver considers 2019-11-29 19:01:47 +01:00
Ettore Di Giacinto
66cd6d1027 Drop ResolveDeps, and the Tree structure #20 2019-11-29 19:01:46 +01:00
Ettore Di Giacinto
b5381e0248 Make solver consume databases instead of world lists
first step - it is slower in the implementation for now, but all cases
seems to be sorted out.
Drop Flagged() and IsSet() from solver. the solver wont care, and only
the assertion value does matter (exception for uninstall)
2019-11-29 19:01:41 +01:00
Ettore Di Giacinto
da9e14fb45 Distinguish solverdb 2019-11-29 19:01:12 +01:00
Ettore Di Giacinto
6d25e5d881 Check if a layer is provided in the manifest 2019-11-26 20:22:33 +01:00
Ettore Di Giacinto
393164da36 Extract all layers of the docker image 2019-11-26 20:12:06 +01:00
Ettore Di Giacinto
1cf5f2eb74 Enhance compile output 2019-11-26 20:11:51 +01:00
Ettore Di Giacinto
caca3fbf8c Return immediately in case of deps failures 2019-11-26 20:11:27 +01:00
Ettore Di Giacinto
1e426b93a1 update vendor/ 2019-11-26 18:07:01 +01:00
Ettore Di Giacinto
5915688830 Add client tests 2019-11-26 18:06:23 +01:00
Ettore Di Giacinto
a54040dcd3 Add http client for installer #3 2019-11-26 18:05:48 +01:00
Ettore Di Giacinto
9c5a349d5d Make possible to disable app locking 2019-11-26 18:05:13 +01:00
Ettore Di Giacinto
d67742c28f Add docker image from scratch
Also add make target for it, and disable CGO
2019-11-26 17:30:38 +01:00
Ettore Di Giacinto
a674c6515c update vendor/ 2019-11-25 20:32:33 +01:00
Ettore Di Giacinto
08897b5105 Allow one instance of the application to run 2019-11-25 20:28:08 +01:00
Ettore Di Giacinto
62af9c81d5 BoltDB fixups
Unmarshalling needs well-defined structs, also swap pointers in few places where needed.

There are few more TODOS pending (like getting UpdatePackage fixed properly)
2019-11-25 20:03:37 +01:00
Ettore Di Giacinto
7bbd6d5e68 Add Search() in Repositories 2019-11-25 20:03:17 +01:00
Ettore Di Giacinto
820a157698 Add SetUri to Repository 2019-11-25 20:02:59 +01:00
Ettore Di Giacinto
f3ba014593 Add test for persistent database with bolt 2019-11-25 20:02:43 +01:00
Ettore Di Giacinto
c9c803a819 Return errors more consistently 2019-11-25 20:02:18 +01:00
Ettore Di Giacinto
5c0971de2e Add search to cli 2019-11-25 19:58:21 +01:00
Ettore Di Giacinto
b751b02830 Do not register viper bindings in init
Otherwise they get overlapped. Use PreRun instead
2019-11-25 19:55:30 +01:00
Ettore Di Giacinto
914ac68eea Add create-repo, install and uninstall to cli 2019-11-24 18:28:39 +01:00
Ettore Di Giacinto
a8b350fd8e Implement uninstall
Also add RemovePackage in database implementation (boltdb is not tested yet)

Add test case for uninstall
2019-11-24 00:16:12 +01:00
Ettore Di Giacinto
0d7b2cf448 Track installed files 2019-11-23 22:41:51 +01:00
Ettore Di Giacinto
b1272392b5 update vendor/ 2019-11-23 19:13:44 +01:00
Ettore Di Giacinto
a0d2f9cc12 Use a smarter copy 2019-11-23 19:13:32 +01:00
Ettore Di Giacinto
3a7cfae9ae Adapt solver test to structure change 2019-11-23 19:01:26 +01:00
Ettore Di Giacinto
7d99d57ad5 Check if package was inserted in systemdb in tests 2019-11-23 18:58:34 +01:00
Ettore Di Giacinto
d4bb0e346e Execute finalizers if present 2019-11-23 18:58:09 +01:00
Ettore Di Giacinto
3b9337a03b Keep the path around after writing the yaml, otherwise compile specs couldn't be found 2019-11-23 18:41:15 +01:00
Ettore Di Giacinto
8f6393e157 Add repository test file 2019-11-23 15:43:14 +01:00
Ettore Di Giacinto
e9c01b46a7 Use well defined structure for serializing, fixups to make test green 2019-11-23 15:42:53 +01:00
Ettore Di Giacinto
a879411c54 Add test case 2019-11-23 12:19:05 +01:00
Ettore Di Giacinto
542d45a646 Do not use interface in struct used for serialization 2019-11-23 00:29:44 +01:00
Ettore Di Giacinto
43ab851cb9 Load tree when generating repo 2019-11-22 23:24:22 +01:00
Ettore Di Giacinto
e664f4f2cf Return client from repository and install packages in the workers 2019-11-22 23:13:33 +01:00
Ettore Di Giacinto
75c1b66ae3 Add finalizers 2019-11-22 22:23:05 +01:00
Ettore Di Giacinto
dd0face86d WIP 2019-11-22 21:01:53 +01:00
Ettore Di Giacinto
a2f23d3bf5 WIP 2019-11-22 21:01:38 +01:00
Ettore Di Giacinto
df78308e98 Annotate artifact metadata after compiling 2019-11-22 21:01:29 +01:00
Ettore Di Giacinto
d134690560 Expand conflicts #14 2019-11-21 14:50:15 +01:00
Ettore Di Giacinto
6cf6c2104d Set cli tag for next version 2019-11-17 19:47:53 +01:00
Ettore Di Giacinto
f107f47242 Prepare for 0.1 tag 0.1 2019-11-17 19:45:20 +01:00
Ettore Di Giacinto
6e662c75ce Reuse docker backend in some Img functions 2019-11-17 18:38:57 +01:00
Ettore Di Giacinto
5083b295b2 Update travis to upload a release when tagging 2019-11-17 17:29:30 +01:00
Ettore Di Giacinto
a806937941 Add version to CLI and write commit sha to release build 2019-11-17 16:12:12 +01:00
Ettore Di Giacinto
8ed2badefc Add test for shared layer unpack 2019-11-17 15:59:52 +01:00
Ettore Di Giacinto
a39f596e8f Do not compute diff when package is unpacked 2019-11-17 15:59:52 +01:00