swarmauri_tool_containermakepr 0.9.0.dev50__tar.gz → 0.11.0.dev4__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.
@@ -1,41 +1,42 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: swarmauri_tool_containermakepr
3
- Version: 0.9.0.dev50
3
+ Version: 0.11.0.dev4
4
4
  Summary: Create GitHub pull requests from containers.
5
5
  License-Expression: Apache-2.0
6
6
  License-File: LICENSE
7
7
  Keywords: swarmauri,sdk,standards,tool,containermakepr,tooling
8
8
  Author: Jacob Stewart
9
9
  Author-email: jacob@swarmauri.com
10
- Requires-Python: >=3.10,<3.13
10
+ Requires-Python: >=3.10,<3.15
11
11
  Classifier: License :: OSI Approved :: Apache Software License
12
- Classifier: Programming Language :: Python :: 3.10
13
- Classifier: Programming Language :: Python :: 3.11
14
- Classifier: Programming Language :: Python :: 3.12
15
12
  Classifier: Programming Language :: Python
16
13
  Classifier: Programming Language :: Python :: 3
17
14
  Classifier: Programming Language :: Python :: 3 :: Only
18
- Requires-Dist: swarmauri_base
19
- Requires-Dist: swarmauri_core
20
- Requires-Dist: swarmauri_standard
15
+ Classifier: Programming Language :: Python :: 3.10
16
+ Classifier: Programming Language :: Python :: 3.11
17
+ Classifier: Programming Language :: Python :: 3.12
18
+ Classifier: Programming Language :: Python :: 3.13
19
+ Classifier: Programming Language :: Python :: 3.14
20
+ Requires-Dist: swarmauri_base (>=0.11.0.dev6,<0.12)
21
+ Requires-Dist: swarmauri_core (>=0.11.0.dev6,<0.12)
22
+ Requires-Dist: swarmauri_standard (>=0.11.0.dev8,<0.12)
21
23
  Description-Content-Type: text/markdown
22
24
 
