jolt 0.9.352__tar.gz → 0.9.353__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. {jolt-0.9.352 → jolt-0.9.353}/PKG-INFO +1 -1
  2. {jolt-0.9.352 → jolt-0.9.353}/jolt/tasks.py +15 -3
  3. jolt-0.9.353/jolt/version.py +1 -0
  4. {jolt-0.9.352 → jolt-0.9.353}/jolt.egg-info/PKG-INFO +1 -1
  5. jolt-0.9.352/jolt/version.py +0 -1
  6. {jolt-0.9.352 → jolt-0.9.353}/README.rst +0 -0
  7. {jolt-0.9.352 → jolt-0.9.353}/jolt/__init__.py +0 -0
  8. {jolt-0.9.352 → jolt-0.9.353}/jolt/__main__.py +0 -0
  9. {jolt-0.9.352 → jolt-0.9.353}/jolt/bin/fstree-darwin-x86_64 +0 -0
  10. {jolt-0.9.352 → jolt-0.9.353}/jolt/bin/fstree-linux-x86_64 +0 -0
  11. {jolt-0.9.352 → jolt-0.9.353}/jolt/cache.py +0 -0
  12. {jolt-0.9.352 → jolt-0.9.353}/jolt/chroot.py +0 -0
  13. {jolt-0.9.352 → jolt-0.9.353}/jolt/cli.py +0 -0
  14. {jolt-0.9.352 → jolt-0.9.353}/jolt/colors.py +0 -0
  15. {jolt-0.9.352 → jolt-0.9.353}/jolt/common_pb2.py +0 -0
  16. {jolt-0.9.352 → jolt-0.9.353}/jolt/common_pb2_grpc.py +0 -0
  17. {jolt-0.9.352 → jolt-0.9.353}/jolt/config.py +0 -0
  18. {jolt-0.9.352 → jolt-0.9.353}/jolt/error.py +0 -0
  19. {jolt-0.9.352 → jolt-0.9.353}/jolt/expires.py +0 -0
  20. {jolt-0.9.352 → jolt-0.9.353}/jolt/filesystem.py +0 -0
  21. {jolt-0.9.352 → jolt-0.9.353}/jolt/graph.py +0 -0
  22. {jolt-0.9.352 → jolt-0.9.353}/jolt/hooks.py +0 -0
  23. {jolt-0.9.352 → jolt-0.9.353}/jolt/influence.py +0 -0
  24. {jolt-0.9.352 → jolt-0.9.353}/jolt/inspection.py +0 -0
  25. {jolt-0.9.352 → jolt-0.9.353}/jolt/loader.py +0 -0
  26. {jolt-0.9.352 → jolt-0.9.353}/jolt/log.py +0 -0
  27. {jolt-0.9.352 → jolt-0.9.353}/jolt/manifest.py +0 -0
  28. {jolt-0.9.352 → jolt-0.9.353}/jolt/options.py +0 -0
  29. {jolt-0.9.352 → jolt-0.9.353}/jolt/pkgs/__init__.py +0 -0
  30. {jolt-0.9.352 → jolt-0.9.353}/jolt/pkgs/golang.py +0 -0
  31. {jolt-0.9.352 → jolt-0.9.353}/jolt/pkgs/nodejs.py +0 -0
  32. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/__init__.py +0 -0
  33. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/alias.py +0 -0
  34. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/allure.py +0 -0
  35. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/autoweight.py +0 -0
  36. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/cache.py +0 -0
  37. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/cmake.py +0 -0
  38. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/conan.py +0 -0
  39. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/cxx.py +0 -0
  40. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/cxxinfo.py +0 -0
  41. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/dashboard.py +0 -0
  42. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/debian.py +0 -0
  43. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/docker.py +0 -0
  44. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/email.py +0 -0
  45. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/email.xslt +0 -0
  46. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/environ.py +0 -0
  47. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/gdb.py +0 -0
  48. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/gerrit.py +0 -0
  49. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/git.py +0 -0
  50. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/golang.py +0 -0
  51. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/googletest.py +0 -0
  52. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/http.py +0 -0
  53. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/junit.py +0 -0
  54. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/logstash.py +0 -0
  55. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/ninja-compdb.py +0 -0
  56. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/ninja.py +0 -0
  57. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/nodejs.py +0 -0
  58. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/paths.py +0 -0
  59. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/podman.py +0 -0
  60. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/python.py +0 -0
  61. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/remote_execution/__init__.py +0 -0
  62. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/remote_execution/administration_pb2.py +0 -0
  63. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/remote_execution/administration_pb2_grpc.py +0 -0
  64. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/remote_execution/log_pb2.py +0 -0
  65. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/remote_execution/log_pb2_grpc.py +0 -0
  66. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/remote_execution/scheduler_pb2.py +0 -0
  67. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/remote_execution/scheduler_pb2_grpc.py +0 -0
  68. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/remote_execution/worker_pb2.py +0 -0
  69. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/remote_execution/worker_pb2_grpc.py +0 -0
  70. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/repo.py +0 -0
  71. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/report.py +0 -0
  72. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/scheduler.py +0 -0
  73. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/selfdeploy.py +0 -0
  74. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/strings.py +0 -0
  75. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/symlinks.py +0 -0
  76. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/telemetry.py +0 -0
  77. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/timeline.py +0 -0
  78. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/volume.py +0 -0
  79. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/yaml-ninja.py +0 -0
  80. {jolt-0.9.352 → jolt-0.9.353}/jolt/plugins/yamltask.py +0 -0
  81. {jolt-0.9.352 → jolt-0.9.353}/jolt/scheduler.py +0 -0
  82. {jolt-0.9.352 → jolt-0.9.353}/jolt/templates/cxxexecutable.cmake.template +0 -0
  83. {jolt-0.9.352 → jolt-0.9.353}/jolt/templates/cxxlibrary.cmake.template +0 -0
  84. {jolt-0.9.352 → jolt-0.9.353}/jolt/templates/export.sh.template +0 -0
  85. {jolt-0.9.352 → jolt-0.9.353}/jolt/templates/timeline.html.template +0 -0
  86. {jolt-0.9.352 → jolt-0.9.353}/jolt/timer.py +0 -0
  87. {jolt-0.9.352 → jolt-0.9.353}/jolt/tools.py +0 -0
  88. {jolt-0.9.352 → jolt-0.9.353}/jolt/utils.py +0 -0
  89. {jolt-0.9.352 → jolt-0.9.353}/jolt/version_utils.py +0 -0
  90. {jolt-0.9.352 → jolt-0.9.353}/jolt/xmldom.py +0 -0
  91. {jolt-0.9.352 → jolt-0.9.353}/jolt.egg-info/SOURCES.txt +0 -0
  92. {jolt-0.9.352 → jolt-0.9.353}/jolt.egg-info/dependency_links.txt +0 -0
  93. {jolt-0.9.352 → jolt-0.9.353}/jolt.egg-info/entry_points.txt +0 -0
  94. {jolt-0.9.352 → jolt-0.9.353}/jolt.egg-info/requires.txt +0 -0
  95. {jolt-0.9.352 → jolt-0.9.353}/jolt.egg-info/top_level.txt +0 -0
  96. {jolt-0.9.352 → jolt-0.9.353}/setup.cfg +0 -0
  97. {jolt-0.9.352 → jolt-0.9.353}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: jolt
