Commit graph

441 commits

Author SHA1 Message Date
Emmanuel Garette
56e180dc31 coverage for tiramisu/option/option.py 2017-02-04 10:21:44 +01:00
Emmanuel Garette
722779ebf7 coverage 2017-02-03 23:39:24 +01:00
Emmanuel Garette
2db15e193e require with inverse 2017-01-30 19:23:52 +01:00
Emmanuel Garette
4b01eb6497 add test test_symlink_getproperties and test_symlink_getcallback 2017-01-26 21:55:10 +01:00
Emmanuel Garette
85857ea781 add test test_validator_params_value_values_kwargs_empty 2017-01-26 21:40:08 +01:00
Emmanuel Garette
7b0a9891e2 test lenght for a slave that have list as callback_params 2017-01-26 21:18:57 +01:00
Emmanuel Garette
372ce5ea1e validate value when we calculate it 2017-01-26 21:01:54 +01:00
Emmanuel Garette
f497e99002 remove unicode decode error 2017-01-19 21:38:16 +01:00
Emmanuel Garette
e2159fd307 validator's function can have 1 arg, 2 args or 3 args 2017-01-18 15:54:30 +01:00
Emmanuel Garette
9920f001ea validator's function can have 1 arg, 2 args or 3 args 2017-01-16 09:25:56 +01:00
Emmanuel Garette
89fd367b20 validator's function can have 1 arg, 2 args or 3 args 2017-01-12 21:58:53 +01:00
Emmanuel Garette
01b7fc873e can mix inversed and non inversed requires 2017-01-12 19:52:03 +01:00
Emmanuel Garette
18d6976183 copy the context in carry_out_calculation 2017-01-11 22:58:01 +01:00
Emmanuel Garette
7fe47396ee correction in fullpath option 2017-01-09 20:16:38 +01:00
Emmanuel Garette
66f24bd1c0 add fullpath to make_dict 2017-01-06 21:01:24 +01:00
Emmanuel Garette
df90e74819 mandatories masterslaves with consistency and default value is acceptable 2016-12-07 17:28:31 +01:00
Emmanuel Garette
8e7b4101f1 coverage 2016-11-20 18:02:10 +01:00
Emmanuel Garette
0f4b1caca4 warnings only if needed 2016-11-20 14:32:06 +01:00
Emmanuel Garette
42d830687d add unique parameter to option 2016-11-19 19:16:31 +01:00
Emmanuel Garette
fc36f674eb consistency "not_equal" works now with multi 2016-11-16 22:31:42 +01:00
Emmanuel Garette
fb16dd2a79 slave's requires with multi is different than slave's requires with non multi option 2016-11-14 21:14:45 +01:00
Emmanuel Garette
a14e156a63 pooling EmailOption, UsernameOption and FilenameOption 2016-10-21 22:56:40 +02:00
Emmanuel Garette
24ec5a9112 don't display warning in mandatory_warnings 2016-10-14 21:31:39 +02:00
Emmanuel Garette
2e4fdbca03 transitive in apply_requires should only by apply if properties are same has testing action 2016-10-12 22:17:04 +02:00
Emmanuel Garette
c31590c2ac consistency is now check not_equal if one option has PropertiesOptionError 2016-10-12 21:58:37 +02:00
Emmanuel Garette
1b87e1d9bb Merge branch '2.0' 2016-10-12 20:50:12 +02:00
Emmanuel Garette
071035854b slave with requires could not raise 2016-10-12 20:49:56 +02:00
Emmanuel Garette
e6a949635f some improvements 2016-10-10 21:41:22 +02:00
Emmanuel Garette
c81a2bcdbf better sqlalchemy integration 2016-10-01 20:15:08 +02:00
Emmanuel Garette
69de44bbb4 better sqlalchemy integration 2016-09-30 22:45:33 +02:00
Emmanuel Garette
6fbc4accb9 Merge remote-tracking branch 'origin/2.0' 2016-09-22 08:28:03 +02:00
Emmanuel Garette
6d71749014 force_store_value is rebuild if needed 2016-09-22 08:27:18 +02:00
Emmanuel Garette
19b676967d better propertyerror message 2016-09-14 20:17:25 +02:00
Emmanuel Garette
408e4cf088 better error messages 2016-09-11 20:41:36 +02:00
Emmanuel Garette
3a5b1090c7 domainname must not be an IP 2016-08-31 15:50:10 +02:00
Emmanuel Garette
6cfa0fc216 use relative importation 2016-06-30 10:43:51 +02:00
Emmanuel Garette
44d585a5e2 better mandatory/empty support for mandatory_warnings 2016-06-29 21:42:54 +02:00
Emmanuel Garette
7460f38a88 update sqlalchemy storage for values et settings 2016-03-29 09:31:00 +02:00
Emmanuel Garette
e91568e6b6 Validation should return exception, not raises exception
Don't check force_store_value for SymLinkOption
2016-03-24 19:43:41 +01:00
Emmanuel Garette
f03a31b454 master.slave[-1] = val now works correctly 2016-03-21 17:06:38 +01:00
Emmanuel Garette
7305cfa134 python 3.4 support 2016-03-19 21:27:37 +01:00
Emmanuel Garette
924692d3ab valid correctly consistencies for master/slaves 2016-03-18 19:55:41 +01:00
Emmanuel Garette
5a5231c2d8 test: set force_permissive to append 2016-03-18 16:41:59 +01:00
Emmanuel Garette
100a0110cd support callback with propertyerror in master for mandatory_warnings 2016-03-17 22:06:16 +01:00
Emmanuel Garette
cb89c74201 don't check 'mandatory' setting for symlink 2016-03-16 22:33:28 +01:00
Emmanuel Garette
8c733d5303 update setup.py 2016-03-10 14:50:27 +01:00
Emmanuel Garette
32592b9289 setitem for a slave only modify current value 2016-03-08 23:18:42 +01:00
Emmanuel Garette
35ffde841b add force_permissive to Values.is_default_owner 2016-03-07 16:34:36 +01:00
Emmanuel Garette
da89c1aa58 force_store_value is now used directly when configuration is loaded 2016-03-07 16:13:41 +01:00
Emmanuel Garette
51d14f30a4 can set owner for a slave 2016-01-25 16:22:28 +01:00
Emmanuel Garette
f4307b9122 cannot append properties for option with forbidden_set_properties 2016-01-25 15:49:40 +01:00
Emmanuel Garette
b521c459ee remove all try/except 2016-01-03 21:18:52 +01:00
Emmanuel Garette
e8764f6173 remove some try/except + consistency not works with submulti 2016-01-03 13:23:15 +01:00
Emmanuel Garette
ce162280ad simplify _setvalue 2015-12-31 18:20:36 +01:00
Emmanuel Garette
97d7352a5b better support for dynoptiondescription 2015-12-23 23:30:57 +01:00
Emmanuel Garette
df233d3165 add some optimisations 2015-12-22 22:06:14 +01:00
Emmanuel Garette
a97c3c682a some optimisation 2015-12-18 22:44:46 +01:00
Emmanuel Garette
4d4d789c8a simplification 2015-12-17 22:41:57 +01:00
Emmanuel Garette
98200ecae5 improvemnt information 2015-11-30 15:55:34 +01:00
Emmanuel Garette
a521a6d322 requires could be apply to a slave and properties could be different 2015-11-29 23:03:08 +01:00
Emmanuel Garette
c2a6772ec2 impl_get_values with calculated values and no context should return [] 2015-11-26 19:42:33 +01:00
Emmanuel Garette
ab555966f7 use python-coverage to delete dead part of code 2015-11-24 10:58:19 +01:00
Emmanuel Garette
54ca54e505 separate value in slave 2015-11-19 22:25:00 +01:00
Emmanuel Garette
11d23bc8d8 unserialise information and requires attribute 2015-11-01 10:35:17 +01:00
Emmanuel Garette
445516ce34 support multi when picklise object 2015-10-30 22:51:36 +01:00
Emmanuel Garette
2cdd80b83d support context param in picklisation 2015-10-30 22:51:24 +01:00
Emmanuel Garette
a0de1109f7 optimise mandatory_warnings 2015-10-29 09:03:13 +01:00
Emmanuel Garette
64e9171ea6 valid properties for slaves when set or append a master's value 2015-10-26 15:39:07 +01:00
Emmanuel Garette
15d94d5fff domainname with only one character is now allowed 2015-10-12 17:06:15 +02:00
Emmanuel Garette
3aad913868 check with option as parameter 2015-09-17 21:25:32 +02:00
Emmanuel Garette
5ea92d3460 need new settings when create fake_config 2015-09-17 19:14:56 +02:00
Emmanuel Garette
8e7a32de08 add global 'empty' property, this property raise mandatory PropertiesOptionError if multi or master have empty value 2015-07-26 19:13:25 +02:00
Emmanuel Garette
1da83edfba add duplicate option to Config 2015-07-24 18:05:51 +02:00
Emmanuel Garette
44cd618704 remove pep8 validation errors 2015-07-24 17:54:10 +02:00
Emmanuel Garette
487b99b32c for a multi mandatory, allow [] with allow_empty_list attribut 2015-04-20 14:49:43 +02:00
Emmanuel Garette
072246a203 URLOption: allow uppercase in resource name 2015-04-19 09:46:39 +02:00
Emmanuel Garette
2c6275ffbd remove slave values when delete a master without value 2015-04-19 09:37:46 +02:00
Emmanuel Garette
2b019027be valid Option is an unicode or a string if needed 2015-04-19 09:15:18 +02:00
Emmanuel Garette
057bba83e4 ValueError if not PropertieError 2015-04-18 23:46:37 +02:00
Emmanuel Garette
d959020eed ability to disable warnings validation 2015-04-18 23:11:57 +02:00
Emmanuel Garette
10768a6067 refactor validation 2015-04-18 22:53:45 +02:00
Emmanuel Garette
c566ad1111 valid default/callback value in consistencies 2015-03-08 12:03:49 +01:00
Emmanuel Garette
85297d8c4d test uppercase character before valid domain name for better error message 2014-12-07 14:51:51 +01:00
Emmanuel Garette
bc65caa4dc mandatory master/slave's consistency with default value as slave 2014-12-07 14:39:23 +01:00
Emmanuel Garette
4fde28a15e in_network's consistency now verify that IP is not network or broadcast's IP + ip_netmask's consistency now verify that IP is not broadcast's IP 2014-12-01 23:16:00 +01:00
Emmanuel Garette
a801951a78 can reset slave value in all case when deleting master value 2014-12-01 23:08:56 +01:00
Emmanuel Garette
71e69cd0bf if consistency with multiple option return if transitive 2014-12-01 23:02:55 +01:00
Emmanuel Garette
7646071efd propertyerror are transitive in consistency, now it's possible to set non-transitive consistency 2014-12-01 22:58:53 +01:00
Emmanuel Garette
2ccf92f879 improve GroupConfig/MetaConfig
add set_value in GroupConfig
2014-12-01 21:49:50 +01:00
Emmanuel Garette
c6c331eb54 in find_firsts get option only one time 2014-11-11 11:31:23 +01:00
Emmanuel Garette
f03cbeadb7 better performance in find_firsts
_is_build_cache not set in dictionary storage
2014-11-10 21:00:30 +01:00
Emmanuel Garette
4217508f3f works on sqlalchemy storage 2014-11-10 09:13:44 +01:00
Emmanuel Garette
c75867720f add force_permissive in mandatory_warnings 2014-10-26 16:39:24 +01:00
Emmanuel Garette
f730050f7c pass force_permissive to slave for a master or to master for a slave 2014-10-26 16:19:06 +01:00
Emmanuel Garette
4310d59991 add force_permissive to config __iter__ 2014-10-26 10:26:23 +01:00
Emmanuel Garette
a130cff4bf frozen with force_default_on_freeze can change owner 2014-10-26 09:44:06 +01:00
Emmanuel Garette
ed3373cff0 bad characters in DomainnameOption could be in warning level 2014-10-26 09:38:17 +01:00
Emmanuel Garette
8a59e27396 f option is frozen with force_default_on_freeze property, owner must be 'default' check property when tried to change owner 2014-10-26 08:51:45 +01:00
Emmanuel Garette
9ad6cd905c allow number as first letter of a domainname with netbios type 2014-10-25 22:58:46 +02:00
Emmanuel Garette
471af4fd75 cannot add unvalaible consistency for an option 2014-10-25 22:48:42 +02:00
Emmanuel Garette
9f3d676280 reduce memory usage 2014-10-25 22:11:31 +02:00
Emmanuel Garette
71f8926fca better support for sqlalchemy storage 2014-07-06 15:31:57 +02:00
Emmanuel Garette
b64189f763 add DynOptionDescription 2014-06-19 23:22:39 +02:00
Emmanuel Garette
888446e4c5 remove unjustified open_values parameters in ChoiceOption 2014-04-27 10:44:19 +02:00
Emmanuel Garette
9112a8c5b0 add SubMulti 2014-04-26 22:37:01 +02:00
Emmanuel Garette
b6a0f188b2 force_store_value now support Multi 2014-04-18 21:33:15 +02:00
Emmanuel Garette
6d8137160c 'getattr' in optiondescription can return a bound method 2014-04-15 21:48:31 +02:00
Emmanuel Garette
7c8164090a uncomment more test 2014-04-14 23:00:37 +02:00
Emmanuel Garette
9bec52273a we can pickle object 2014-04-14 22:53:40 +02:00
Emmanuel Garette
5d8b5719a0 Merge branch 'master' into orm
Conflicts:
	test/test_config_api.py
	tiramisu/autolib.py
	tiramisu/config.py
	tiramisu/option.py
	tiramisu/value.py
