Steven Armstrong
7d61b77708
fix autorequire dependency handling
...
- inherit explicit requirements that the user defined himself
- but _not_ implicit requirements that cdist added for autorequire
Changes:
- added new .autorequire property to CdistObject to keep track of implicit autorequire dependencies
- Emulator appends implicit requirements to this .autorequire property
- DependencyResolver preprocess these .autorequire properties before resolving normal dependencies
- refactored and documented DependencyResolver so it's clearer what happens and easier to use from tests
- update test cases to match new DependencyResolver behaviour
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2012-05-03 10:16:08 +02:00
Steven Armstrong
2ff286cf1d
inherit dependencies from defining object when setting up implicit dependencies through autorequire
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2012-04-25 17:18:16 +02:00
Steven Armstrong
0760ff3c94
implement boolean parameters, forgotten files ;-)
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2012-02-15 14:44:16 +01:00
Nico Schottelius
46e6ea4308
print name, not object (user does not need to see python way of things)
...
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
2012-02-15 09:27:30 +01:00
Nico Schottelius
861b13ffe4
record sanitised object, not the user supplied one, as requirement
...
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
2012-02-14 11:12:17 +01:00
Nico Schottelius
0861276436
remove obsolete MissingEnvironmentVariableError()
...
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
2012-02-13 16:14:48 +01:00
Nico Schottelius
2d61070023
remove old IllegalRequirementError exception
...
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
2012-02-13 10:47:40 +01:00
Nico Schottelius
eadb62e67a
minimal beaufity
...
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
2012-02-13 08:44:09 +01:00
Nico Schottelius
dcd3bcee32
use the great method object_from_name() in emulator
...
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
2012-02-13 07:57:51 +01:00
Nico Schottelius
754aba1a15
record source in setup_object not in requirements
...
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
2012-02-13 07:47:33 +01:00
Nico Schottelius
ab565dc3d9
cleanup / emulator
...
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
2012-02-13 07:45:10 +01:00
Nico Schottelius
91ecfa7d3f
back to 100% tests working
...
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
2012-02-12 01:27:25 +01:00
Nico Schottelius
4be37f6e93
begin rename Object => CdistObject
...
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
2012-02-12 00:08:18 +01:00
Steven Armstrong
252ae5ea56
new feature: dependency resolver
2012-01-19 07:51:02 +01:00
Steven Armstrong
8ac375e8a6
Merge branch 'master' into autorequire
...
Conflicts:
lib/cdist/test/emulator/__init__.py
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-11-17 13:08:30 +01:00
Steven Armstrong
68f66af21a
implement: accept parameters with dashes
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-11-17 13:04:39 +01:00
Steven Armstrong
f36d09289d
Merge branch 'master' into autorequire
...
Conflicts:
lib/cdist/test/emulator/__init__.py
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-11-15 10:47:16 +01:00
Steven Armstrong
d0123acc2a
implement singleton as requirement
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-11-03 15:44:51 +01:00
Steven Armstrong
c58ec7e4ef
prevent circular dependencies
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-11-03 00:25:06 +01:00
Steven Armstrong
7d0238682b
implement autorequire in emulator
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-11-02 23:58:18 +01:00
Steven Armstrong
8f306a7484
/__debug/__cdist_debug/
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-10-19 15:04:14 +02:00
Nico Schottelius
4d4287c580
Merge remote-tracking branch 'steven/master'
2011-10-18 15:14:44 +02:00
Steven Armstrong
2246b7496b
fails if requirement has illegal object_id
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-10-18 15:07:58 +02:00
Nico Schottelius
7bb81e2f18
Whitespace does not not weigh anything - remove - sed -i 's/ *$//g' *py */*py
...
Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
2011-10-18 13:32:36 +02:00
Steven Armstrong
e9a0aa1863
fail if requirements type does not exist
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-10-18 13:20:14 +02:00
Nico Schottelius
03ea7787d2
+self
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-16 18:38:22 +02:00
Nico Schottelius
3c31b4f9a3
and finally also adjust the requirement itself
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-15 23:40:11 +02:00
Nico Schottelius
5a72223ae3
strip away / in emulator in requirements
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-15 23:23:57 +02:00
Steven Armstrong
b8b9719cc6
Merge remote-tracking branch 'telmich/master'
...
Conflicts:
lib/cdist/core/explorer.py
lib/cdist/emulator.py
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-10-15 10:51:08 +02:00
Nico Schottelius
ee1c568c7b
almost finish correct requirement loading, but need sleep
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-15 02:54:54 +02:00
Nico Schottelius
0dd38f75c2
remove leading / from object_id of requirement
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-15 02:46:28 +02:00
Nico Schottelius
a7a3ee6f19
adjust prefix
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-15 02:36:33 +02:00
Nico Schottelius
e002710c4c
rewrite emulator to class based approach for better logging
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-15 02:31:40 +02:00
Steven Armstrong
d83de25774
Stripp leading slash from requirements object_id
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-10-15 00:26:00 +02:00
Steven Armstrong
1e622f9128
raise IllegalRequirementError if requirements object_id starts with a /
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-10-14 15:52:53 +02:00
Steven Armstrong
1c84e423d1
include type name in error message
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-10-14 11:49:37 +02:00
Steven Armstrong
f285d9e64e
emulator: fail if object_id of requirement starts with slash
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-10-14 11:39:55 +02:00
Steven Armstrong
405ebbccb7
Merge remote-tracking branch 'telmich/master'
...
Conflicts:
lib/cdist/emulator.py
2011-10-11 12:40:44 +02:00
Steven Armstrong
bcde8683af
rewrite emulator to use Type and Object classes
...
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
2011-10-11 12:27:08 +02:00
Nico Schottelius
72a2543470
introduce install support in emulator
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-11 00:42:03 +02:00
Nico Schottelius
94cca2e537
prepend hostname in emulator as well
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-11 00:28:53 +02:00
Nico Schottelius
c6e8f163f5
use variable require, not __require for defining
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-07 17:03:38 +02:00
Nico Schottelius
e8c9b10227
also use path in emulator
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-07 16:44:53 +02:00
Nico Schottelius
03f5e1b456
fix emulator and cdist module
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-07 16:15:48 +02:00
Nico Schottelius
149a605b16
use more path, move type -> cdist_type
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-07 16:14:29 +02:00
Nico Schottelius
2aa0a316e6
use _path not _dir in emulator
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-07 16:13:00 +02:00
Thomas Reifenberger
9045b30136
fix multiple requirements
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-07 16:07:02 +02:00
Nico Schottelius
ca5361afc1
remote cdist.path, use base_dir
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-07 13:36:51 +02:00
Nico Schottelius
b936fea3e5
link to emulator in config_install and remove it from emulator
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-07 12:10:57 +02:00
Nico Schottelius
e26f612012
move file_to_list to cdist
...
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
2011-10-07 09:29:22 +02:00