23
- ![Swarmauri Logo](https://github.com/swarmauri/swarmauri-sdk/blob/3d4d1cfa949399d7019ae9d8f296afba773dfb7f/assets/swarmauri.brand.theme.svg)
25
+ ![Swarmauri Logo](https://raw.githubusercontent.com/swarmauri/swarmauri-sdk/master/assets/swarmauri_sdk_brand.png)
24
26
 
25
27
  <p align="center">
26
- <a href="https://pypi.org/project/swarmauri_tool_containermakepr/">
27
- <img src="https://img.shields.io/pypi/dm/swarmauri_tool_containermakepr" alt="PyPI - Downloads"/></a>
28
+ <a href="https://pepy.tech/project/swarmauri_tool_containermakepr/">
29
+ <img src="https://static.pepy.tech/badge/swarmauri_tool_containermakepr/month" alt="PyPI - Downloads"/></a>
28
30
  <a href="https://hits.sh/github.com/swarmauri/swarmauri-sdk/tree/master/pkgs/standards/swarmauri_tool_containermakepr/">
29
31
  <img alt="Hits" src="https://hits.sh/github.com/swarmauri/swarmauri-sdk/tree/master/pkgs/standards/swarmauri_tool_containermakepr.svg"/></a>
30
32
  <a href="https://pypi.org/project/swarmauri_tool_containermakepr/">
31
- <img src="https://img.shields.io/pypi/pyversions/swarmauri_tool_containermakepr" alt="PyPI - Python Version"/></a>
33
+ <img src="https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-blue" alt="PyPI - Python Version"/></a>
32
34
  <a href="https://pypi.org/project/swarmauri_tool_containermakepr/">
33
35
  <img src="https://img.shields.io/pypi/l/swarmauri_tool_containermakepr" alt="PyPI - License"/></a>
34
36
  <a href="https://pypi.org/project/swarmauri_tool_containermakepr/">
35
37
  <img src="https://img.shields.io/pypi/v/swarmauri_tool_containermakepr?label=swarmauri_tool_containermakepr&color=green" alt="PyPI - swarmauri_tool_containermakepr"/></a>
36
- </p>
37
-
38
- ---
38
+ <a href="https://discord.gg/N4UpBuQv8T">
39
+ <img src="https://img.shields.io/badge/Discord-Join%20Chat-5865F2?logo=discord&logoColor=white" alt="Discord"/></a></p>
39
40
 
40
41
  # Swarmauri Tool ContainerMakePR
41
42
 
@@ -61,3 +62,5 @@ tool(title="Update", body="PR body")
61
62
  If you want to contribute to swarmauri-sdk, read up on our
62
63
  [guidelines for contributing](https://github.com/swarmauri/swarmauri-sdk/blob/master/CONTRIBUTING.md)
63
64
  that will help you get started.
65
+
66
+
@@ -1,19 +1,18 @@
1
- ![Swarmauri Logo](https://github.com/swarmauri/swarmauri-sdk/blob/3d4d1cfa949399d7019ae9d8f296afba773dfb7f/assets/swarmauri.brand.theme.svg)
1
+ ![Swarmauri Logo](https://raw.githubusercontent.com/swarmauri/swarmauri-sdk/master/assets/swarmauri_sdk_brand.png)
2
2
 
3
3
  <p align="center">
4
- <a href="https://pypi.org/project/swarmauri_tool_containermakepr/">
5
- <img src="https://img.shields.io/pypi/dm/swarmauri_tool_containermakepr" alt="PyPI - Downloads"/></a>
4
+ <a href="https://pepy.tech/project/swarmauri_tool_containermakepr/">
5
+ <img src="https://static.pepy.tech/badge/swarmauri_tool_containermakepr/month" alt="PyPI - Downloads"/></a>
6
6
  <a href="https://hits.sh/github.com/swarmauri/swarmauri-sdk/tree/master/pkgs/standards/swarmauri_tool_containermakepr/">
7
7
  <img alt="Hits" src="https://hits.sh/github.com/swarmauri/swarmauri-sdk/tree/master/pkgs/standards/swarmauri_tool_containermakepr.svg"/></a>
8
8
  <a href="https://pypi.org/project/swarmauri_tool_containermakepr/">
9
- <img src="https://img.shields.io/pypi/pyversions/swarmauri_tool_containermakepr" alt="PyPI - Python Version"/></a>
9
+ <img src="https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-blue" alt="PyPI - Python Version"/></a>
10
10
  <a href="https://pypi.org/project/swarmauri_tool_containermakepr/">
11
11
  <img src="https://img.shields.io/pypi/l/swarmauri_tool_containermakepr" alt="PyPI - License"/></a>
12
12
  <a href="https://pypi.org/project/swarmauri_tool_containermakepr/">
13
13
  <img src="https://img.shields.io/pypi/v/swarmauri_tool_containermakepr?label=swarmauri_tool_containermakepr&color=green" alt="PyPI - swarmauri_tool_containermakepr"/></a>
14
- </p>
15
-
16
- ---
14
+ <a href="https://discord.gg/N4UpBuQv8T">
15
+ <img src="https://img.shields.io/badge/Discord-Join%20Chat-5865F2?logo=discord&logoColor=white" alt="Discord"/></a></p>
17
16
 
18
17
  # Swarmauri Tool ContainerMakePR
19
18
 
@@ -38,4 +37,5 @@ tool(title="Update", body="PR body")
38
37
 
39
38
  If you want to contribute to swarmauri-sdk, read up on our
40
39
  [guidelines for contributing](https://github.com/swarmauri/swarmauri-sdk/blob/master/CONTRIBUTING.md)
41
- that will help you get started.
40
+ that will help you get started.
41
+
@@ -1,25 +1,27 @@
1
1
  [project]
2
2
  name = "swarmauri_tool_containermakepr"
3
- version = "0.9.0.dev50"
3
+ version = "0.11.0.dev4"
4
4
  description = "Create GitHub pull requests from containers."
5
5
  license = "Apache-2.0"
6
6
  readme = "README.md"
7
7
  repository = "http://github.com/swarmauri/swarmauri-sdk"
8
- requires-python = ">=3.10,<3.13"
8
+ requires-python = ">=3.10,<3.15"
9
9
  classifiers = [
10
10
  "License :: OSI Approved :: Apache Software License",
11
- "Programming Language :: Python :: 3.10",
12
- "Programming Language :: Python :: 3.11",
13
- "Programming Language :: Python :: 3.12",
14
11
  "Programming Language :: Python",
15
12
  "Programming Language :: Python :: 3",
16
13
  "Programming Language :: Python :: 3 :: Only",
14
+ "Programming Language :: Python :: 3.10",
15
+ "Programming Language :: Python :: 3.11",
16
+ "Programming Language :: Python :: 3.12",
17
+ "Programming Language :: Python :: 3.13",
18
+ "Programming Language :: Python :: 3.14",
17
19
  ]
18
20
  authors = [{ name = "Jacob Stewart", email = "jacob@swarmauri.com" }]
19
21
  dependencies = [
20
- "swarmauri_core",
21
- "swarmauri_base",
22
- "swarmauri_standard",
22
+ "swarmauri_core>=0.11.0.dev6,<0.12",
23
+ "swarmauri_base>=0.11.0.dev6,<0.12",
24
+ "swarmauri_standard>=0.11.0.dev8,<0.12",
23
25
  ]
24
26
  keywords = [
25
27
  'swarmauri',
@@ -69,7 +71,7 @@ dev = [
69
71
  "pytest-xdist>=3.6.1",
70
72
  "pytest-json-report>=1.5.0",
71
73
  "python-dotenv",
72
- "requests>=2.32.3",
74
+ "httpx>=0.27",
73
75
  "flake8>=7.0",
74
76
  "pytest-timeout>=2.3.1",
75
77
  "ruff>=0.9.9",
@@ -1,5 +1,8 @@
1
1
  import subprocess
2
2
  from typing import List, Literal
3
+ from swarmauri_base.processes.collect_process import collect_process
4
+ from swarmauri_core.processes import IProcessBackend, ProcessRequest
5
+
3
6
  from pydantic import Field
4
7
  from swarmauri_base.tools.ToolBase import ToolBase
5
8
  from swarmauri_standard.tools.Parameter import Parameter
@@ -15,6 +18,8 @@ class ContainerMakePrTool(ToolBase):
15
18
  description: str = "Create a GitHub pull request from a container."
16
19
  type: Literal["ContainerMakePrTool"] = "ContainerMakePrTool"
17
20
 
21
+ backend: IProcessBackend | None = Field(default=None, exclude=True)
22
+
18
23
  driver: Literal["docker", "kubernetes"] = "docker"
19
24
 
20
25
  container_name: str | None = Field(
@@ -50,6 +55,17 @@ class ContainerMakePrTool(ToolBase):
50
55
  name = container_name or self.container_name
51
56
  if name is None:
52
57
  raise ValueError("container_name must be provided")
58
+ if self.backend is not None:
59
+ stdout, stderr, event = collect_process(
60
+ self.backend,
61
+ ProcessRequest(
62
+ ("gh", "pr", "create", "--title", title, "--body", body),
63
+ workspace=name,
64
+ ),
65
+ )
66
+ if event.exit_code != 0:
67
+ raise RuntimeError(stderr.decode(errors="replace").strip())
68
+ return {"stdout": stdout.decode(errors="replace").strip()}
53
69
  if self.driver == "docker":
54
70
  cmd = [
55
71
  "docker",