atex 0.12__py3-none-any.whl → 0.13__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.
atex/cli/__init__.py CHANGED
@@ -93,4 +93,4 @@ def main():
93
93
  try:
94
94
  mains[args._module](args)
95
95
  except KeyboardInterrupt:
96
- raise SystemExit() from None
96
+ raise SystemExit from None
atex/cli/testingfarm.py CHANGED
@@ -137,15 +137,20 @@ def stats(args):
137
137
  print(f"{count:>{digits}} {repo_url}")
138
138
 
139
139
  def request_search_results():
140
- if args.before is not None or args.after is not None:
140
+ func_kwargs = {}
141
+ if args.before is not None:
142
+ func_kwargs["created_before"] = args.before
143
+ if args.after is not None:
144
+ func_kwargs["created_after"] = args.after
145
+
146
+ if args.page is not None:
141
147
  for state in args.states.split(","):
142
148
  reply = api.search_requests_paged(
143
149
  state=state,
144
150
  page=args.page,
145
151
  mine=False,
146
152
  ranch=args.ranch,
147
- created_before=args.before,
148
- created_after=args.after,
153
+ **func_kwargs,
149
154
  )
150
155
  if reply:
151
156
  yield from reply
@@ -155,6 +160,7 @@ def stats(args):
155
160
  state=state,
156
161
  mine=False,
157
162
  ranch=args.ranch,
163
+ **func_kwargs,
158
164
  )
159
165
  if reply:
160
166
  yield from reply
atex/connection/ssh.py CHANGED
@@ -36,6 +36,7 @@ DEFAULT_OPTIONS = {
36
36
  "TCPKeepAlive": "no",
37
37
  "EscapeChar": "none",
38
38
  "ExitOnForwardFailure": "yes",
39
+ "RequestTTY": "no",
39
40
  }
40
41
 
41
42
 
@@ -19,7 +19,7 @@ DEFAULT_API_URL = "https://api.testing-farm.io"
19
19
 
20
20
  DEFAULT_RESERVE_TEST = {
21
21
  "url": "https://github.com/RHSecurityCompliance/atex-reserve",
22
- "ref": "0.12",
22
+ "ref": "main",
23
23
  "path": ".",
24
24
  "name": "/plans/reserve",
25
25
  }
@@ -436,7 +436,7 @@ class Reserve:
436
436
  def __init__(
437
437
  self, *, compose, arch="x86_64", pool=None, hardware=None, kickstart=None,
438
438
  timeout=60, ssh_key=None, source_host=None,
439
- reserve_test=None, variables=None, secrets=None,
439
+ reserve_test=None, variables=None, secrets=None, tags=None,
440
440
  api=None,
441
441
  ):
442
442
  """
@@ -482,6 +482,10 @@ class Reserve:
482
482
  exported for the reserve test - variables are visible via TF API,
483
483
  secrets are not (but can still be extracted from pipeline log).
484
484
 
485
+ 'tags' is a dict of custom key/values to be submitted in TF Request as
486
+ environments->settings->provisioning->tags, useful for storing custom
487
+ metadata to be queried later.
488
+
485
489
  'api' is a TestingFarmAPI instance - if unspecified, a sensible default
486
490
  will be used.
487
491
  """
@@ -521,6 +525,8 @@ class Reserve:
521
525
  if variables:
522
526
  spec_env["variables"] = variables
523
527
  spec_env["secrets"] = secrets.copy() if secrets else {} # we need it for ssh pubkey
528
+ if tags:
529
+ spec_env["settings"]["provisioning"]["tags"] |= tags
524
530
 
525
531
  self._spec = spec
526
532
  self._ssh_key = Path(ssh_key) if ssh_key else None
@@ -537,7 +543,7 @@ class Reserve:
537
543
  try:
538
544
  r = _http.request("GET", "https://ifconfig.me", headers=curl_agent)
539
545
  if r.status != 200:
540
- raise ConnectionError()
546
+ raise ConnectionError
541
547
  except (ConnectionError, urllib3.exceptions.RequestError):
542
548
  r = _http.request("GET", "https://ifconfig.co", headers=curl_agent)
543
549
  return r.data.decode().strip()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: atex
3
- Version: 0.12
3
+ Version: 0.13
4
4
  Summary: Ad-hoc Test EXecutor
5
5
  Project-URL: Homepage, https://github.com/RHSecurityCompliance/atex
6
6
  License-Expression: GPL-3.0-or-later
@@ -2,13 +2,13 @@ atex/__init__.py,sha256=LdX67gprtHYeAkjLhFPKzpc7ECv2rHxUbHKDGbGXO1c,517
2
2
  atex/fmf.py,sha256=gkJXIaRO7_KvwJR-V6Tc1NVn4a9Hq7hoBLQLhxYIdbg,8834
3
3
  atex/aggregator/__init__.py,sha256=8mN-glHdzR4icKAUGO4JPodsTrLMdJoeuZsO2CTbhyU,1773
4
4
  atex/aggregator/json.py,sha256=tpoUZoZM8EMYhZKwVr4LRtgEIDjRxC11BIKVXZKYPOs,10441
5
- atex/cli/__init__.py,sha256=Ew2z-gC0jvOmU_DqYgXVQla3p1rTnrz64I63q52aHv4,2899
5
+ atex/cli/__init__.py,sha256=0YzZ4sIYvZ47yF9STA2znINIQfEoGAV1N0pduTA7NhI,2897
6
6
  atex/cli/fmf.py,sha256=pvj_OIp6XT_nVUwziL7-v_HNbyAtuUmb7k_Ey_KkFJc,3616