3
- Version: 0.9.352
3
+ Version: 0.9.353
4
4
  Summary: A task executor
5
5
  Home-page: https://github.com/srand/jolt
6
6
  Author: Robert Andersson
@@ -136,7 +136,7 @@ class Parameter(object):
136
136
  self.name = name
137
137
 
138
138
  def __init__(self, default=None, values=None, required=True,
139
- const=False, influence=True, help=None):
139
+ const=False, influence=True, help=None, valuesfn=None):
140
140
  """
141
141
  Creates a new parameter.
142
142
 
@@ -144,6 +144,10 @@ class Parameter(object):
144
144
  default (str, optional): An optional default value.
145
145
  values (list, optional): A list of accepted values. An
146
146
  assertion is raised if an unlisted value is assigned to the parameter.
147
+ valuesfn (func, optional); A function that validates the assigned value.
148
+ If both values and valuesfn are specified, the values list is validated
149
+ first. The function is passed the assigned value and should return.
150
+ boolean value. If the function returns False, a ParameterValueError is raised.
147
151
  required (boolean, optional): If required, the parameter must be assigned
148
152
  a value before the task can be executed. The default is ``True``.
149
153
  const (boolean, optional): If const is True, the parameter is immutable
@@ -165,6 +169,7 @@ class Parameter(object):
165
169
  self._default = default
166
170
  self._value = default
167
171
  self._accepted_values = values
172
+ self._accepted_values_fn = valuesfn
168
173
  self._required = required
169
174
  self._const = const
170
175
  self._influence = influence
@@ -200,6 +205,8 @@ class Parameter(object):
200
205
  def _validate(self, value, what=None):
201
206
  if self._accepted_values is not None and value not in self._accepted_values:
202
207
  raise ParameterValueError(self, value, what=what)
208
+ if self._accepted_values_fn is not None and not self._accepted_values_fn(value):
209
+ raise ParameterValueError(self, value, what=what)
203
210
 
204
211
  def get_default(self):
205
212
  """ Get the default value of the parameter.
@@ -437,7 +444,7 @@ class IntParameter(Parameter):
437
444
  """
438
445
 
439
446
  def __init__(self, default=None, min=None, max=None, values=None, required=True, const=False,
440
- influence=True, help=None):
447
+ influence=True, help=None, valuesfn=None):
441
448
  """
442
449
  Creates a new parameter.
443
450
 
@@ -485,7 +492,8 @@ class IntParameter(Parameter):
485
492
  required=required,
486
493
  const=const,
487
494
  influence=influence,
488
- help=help)
495
+ help=help,
496
+ valuesfn=valuesfn)
489
497
 
490
498
  def _validate(self, value, what=None):
491
499
  if self._min is not None and value < self._min:
@@ -689,6 +697,10 @@ class ListParameter(Parameter):
689
697
  for item in value:
690
698
  if item not in self._accepted_values:
691
699
  raise ParameterValueError(self, item, what=what)
700
+ if self._accepted_values_fn is not None:
701
+ for item in value:
702
+ if not self._accepted_values_fn(item):
703
+ raise ParameterValueError(self, item, what=what)
692
704
 
693
705
  def get_value(self):
694
706
  return "+".join(self._value)
@@ -0,0 +1 @@
1
+ __version__ = "0.9.353"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: jolt
3
- Version: 0.9.352
3
+ Version: 0.9.353
4
4
  Summary: A task executor
5
5
  Home-page: https://github.com/srand/jolt
6
6
  Author: Robert Andersson
@@ -1 +0,0 @@
1
- __version__ = "0.9.352"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes