jolt 0.9.123__py3-none-any.whl → 0.9.435__py3-none-any.whl
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.
- jolt/__init__.py +80 -7
- jolt/__main__.py +9 -1
- jolt/bin/fstree-darwin-x86_64 +0 -0
- jolt/bin/fstree-linux-x86_64 +0 -0
- jolt/cache.py +832 -362
- jolt/chroot.py +156 -0
- jolt/cli.py +281 -162
- jolt/common_pb2.py +63 -0
- jolt/common_pb2_grpc.py +4 -0
- jolt/config.py +98 -41
- jolt/error.py +19 -4
- jolt/filesystem.py +2 -6
- jolt/graph.py +705 -117
- jolt/hooks.py +43 -0
- jolt/influence.py +122 -3
- jolt/loader.py +369 -121
- jolt/log.py +225 -63
- jolt/manifest.py +28 -38
- jolt/options.py +35 -10
- jolt/pkgs/abseil.py +42 -0
- jolt/pkgs/asio.py +25 -0
- jolt/pkgs/autoconf.py +41 -0
- jolt/pkgs/automake.py +41 -0
- jolt/pkgs/b2.py +31 -0
- jolt/pkgs/boost.py +111 -0
- jolt/pkgs/boringssl.py +32 -0
- jolt/pkgs/busybox.py +39 -0
- jolt/pkgs/bzip2.py +43 -0
- jolt/pkgs/cares.py +29 -0
- jolt/pkgs/catch2.py +36 -0
- jolt/pkgs/cbindgen.py +17 -0
- jolt/pkgs/cista.py +19 -0
- jolt/pkgs/clang.py +44 -0
- jolt/pkgs/cli11.py +24 -0
- jolt/pkgs/cmake.py +48 -0
- jolt/pkgs/cpython.py +196 -0
- jolt/pkgs/crun.py +29 -0
- jolt/pkgs/curl.py +38 -0
- jolt/pkgs/dbus.py +18 -0
- jolt/pkgs/double_conversion.py +24 -0
- jolt/pkgs/fastfloat.py +21 -0
- jolt/pkgs/ffmpeg.py +28 -0
- jolt/pkgs/flatbuffers.py +29 -0
- jolt/pkgs/fmt.py +27 -0
- jolt/pkgs/fstree.py +20 -0
- jolt/pkgs/gflags.py +18 -0
- jolt/pkgs/glib.py +18 -0
- jolt/pkgs/glog.py +25 -0
- jolt/pkgs/glslang.py +21 -0
- jolt/pkgs/golang.py +16 -11
- jolt/pkgs/googlebenchmark.py +18 -0
- jolt/pkgs/googletest.py +46 -0
- jolt/pkgs/gperf.py +15 -0
- jolt/pkgs/grpc.py +73 -0
- jolt/pkgs/hdf5.py +19 -0
- jolt/pkgs/help2man.py +14 -0
- jolt/pkgs/inja.py +28 -0
- jolt/pkgs/jsoncpp.py +31 -0
- jolt/pkgs/libarchive.py +43 -0
- jolt/pkgs/libcap.py +44 -0
- jolt/pkgs/libdrm.py +44 -0
- jolt/pkgs/libedit.py +42 -0
- jolt/pkgs/libevent.py +31 -0
- jolt/pkgs/libexpat.py +27 -0
- jolt/pkgs/libfastjson.py +21 -0
- jolt/pkgs/libffi.py +16 -0
- jolt/pkgs/libglvnd.py +30 -0
- jolt/pkgs/libogg.py +28 -0
- jolt/pkgs/libpciaccess.py +18 -0
- jolt/pkgs/libseccomp.py +21 -0
- jolt/pkgs/libtirpc.py +24 -0
- jolt/pkgs/libtool.py +42 -0
- jolt/pkgs/libunwind.py +35 -0
- jolt/pkgs/libva.py +18 -0
- jolt/pkgs/libvorbis.py +33 -0
- jolt/pkgs/libxml2.py +35 -0
- jolt/pkgs/libxslt.py +17 -0
- jolt/pkgs/libyajl.py +16 -0
- jolt/pkgs/llvm.py +81 -0
- jolt/pkgs/lua.py +54 -0
- jolt/pkgs/lz4.py +26 -0
- jolt/pkgs/m4.py +14 -0
- jolt/pkgs/make.py +17 -0
- jolt/pkgs/mesa.py +81 -0
- jolt/pkgs/meson.py +17 -0
- jolt/pkgs/mstch.py +28 -0
- jolt/pkgs/mysql.py +60 -0
- jolt/pkgs/nasm.py +49 -0
- jolt/pkgs/ncurses.py +30 -0
- jolt/pkgs/ng_log.py +25 -0
- jolt/pkgs/ninja.py +45 -0
- jolt/pkgs/nlohmann_json.py +25 -0
- jolt/pkgs/nodejs.py +19 -11
- jolt/pkgs/opencv.py +24 -0
- jolt/pkgs/openjdk.py +26 -0
- jolt/pkgs/openssl.py +103 -0
- jolt/pkgs/paho.py +76 -0
- jolt/pkgs/patchelf.py +16 -0
- jolt/pkgs/perl.py +42 -0
- jolt/pkgs/pkgconfig.py +64 -0
- jolt/pkgs/poco.py +39 -0
- jolt/pkgs/protobuf.py +77 -0
- jolt/pkgs/pugixml.py +27 -0
- jolt/pkgs/python.py +19 -0
- jolt/pkgs/qt.py +35 -0
- jolt/pkgs/rapidjson.py +26 -0
- jolt/pkgs/rapidyaml.py +28 -0
- jolt/pkgs/re2.py +30 -0
- jolt/pkgs/re2c.py +17 -0
- jolt/pkgs/readline.py +15 -0
- jolt/pkgs/rust.py +41 -0
- jolt/pkgs/sdl.py +28 -0
- jolt/pkgs/simdjson.py +27 -0
- jolt/pkgs/soci.py +46 -0
- jolt/pkgs/spdlog.py +29 -0
- jolt/pkgs/spirv_llvm.py +21 -0
- jolt/pkgs/spirv_tools.py +24 -0
- jolt/pkgs/sqlite.py +83 -0
- jolt/pkgs/ssl.py +12 -0
- jolt/pkgs/texinfo.py +15 -0
- jolt/pkgs/tomlplusplus.py +22 -0
- jolt/pkgs/wayland.py +26 -0
- jolt/pkgs/x11.py +58 -0
- jolt/pkgs/xerces_c.py +20 -0
- jolt/pkgs/xorg.py +360 -0
- jolt/pkgs/xz.py +29 -0
- jolt/pkgs/yamlcpp.py +30 -0
- jolt/pkgs/zeromq.py +47 -0
- jolt/pkgs/zlib.py +87 -0
- jolt/pkgs/zstd.py +33 -0
- jolt/plugins/alias.py +3 -0
- jolt/plugins/allure.py +5 -2
- jolt/plugins/autotools.py +66 -0
- jolt/plugins/cache.py +133 -0
- jolt/plugins/cmake.py +74 -6
- jolt/plugins/conan.py +238 -0
- jolt/plugins/cxx.py +698 -0
- jolt/plugins/cxxinfo.py +7 -0
- jolt/plugins/dashboard.py +1 -1
- jolt/plugins/docker.py +80 -23
- jolt/plugins/email.py +2 -2
- jolt/plugins/email.xslt +144 -101
- jolt/plugins/environ.py +11 -0
- jolt/plugins/fetch.py +141 -0
- jolt/plugins/gdb.py +39 -19
- jolt/plugins/gerrit.py +1 -14
- jolt/plugins/git.py +283 -85
- jolt/plugins/googletest.py +2 -1
- jolt/plugins/http.py +36 -38
- jolt/plugins/libtool.py +63 -0
- jolt/plugins/linux.py +990 -0
- jolt/plugins/logstash.py +4 -4
- jolt/plugins/meson.py +61 -0
- jolt/plugins/ninja-compdb.py +99 -30
- jolt/plugins/ninja.py +468 -166
- jolt/plugins/paths.py +11 -1
- jolt/plugins/pkgconfig.py +219 -0
- jolt/plugins/podman.py +136 -92
- jolt/plugins/python.py +137 -0
- jolt/plugins/remote_execution/__init__.py +0 -0
- jolt/plugins/remote_execution/administration_pb2.py +46 -0
- jolt/plugins/remote_execution/administration_pb2_grpc.py +170 -0
- jolt/plugins/remote_execution/log_pb2.py +32 -0
- jolt/plugins/remote_execution/log_pb2_grpc.py +68 -0
- jolt/plugins/remote_execution/scheduler_pb2.py +41 -0
- jolt/plugins/remote_execution/scheduler_pb2_grpc.py +141 -0
- jolt/plugins/remote_execution/worker_pb2.py +38 -0
- jolt/plugins/remote_execution/worker_pb2_grpc.py +112 -0
- jolt/plugins/report.py +12 -2
- jolt/plugins/rust.py +25 -0
- jolt/plugins/scheduler.py +710 -0
- jolt/plugins/selfdeploy/setup.py +8 -4
- jolt/plugins/selfdeploy.py +138 -88
- jolt/plugins/strings.py +35 -22
- jolt/plugins/symlinks.py +26 -11
- jolt/plugins/telemetry.py +5 -2
- jolt/plugins/timeline.py +13 -3
- jolt/plugins/volume.py +46 -48
- jolt/scheduler.py +589 -192
- jolt/tasks.py +625 -121
- jolt/templates/timeline.html.template +44 -47
- jolt/timer.py +22 -0
- jolt/tools.py +638 -282
- jolt/utils.py +211 -7
- jolt/version.py +1 -1
- jolt/xmldom.py +12 -2
- {jolt-0.9.123.dist-info → jolt-0.9.435.dist-info}/METADATA +97 -38
- jolt-0.9.435.dist-info/RECORD +207 -0
- {jolt-0.9.123.dist-info → jolt-0.9.435.dist-info}/WHEEL +1 -1
- jolt/plugins/amqp.py +0 -834
- jolt/plugins/debian.py +0 -338
- jolt/plugins/ftp.py +0 -181
- jolt/plugins/repo.py +0 -253
- jolt-0.9.123.dist-info/RECORD +0 -77
- {jolt-0.9.123.dist-info → jolt-0.9.435.dist-info}/entry_points.txt +0 -0
- {jolt-0.9.123.dist-info → jolt-0.9.435.dist-info}/top_level.txt +0 -0
jolt/__init__.py
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
from .error import JoltError
|
|
2
|
+
from .error import JoltCommandError
|
|
3
|
+
from .error import JoltTimeoutError
|
|
4
|
+
|
|
1
5
|
from .tasks import Alias
|
|
2
6
|
from .tasks import BooleanParameter
|
|
3
7
|
from .tasks import Chroot
|
|
@@ -35,6 +39,9 @@ __all__ = (
|
|
|
35
39
|
"EnvironExport",
|
|
36
40
|
"Export",
|
|
37
41
|
"IntParameter",
|
|
42
|
+
"JoltError",
|
|
43
|
+
"JoltCommandError",
|
|
44
|
+
"JoltTimeoutError",
|
|
38
45
|
"ListParameter",
|
|
39
46
|
"MultiTask",
|
|
40
47
|
"Parameter",
|
|
@@ -54,16 +61,82 @@ __all__ = (
|
|
|
54
61
|
name = "jolt"
|
|
55
62
|
|
|
56
63
|
|
|
57
|
-
def include(joltfile):
|
|
58
|
-
""" Include another Python file
|
|
64
|
+
def include(joltfile, joltdir=None):
|
|
65
|
+
""" Include another Python file with Jolt tasks.
|
|
66
|
+
|
|
67
|
+
:param joltfile: The path to the Jolt file to include.
|
|
68
|
+
:type joltfile: str
|
|
69
|
+
|
|
70
|
+
:param joltdir: The directory to search for Jolt files.
|
|
71
|
+
:type joltdir: str
|
|
72
|
+
|
|
73
|
+
Example:
|
|
74
|
+
|
|
75
|
+
.. code-block:: python
|
|
76
|
+
|
|
77
|
+
from jolt import include
|
|
78
|
+
|
|
79
|
+
include("joltfile.py")
|
|
80
|
+
|
|
81
|
+
"""
|
|
59
82
|
try:
|
|
60
83
|
from os import path
|
|
61
|
-
from sys import _getframe
|
|
62
84
|
from jolt.loader import JoltLoader
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
85
|
+
import sys
|
|
86
|
+
caller_dir = path.dirname(sys._getframe().f_back.f_code.co_filename)
|
|
87
|
+
if joltdir is not None:
|
|
88
|
+
joltdir = path.join(caller_dir, joltdir)
|
|
89
|
+
else:
|
|
90
|
+
joltdir = caller_dir
|
|
91
|
+
filepath = path.join(caller_dir, joltfile)
|
|
92
|
+
JoltLoader.get().load_file(filepath, joltdir=joltdir)
|
|
67
93
|
except Exception as e:
|
|
68
94
|
from jolt.error import raise_error
|
|
69
95
|
raise_error("Failed to load '{0}': {1}", joltfile, str(e))
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
def require_resource(name: str, ):
|
|
99
|
+
""" Require a resource task.
|
|
100
|
+
|
|
101
|
+
Args:
|
|
102
|
+
name (str): The name of the resource task.
|
|
103
|
+
|
|
104
|
+
Example:
|
|
105
|
+
|
|
106
|
+
.. code-block:: python
|
|
107
|
+
|
|
108
|
+
from jolt import require_resource
|
|
109
|
+
|
|
110
|
+
require_resource("git:url=https://github.com/srand/jolt.git")
|
|
111
|
+
|
|
112
|
+
"""
|
|
113
|
+
from jolt.tasks import TaskRegistry
|
|
114
|
+
registry = TaskRegistry.get()
|
|
115
|
+
registry.require_workspace_resource(name)
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
def require_version(verstr: str):
|
|
119
|
+
""" Require a specific version of Jolt.
|
|
120
|
+
|
|
121
|
+
Args:
|
|
122
|
+
verstr (str): The version to require. Must be a string.
|
|
123
|
+
Operators such as ``>=`` and ``<=`` are supported.
|
|
124
|
+
|
|
125
|
+
Example:
|
|
126
|
+
|
|
127
|
+
.. code-block:: python
|
|
128
|
+
|
|
129
|
+
from jolt import require_version
|
|
130
|
+
|
|
131
|
+
require_version("1.0.0")
|
|
132
|
+
|
|
133
|
+
"""
|
|
134
|
+
from jolt.error import raise_error_if
|
|
135
|
+
from jolt.version_utils import requirement, version
|
|
136
|
+
|
|
137
|
+
req = requirement(verstr)
|
|
138
|
+
ver = version(__version__)
|
|
139
|
+
raise_error_if(
|
|
140
|
+
not req.satisfied(ver),
|
|
141
|
+
"This project requires Jolt version {} (running {})",
|
|
142
|
+
req, __version__)
|
jolt/__main__.py
CHANGED
|
@@ -3,6 +3,7 @@ import os
|
|
|
3
3
|
import sys
|
|
4
4
|
|
|
5
5
|
from jolt import cli
|
|
6
|
+
from jolt import error
|
|
6
7
|
from jolt import log
|
|
7
8
|
|
|
8
9
|
|
|
@@ -38,8 +39,15 @@ def main():
|
|
|
38
39
|
extype, value, tb = sys.exc_info()
|
|
39
40
|
pdb.post_mortem(tb)
|
|
40
41
|
sys.exit(1)
|
|
42
|
+
except error.LoggedJoltError as e:
|
|
43
|
+
log.error(log.format_exception_msg(e.exc))
|
|
44
|
+
if cli.debug_enabled:
|
|
45
|
+
import pdb
|
|
46
|
+
extype, value, tb = sys.exc_info()
|
|
47
|
+
pdb.post_mortem(tb)
|
|
48
|
+
sys.exit(1)
|
|
41
49
|
except Exception as e:
|
|
42
|
-
log.exception(e)
|
|
50
|
+
log.exception(e, error=True)
|
|
43
51
|
if cli.debug_enabled:
|
|
44
52
|
import pdb
|
|
45
53
|
extype, value, tb = sys.exc_info()
|
|
Binary file
|
|
Binary file
|