2014-04-13 10:30:42 +02:00
Emmanuel Garette
299e51e806 start works on storage 2014-04-12 22:47:52 +02:00
Emmanuel Garette
3ab0688c46 Arity change, remove force_properties:
* tiramisu/config.py (in cfgimpl_get_home_by_path and getattr)
 * tiramisu/value.py (in getitem):
2014-04-12 21:37:20 +02:00
Emmanuel Garette
cd4d3527c7 split tiramisu/option.py and add MasterSlaves object 2014-04-12 17:55:13 +02:00
Emmanuel Garette
a1f0c29713 Merge modification made for 1.0's branch 2014-04-02 12:06:11 +02:00
Emmanuel Garette
76a43a7ff9 if slave has a callback with a slave that has a callback with a default_multi's slave, now it's works 2014-04-02 12:04:50 +02:00
Emmanuel Garette
a3c5e6034f Merge branch 'force_permissive'
Conflicts:
	test/test_freeze.py
2014-03-31 22:38:56 +02:00
Emmanuel Garette
cd52729952 add force_permissive in config's method (iter_all, iter_group, find, find_first and make_dict)
rename _getattr to getattr
2014-03-31 22:34:57 +02:00
Emmanuel Garette
ff5376a382 properties are check now in getowner
get_modified_values works good with force_store_value
2014-03-29 20:31:56 +01:00
Emmanuel Garette
712db2875e force_store_value works now with permissive 2014-03-28 17:36:02 +01:00
Emmanuel Garette
835d6d6da0 context could be useful in a callback, now we can retrieve context in a function (be careful to infinite loop) 2014-03-26 19:47:42 +01:00
Emmanuel Garette
f7d31bfa92 Merge branch 'master' into force-cache
Conflicts:
	translations/fr/tiramisu.po
	translations/tiramisu.pot
2014-03-15 10:09:19 +01:00
Emmanuel Garette
88b5af9810 Merge branch 'master' into better_warnings 2014-03-12 22:13:20 +01:00
Emmanuel Garette
ff802b46e5 consistencies can make a warning instead of raises
for that, you have to set something like:
  a.impl_add_consistency('not_equal', b, warnings_only=True)

warning product now adapted message
2014-03-12 21:56:53 +01:00
Emmanuel Garette
5f46763696 add test for consistency with callback 2014-03-12 16:44:48 +01:00
Emmanuel Garette
544cd93c73 can make_dict with disabled suboption 2014-03-12 14:57:36 +01:00
Emmanuel Garette
d7b04ebed0 add consistency in_network for IPOption
This new consistency can validate that an IPv4 is a specified (network/netmask) network
2014-03-11 18:57:19 +01:00
Emmanuel Garette
db9ab7a1e9 test if cache property is not set in config when force_cache 2014-03-09 20:22:29 +01:00
Emmanuel Garette
6e8b570a37 mandatory_warnings is now in values and add force_cache to values 2014-03-09 20:06:44 +01:00
Emmanuel Garette
d3f9d20ab5 add extend in config setting 2014-03-08 18:53:22 +01:00
Emmanuel Garette
9f903d3e04 add username's option 2014-03-06 22:09:12 +01:00
gwen
f3a826a8d7 Merge branch 'master' of ssh://git.labs.libre-entreprise.org/gitroot/tiramisu 2014-02-25 16:19:49 +01:00
gwen
0c9d6554ae a hostname shall not start with a number 2014-02-25 15:20:03 +01:00
gwen
716d2b2348 allows a DomainnameOption to start with a number 2014-02-25 15:16:15 +01:00
Emmanuel Garette
d5b83c123c tiramisu/setting.py : properties store in cache was a reference to a list modified in validation, should copy properties in cache 2014-02-20 16:55:35 +01:00
Emmanuel Garette
bf0501b1d6 tiramisu/setting.py : properties store in cache was a reference to a list modified in validation, should copy properties in cache 2014-02-20 14:27:29 +01:00
Emmanuel Garette
fc7f3c24a5 properties option in consistencies are now allowed
Conflicts:
	tiramisu/option.py (PortOption._validate): Strange try/except
	removed.