7
7
  atex/cli/libvirt.py,sha256=6tt5ANb8XBBRXOQsYPTWILThKqf-gvt5AZh5Dctg2PA,3782
8
- atex/cli/testingfarm.py,sha256=MXfcKnzbmr71LrTpJcIghC6SfB4EBkKXh3Yy5SZlUUc,10744
8
+ atex/cli/testingfarm.py,sha256=b6IzoouYx-Qzuu7350QhyC-PW8576b7hyhiTDka_xak,10899
9
9
  atex/connection/__init__.py,sha256=dj8ZBcEspom7Z_UjecfLGBRNvLZ3dyGR9q19i_B4xpY,3880
10
10
  atex/connection/podman.py,sha256=1T56gh1TgbcQWpTIJHL4NaxZOI6aMg7Xp7sn6PQQyBk,1911
11
- atex/connection/ssh.py,sha256=9A57b9YR_HI-kIu06Asic1y__JPVXEheDZxjbG2Qcsc,13460
11
+ atex/connection/ssh.py,sha256=6lama8q3tSQcWPRKN3B4lgFUGtuVA51tuKDiNh7IN0U,13484
12
12
  atex/executor/__init__.py,sha256=nmYJCbC36fRGGkjoniFJmsq-sqFw8YS2ndf4q_loVM0,471
13
13
  atex/executor/duration.py,sha256=x06sItKOZi6XA8KszQwZGpIb1Z_L-HWqIwZKo2SDo0s,1759
14
14
  atex/executor/executor.py,sha256=WJXPWQo6VQhZgXORVVyvTDAdOQbbZz26E7FpwizbGIk,16126
@@ -27,7 +27,7 @@ atex/provisioner/libvirt/setup-libvirt.sh,sha256=oCMy9SCnbC_QuAzO2sFwvB5ui1kMQ6u
27
27
  atex/provisioner/podman/__init__.py,sha256=dM0JzQXWX7edtWSc0KH0cMFXAjArFn2Vme4j_ZMsdYA,138
28
28
  atex/provisioner/podman/podman.py,sha256=ztRypoakSf-jF04iER58tEMUZ4Y6AuzIpNpFXp44bB4,4997
29
29
  atex/provisioner/testingfarm/__init__.py,sha256=kZncgLGdRCR4FMaRQr2GTwJ8vjlA-24ri8JO2ueZJuw,113
30
- atex/provisioner/testingfarm/api.py,sha256=K3s87rWNqZ6q1AMkjYaNTNqIOZR-Bl1JonbKx67O9pQ,23549
30
+ atex/provisioner/testingfarm/api.py,sha256=3vPpAmPisn99-NruZHUy_lS0I7A_IKHWGVGJcJBLBuI,23836
31
31
  atex/provisioner/testingfarm/testingfarm.py,sha256=yvQzWat92B4UnJNZzCLI8mpAKf_QvHUKyKbjlk5123Q,8573
32
32
  atex/util/__init__.py,sha256=cWHFbtQ4mDlKe6lXyPDWRmWJOTcHDGfVuW_-GYa8hB0,1473
33
33
  atex/util/dedent.py,sha256=SEuJMtLzqz3dQ7g7qyZzEJ9VYynVlk52tQCJY-FveXo,603
@@ -38,8 +38,8 @@ atex/util/path.py,sha256=x-kXqiWCVodfZWbEwtC5A8LFvutpDIPYv2m0boZSlXU,504
38
38
  atex/util/ssh_keygen.py,sha256=9yuSl2yBV7pG3Qfsf9tossVC00nbIUrAeLdbwTykpjk,384
39
39
  atex/util/subprocess.py,sha256=_oQN8CNgGoH9GAR6nZlpujYe2HjXFBcCuIkLPw-IxJ4,2971
40
40
  atex/util/threads.py,sha256=c8hsEc-8SqJGodInorv_6JxpiHiSkGFGob4qbMmOD2M,3531
41
- atex-0.12.dist-info/METADATA,sha256=v2DW_JNAKGa7yF6IVOpICXMant1I2qQNlj69Vxcv3rs,3050
42
- atex-0.12.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
43
- atex-0.12.dist-info/entry_points.txt,sha256=pLqJdcfeyQTgup2h6dWb6SvkHhtOl-W5Eg9zV8moK0o,39
44
- atex-0.12.dist-info/licenses/COPYING.txt,sha256=oEuj51jdmbXcCUy7pZ-KE0BNcJTR1okudRp5zQ0yWnU,670
45
- atex-0.12.dist-info/RECORD,,
41
+ atex-0.13.dist-info/METADATA,sha256=Q3S7eSPkLtzLYvRgIatm_RYyPGXUa_K7dAqZ_GvV5rY,3050
42
+ atex-0.13.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
43
+ atex-0.13.dist-info/entry_points.txt,sha256=pLqJdcfeyQTgup2h6dWb6SvkHhtOl-W5Eg9zV8moK0o,39
44
+ atex-0.13.dist-info/licenses/COPYING.txt,sha256=oEuj51jdmbXcCUy7pZ-KE0BNcJTR1okudRp5zQ0yWnU,670
45
+ atex-0.13.dist-info/RECORD,,
File without changes