2014-02-17 17:45:37 +01:00
Emmanuel Garette
194c82faad tests pass now with dictionary and sqlalchemy storage 2014-02-16 23:37:27 +01:00
Emmanuel Garette
0aeb64731b comment state test 2014-02-06 22:25:04 +01:00
Emmanuel Garette
21c8ed5d76 Merge branch 'master' into orm
Conflicts:
	test/test_option_consistency.py
	test/test_state.py
	tiramisu/option.py
2014-02-06 22:24:50 +01:00
Emmanuel Garette
e7531e1fda more tests 2014-02-06 22:17:20 +01:00
Emmanuel Garette
72f06bc29d properties option in consistencies are now allowed 2014-02-06 19:19:48 +01:00
Daniel Dehennin
f8ac263c86 Hotfix release 1.0~2.4.1
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iF4EABEKAAYFAlLyBpcACgkQWjgIUPVihwwhyQD/Ri/R6wO/zk49ILx5UzPdDDcU
 UCWxsKvbCIloO76BMcIA/0nx/6PUVc/v3iag5reNvtrXJQzdKlprmkjvBhLalVJS
 =w09x
 -----END PGP SIGNATURE-----

Merge tag 'release/1.0_2.4.1'

Hotfix release 1.0~2.4.1
2014-02-05 11:22:17 +01:00
Emmanuel Garette
6f5d471db1 if option with requires has a property, calculated properties are store in storage 2014-02-05 10:37:39 +01:00
Emmanuel Garette
98bd35ad36 Merge branch 'master' into orm
Conflicts:
	tiramisu/config.py
	tiramisu/option.py
2014-02-04 21:54:30 +01:00
Emmanuel Garette
c52b2f84f4 if option with requires has a property, calculated properties are store in storage 2014-02-04 21:40:07 +01:00
Emmanuel Garette
a067d2cdd9 add some tests 2014-02-04 21:14:30 +01:00
Emmanuel Garette
5646fc35a2 Merge branch 'master' into orm
Conflicts:
	test/test_parsing_group.py
2014-02-03 22:11:58 +01:00
Emmanuel Garette
8d10ad4002 add tests 2014-02-02 22:47:46 +01:00
Emmanuel Garette
5897231421 Merge branch 'master' into orm
Conflicts:
	test/test_dereference.py
	test/test_state.py
	tiramisu/config.py
	tiramisu/value.py
2014-02-02 18:52:13 +01:00
Emmanuel Garette
26158fc3c4 update test for metaconfig serialization 2014-02-02 18:33:21 +01:00