autopkg-wrapper 2024.8.1__tar.gz → 2025.8.1__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.
- autopkg_wrapper-2025.8.1/.github/dependabot.yml +29 -0
- autopkg_wrapper-2025.8.1/.github/workflows/build-publish.yml +206 -0
- autopkg_wrapper-2025.8.1/.github/workflows/codeql.yml +40 -0
- autopkg_wrapper-2025.8.1/.github/workflows/dependency-review.yml +17 -0
- autopkg_wrapper-2025.8.1/.gitignore +8 -0
- autopkg_wrapper-2025.8.1/.pre-commit-config.yaml +35 -0
- autopkg_wrapper-2025.8.1/.tool-versions +1 -0
- autopkg_wrapper-2025.8.1/CONTRIBUTING +1 -0
- {autopkg_wrapper-2024.8.1 → autopkg_wrapper-2025.8.1}/PKG-INFO +13 -18
- autopkg_wrapper-2025.8.1/actions-demo/.github/workflows/autopkg-wrapper-demo.yml +194 -0
- autopkg_wrapper-2025.8.1/actions-demo/overrides/Google_Chrome.pkg.recipe.yaml +22 -0
- autopkg_wrapper-2025.8.1/actions-demo/repo_list.txt +2 -0
- autopkg_wrapper-2025.8.1/actions-demo/requirements.txt +3 -0
- autopkg_wrapper-2025.8.1/autopkg_wrapper/__init__.py +0 -0
- {autopkg_wrapper-2024.8.1 → autopkg_wrapper-2025.8.1}/autopkg_wrapper/autopkg_wrapper.py +13 -5
- autopkg_wrapper-2025.8.1/autopkg_wrapper/notifier/__init__.py +0 -0
- {autopkg_wrapper-2024.8.1 → autopkg_wrapper-2025.8.1}/autopkg_wrapper/notifier/slack.py +1 -1
- autopkg_wrapper-2025.8.1/autopkg_wrapper/utils/__init__.py +0 -0
- {autopkg_wrapper-2024.8.1 → autopkg_wrapper-2025.8.1}/autopkg_wrapper/utils/args.py +6 -1
- {autopkg_wrapper-2024.8.1 → autopkg_wrapper-2025.8.1}/autopkg_wrapper/utils/git_functions.py +53 -2
- autopkg_wrapper-2025.8.1/pyproject.toml +32 -0
- autopkg_wrapper-2025.8.1/tests/__init__.py +0 -0
- autopkg_wrapper-2025.8.1/tests/prefs.json +13 -0
- autopkg_wrapper-2025.8.1/tests/prefs.plist +23 -0
- autopkg_wrapper-2025.8.1/tests/recipe_list.json +5 -0
- autopkg_wrapper-2025.8.1/tests/recipe_list.txt +3 -0
- autopkg_wrapper-2025.8.1/tests/recipe_list.yaml +3 -0
- autopkg_wrapper-2025.8.1/uv.lock +279 -0
- autopkg_wrapper-2024.8.1/autopkg_wrapper/__init__.py +0 -1
- autopkg_wrapper-2024.8.1/autopkg_wrapper/notifier/__init__.py +0 -1
- autopkg_wrapper-2024.8.1/autopkg_wrapper/utils/__init__.py +0 -1
- autopkg_wrapper-2024.8.1/pyproject.toml +0 -28
- {autopkg_wrapper-2024.8.1 → autopkg_wrapper-2025.8.1}/LICENSE +0 -0
- {autopkg_wrapper-2024.8.1 → autopkg_wrapper-2025.8.1}/README.md +0 -0
- {autopkg_wrapper-2024.8.1 → autopkg_wrapper-2025.8.1}/autopkg_wrapper/utils/logging.py +0 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# To get started with Dependabot version updates, you'll need to specify which
|
|
2
|
+
# package ecosystems to update and where the package manifests are located.
|
|
3
|
+
# Please see the documentation for all configuration options:
|
|
4
|
+
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
|
|
5
|
+
|
|
6
|
+
version: 2
|
|
7
|
+
updates:
|
|
8
|
+
- package-ecosystem: 'github-actions'
|
|
9
|
+
directory: '/'
|
|
10
|
+
schedule:
|
|
11
|
+
interval: 'daily'
|
|
12
|
+
groups:
|
|
13
|
+
github-actions:
|
|
14
|
+
patterns:
|
|
15
|
+
- '*'
|
|
16
|
+
update-types:
|
|
17
|
+
- 'minor'
|
|
18
|
+
- 'patch'
|
|
19
|
+
- package-ecosystem: 'pip'
|
|
20
|
+
directory: '/'
|
|
21
|
+
schedule:
|
|
22
|
+
interval: 'weekly'
|
|
23
|
+
groups:
|
|
24
|
+
pip:
|
|
25
|
+
patterns:
|
|
26
|
+
- '*'
|
|
27
|
+
update-types:
|
|
28
|
+
- 'minor'
|
|
29
|
+
- 'patch'
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
name: Build & Publish to PyPI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch:
|
|
5
|
+
inputs:
|
|
6
|
+
dry_run:
|
|
7
|
+
type: boolean
|
|
8
|
+
description: Run in dry_run mode
|
|
9
|
+
default: true
|
|
10
|
+
|
|
11
|
+
push:
|
|
12
|
+
branches: [main]
|
|
13
|
+
paths:
|
|
14
|
+
- 'autopkg_wrapper/**'
|
|
15
|
+
- 'uv.lock'
|
|
16
|
+
- 'pyproject.toml'
|
|
17
|
+
|
|
18
|
+
pull_request:
|
|
19
|
+
branches: [main]
|
|
20
|
+
types: [opened, reopened, synchronize, edited]
|
|
21
|
+
paths:
|
|
22
|
+
- 'autopkg_wrapper/**'
|
|
23
|
+
- 'uv.lock'
|
|
24
|
+
- 'pyproject.toml'
|
|
25
|
+
|
|
26
|
+
jobs:
|
|
27
|
+
release:
|
|
28
|
+
name: Create GitHub Release
|
|
29
|
+
runs-on: ubuntu-latest
|
|
30
|
+
outputs:
|
|
31
|
+
dry_run: ${{ steps.check-inputs.outputs.dry_run}}
|
|
32
|
+
version: ${{ steps.format-version.outputs.version}}
|
|
33
|
+
permissions:
|
|
34
|
+
contents: write
|
|
35
|
+
|
|
36
|
+
steps:
|
|
37
|
+
# - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
38
|
+
- id: check-inputs
|
|
39
|
+
env:
|
|
40
|
+
INPUT_DRY_RUN: ${{ github.event.inputs.dry_run }}
|
|
41
|
+
run: |
|
|
42
|
+
echo "dry_run=${INPUT_DRY_RUN:-false}" >> "$GITHUB_OUTPUT"
|
|
43
|
+
|
|
44
|
+
- name: Generate build number
|
|
45
|
+
id: generate-build
|
|
46
|
+
uses: onyxmueller/build-tag-number@4a0c81c9af350d967032d49204c83c38e6b0c8e4 # v1.0.3
|
|
47
|
+
if: github.ref_name != 'main'
|
|
48
|
+
with:
|
|
49
|
+
token: ${{ secrets.github_token }}
|
|
50
|
+
|
|
51
|
+
- name: Generate Next Version
|
|
52
|
+
uses: reecetech/version-increment@a29aa752dc3b8118a2dc2ed93faf0e95a73a9c7e # 2024.10.1
|
|
53
|
+
id: version-increment
|
|
54
|
+
with:
|
|
55
|
+
scheme: calver
|
|
56
|
+
use_api: true
|
|
57
|
+
pep440: true
|
|
58
|
+
|
|
59
|
+
- name: Format Version Number
|
|
60
|
+
id: format-version
|
|
61
|
+
env:
|
|
62
|
+
GITHUB_SHA: ${{ github.sha }}
|
|
63
|
+
GITHUB_BRANCH: ${{ github.ref_name }}
|
|
64
|
+
BUILD: ${{ steps.generate-build.outputs.build_number }}
|
|
65
|
+
MAJOR: ${{ steps.version-increment.outputs.major-version }}
|
|
66
|
+
MINOR: ${{ steps.version-increment.outputs.minor-version }}
|
|
67
|
+
PATCH: ${{ steps.version-increment.outputs.patch-version }}
|
|
68
|
+
run: |
|
|
69
|
+
if [[ "$GITHUB_BRANCH" == "main" ]]; then
|
|
70
|
+
VERSION="${MAJOR}.${MINOR}.${PATCH}"
|
|
71
|
+
else
|
|
72
|
+
VERSION="${MAJOR}.${MINOR}.${PATCH}-${BUILD}"
|
|
73
|
+
fi
|
|
74
|
+
|
|
75
|
+
echo "version=$VERSION" >> "$GITHUB_OUTPUT"
|
|
76
|
+
|
|
77
|
+
- name: Create GitHub Release
|
|
78
|
+
env:
|
|
79
|
+
GITHUB_TOKEN: ${{ github.token }}
|
|
80
|
+
GITHUB_REPO: ${{ github.repository }}
|
|
81
|
+
GITHUB_BRANCH: ${{ github.ref_name }}
|
|
82
|
+
RELEASE_VERSION: ${{ steps.format-version.outputs.version }}
|
|
83
|
+
if: steps.check-inputs.outputs.dry_run == 'false'
|
|
84
|
+
run: |
|
|
85
|
+
GH_RELEASE_FLAGS=(
|
|
86
|
+
"$RELEASE_VERSION"
|
|
87
|
+
--repo "$GITHUB_REPO"
|
|
88
|
+
--generate-notes
|
|
89
|
+
)
|
|
90
|
+
|
|
91
|
+
if [[ "$GITHUB_BRANCH" == "main" ]]; then
|
|
92
|
+
GH_RELEASE_FLAGS+=(--latest)
|
|
93
|
+
else
|
|
94
|
+
GH_RELEASE_FLAGS+=(--prerelease)
|
|
95
|
+
fi
|
|
96
|
+
|
|
97
|
+
gh release create "${GH_RELEASE_FLAGS[@]}"
|
|
98
|
+
|
|
99
|
+
build:
|
|
100
|
+
name: Build Package 📦
|
|
101
|
+
runs-on: ubuntu-latest
|
|
102
|
+
needs: [release]
|
|
103
|
+
permissions:
|
|
104
|
+
id-token: write
|
|
105
|
+
|
|
106
|
+
steps:
|
|
107
|
+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
108
|
+
|
|
109
|
+
- name: Setup UV
|
|
110
|
+
uses: astral-sh/setup-uv@d9e0f98d3fc6adb07d1e3d37f3043649ddad06a1 # v6.5.0
|
|
111
|
+
with:
|
|
112
|
+
activate-environment: true
|
|
113
|
+
enable-cache: true
|
|
114
|
+
cache-dependency-glob: uv.lock
|
|
115
|
+
|
|
116
|
+
- name: Setup Python
|
|
117
|
+
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
|
118
|
+
with:
|
|
119
|
+
python-version-file: pyproject.toml
|
|
120
|
+
|
|
121
|
+
- name: Build Package with UV
|
|
122
|
+
run: |
|
|
123
|
+
uv version ${{ needs.release.outputs.version }}
|
|
124
|
+
uv build
|
|
125
|
+
- name: Upload Package Artifacts
|
|
126
|
+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
|
|
127
|
+
with:
|
|
128
|
+
name: python-package-distributions
|
|
129
|
+
path: dist/
|
|
130
|
+
|
|
131
|
+
deploy_test:
|
|
132
|
+
name: Deploy Package to TestPyPI 🚀
|
|
133
|
+
runs-on: ubuntu-latest
|
|
134
|
+
needs: [build]
|
|
135
|
+
environment:
|
|
136
|
+
name: testpypi
|
|
137
|
+
url: https://test.pypi.org/p/autopkg-wrapper
|
|
138
|
+
permissions:
|
|
139
|
+
id-token: write
|
|
140
|
+
|
|
141
|
+
if: github.ref_name != 'main'
|
|
142
|
+
|
|
143
|
+
steps:
|
|
144
|
+
- name: Download Package Artifacts
|
|
145
|
+
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
|
146
|
+
with:
|
|
147
|
+
name: python-package-distributions
|
|
148
|
+
path: dist/
|
|
149
|
+
- name: Publish to TestPyPI
|
|
150
|
+
uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4
|
|
151
|
+
with:
|
|
152
|
+
repository-url: https://test.pypi.org/legacy/
|
|
153
|
+
skip-existing: true
|
|
154
|
+
|
|
155
|
+
deploy_prod:
|
|
156
|
+
name: Deploy Package to PyPI 🚀
|
|
157
|
+
runs-on: ubuntu-latest
|
|
158
|
+
needs: [release, build]
|
|
159
|
+
environment:
|
|
160
|
+
name: pypi
|
|
161
|
+
url: https://pypi.org/p/autopkg-wrapper
|
|
162
|
+
permissions:
|
|
163
|
+
id-token: write
|
|
164
|
+
|
|
165
|
+
if: github.ref_name == 'main' && needs.release.outputs.dry_run == 'false'
|
|
166
|
+
|
|
167
|
+
steps:
|
|
168
|
+
- name: Download Package Artifacts
|
|
169
|
+
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
|
170
|
+
with:
|
|
171
|
+
name: python-package-distributions
|
|
172
|
+
path: dist/
|
|
173
|
+
- name: Publish to PyPI
|
|
174
|
+
uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4
|
|
175
|
+
|
|
176
|
+
update_release:
|
|
177
|
+
name: Upload Assets to GitHub Release
|
|
178
|
+
runs-on: ubuntu-latest
|
|
179
|
+
needs: [release, build]
|
|
180
|
+
permissions:
|
|
181
|
+
id-token: write
|
|
182
|
+
contents: write
|
|
183
|
+
|
|
184
|
+
if: needs.release.outputs.dry_run == 'false'
|
|
185
|
+
|
|
186
|
+
steps:
|
|
187
|
+
- name: Download Package Artifacts
|
|
188
|
+
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
|
189
|
+
with:
|
|
190
|
+
name: python-package-distributions
|
|
191
|
+
path: dist/
|
|
192
|
+
- uses: sigstore/gh-action-sigstore-python@f7ad0af51a5648d09a20d00370f0a91c3bdf8f84 # v3.0.1
|
|
193
|
+
with:
|
|
194
|
+
inputs: |
|
|
195
|
+
dist/*.whl
|
|
196
|
+
dist/*.tar.gz
|
|
197
|
+
- name: Upload artifact signatures to GitHub Release
|
|
198
|
+
env:
|
|
199
|
+
GITHUB_TOKEN: ${{ github.token }}
|
|
200
|
+
GITHUB_REPO: ${{ github.repository }}
|
|
201
|
+
GITHUB_BRANCH: ${{ github.ref_name }}
|
|
202
|
+
RELEASE_VERSION: ${{ needs.release.outputs.version }}
|
|
203
|
+
run: >-
|
|
204
|
+
gh release upload
|
|
205
|
+
"$RELEASE_VERSION" dist/**
|
|
206
|
+
--repo "$GITHUB_REPO"
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
name: "CodeQL Analysis"
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
paths-ignore:
|
|
7
|
+
- '.github/workflows/**'
|
|
8
|
+
pull_request:
|
|
9
|
+
branches: [main]
|
|
10
|
+
paths-ignore:
|
|
11
|
+
- '.github/workflows/**'
|
|
12
|
+
workflow_dispatch:
|
|
13
|
+
|
|
14
|
+
jobs:
|
|
15
|
+
analyze:
|
|
16
|
+
runs-on: ubuntu-latest
|
|
17
|
+
timeout-minutes: 360
|
|
18
|
+
permissions:
|
|
19
|
+
actions: read
|
|
20
|
+
contents: read
|
|
21
|
+
security-events: write
|
|
22
|
+
|
|
23
|
+
strategy:
|
|
24
|
+
fail-fast: false
|
|
25
|
+
matrix:
|
|
26
|
+
language: [ 'python' ]
|
|
27
|
+
|
|
28
|
+
steps:
|
|
29
|
+
- name: Checkout repository
|
|
30
|
+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
31
|
+
|
|
32
|
+
- name: Initialize CodeQL
|
|
33
|
+
uses: github/codeql-action/init@382a50a0284c0de445104889a9d6003acb4b3c1d # v2.15.4
|
|
34
|
+
with:
|
|
35
|
+
languages: ${{ matrix.language }}
|
|
36
|
+
|
|
37
|
+
- name: Perform CodeQL Analysis
|
|
38
|
+
uses: github/codeql-action/analyze@382a50a0284c0de445104889a9d6003acb4b3c1d # v2.15.4
|
|
39
|
+
with:
|
|
40
|
+
category: "/language:${{matrix.language}}"
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
name: "Dependency Review"
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
pull_request:
|
|
5
|
+
|
|
6
|
+
permissions:
|
|
7
|
+
contents: read
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
dependency-review:
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
steps:
|
|
13
|
+
- name: "Checkout Repository"
|
|
14
|
+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
15
|
+
|
|
16
|
+
- name: "Dependency Review"
|
|
17
|
+
uses: actions/dependency-review-action@bc41886e18ea39df68b1b1245f4184881938e050 # v4.7.2
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# .pre-commit-config.yaml
|
|
2
|
+
default_stages: [pre-commit]
|
|
3
|
+
repos:
|
|
4
|
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
5
|
+
rev: v6.0.0
|
|
6
|
+
hooks:
|
|
7
|
+
- id: trailing-whitespace
|
|
8
|
+
- id: end-of-file-fixer
|
|
9
|
+
- id: check-yaml
|
|
10
|
+
- id: check-added-large-files
|
|
11
|
+
- id: detect-private-key
|
|
12
|
+
# - repo: https://github.com/gitleaks/gitleaks
|
|
13
|
+
# rev: v8.27.0
|
|
14
|
+
# hooks:
|
|
15
|
+
# - id: gitleaks
|
|
16
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
17
|
+
rev: v0.12.10
|
|
18
|
+
hooks:
|
|
19
|
+
- id: ruff-check
|
|
20
|
+
args: [--fix]
|
|
21
|
+
- id: ruff-format
|
|
22
|
+
- repo: https://github.com/astral-sh/uv-pre-commit
|
|
23
|
+
# uv version.
|
|
24
|
+
rev: 0.8.13
|
|
25
|
+
hooks:
|
|
26
|
+
- id: uv-lock
|
|
27
|
+
- id: uv-sync
|
|
28
|
+
args: ['--locked', '--all-packages']
|
|
29
|
+
- repo: https://github.com/executablebooks/mdformat
|
|
30
|
+
rev: 0.7.22
|
|
31
|
+
hooks:
|
|
32
|
+
- id: mdformat
|
|
33
|
+
additional_dependencies:
|
|
34
|
+
- mdformat-gfm
|
|
35
|
+
- mdformat-black
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
python 3.12.4
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# Contributing
|
|
@@ -1,23 +1,19 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: autopkg-wrapper
|
|
3
|
-
Version:
|
|
3
|
+
Version: 2025.8.1
|
|
4
4
|
Summary: A package used to execute some autopkg functions, primarily within the context of a GitHub Actions runner.
|
|
5
|
-
Home-page: https://github.com/smithjw/autopkg-wrapper
|
|
6
|
-
License: BSD-3-Clause
|
|
7
|
-
Author: James Smith
|
|
8
|
-
Author-email: james@smithjw.me
|
|
9
|
-
Requires-Python: >=3.12,<4.0
|
|
10
|
-
Classifier: License :: OSI Approved :: BSD License
|
|
11
|
-
Classifier: Programming Language :: Python :: 3
|
|
12
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
13
|
-
Requires-Dist: chardet (>=5)
|
|
14
|
-
Requires-Dist: idna (>=3)
|
|
15
|
-
Requires-Dist: pygithub (>=2)
|
|
16
|
-
Requires-Dist: requests (>=2)
|
|
17
|
-
Requires-Dist: ruamel-yaml (>=0.18)
|
|
18
|
-
Requires-Dist: toml (>=0.10)
|
|
19
|
-
Requires-Dist: urllib3 (>=2)
|
|
20
5
|
Project-URL: Repository, https://github.com/smithjw/autopkg-wrapper
|
|
6
|
+
Author-email: James Smith <james@smithjw.me>
|
|
7
|
+
License-Expression: BSD-3-Clause
|
|
8
|
+
License-File: LICENSE
|
|
9
|
+
Requires-Python: ~=3.12.0
|
|
10
|
+
Requires-Dist: chardet
|
|
11
|
+
Requires-Dist: idna
|
|
12
|
+
Requires-Dist: pygithub
|
|
13
|
+
Requires-Dist: requests
|
|
14
|
+
Requires-Dist: ruamel-yaml
|
|
15
|
+
Requires-Dist: toml
|
|
16
|
+
Requires-Dist: urllib3
|
|
21
17
|
Description-Content-Type: text/markdown
|
|
22
18
|
|
|
23
19
|
# autopkg-wrapper
|
|
@@ -56,4 +52,3 @@ An example folder structure and GitHub Actions Workflow is available within the
|
|
|
56
52
|
|
|
57
53
|
- [`autopkg_tools` from Facebook](https://github.com/facebook/IT-CPE/tree/main/legacy/autopkg_tools)
|
|
58
54
|
- [`autopkg_tools` from Facebook, modified by Gusto](https://github.com/Gusto/it-cpe-opensource/tree/main/autopkg)
|
|
59
|
-
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
name: autopkg-wrapper GitHub Actions Demo
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch: # Triggered manually from GitHub
|
|
5
|
+
inputs:
|
|
6
|
+
debug:
|
|
7
|
+
description: 'Debug mode'
|
|
8
|
+
required: false
|
|
9
|
+
default: 'false'
|
|
10
|
+
recipes:
|
|
11
|
+
description: Recipe to Run
|
|
12
|
+
default: 'Google_Chrome.pkg'
|
|
13
|
+
required: false
|
|
14
|
+
|
|
15
|
+
env:
|
|
16
|
+
PYTHON_VERSION: 3.12.1
|
|
17
|
+
AUTOPKG_OVERRIDES_REPO: 'autopkg-overrides'
|
|
18
|
+
AUTOPKG_REPOS_DIR: 'autopkg-repos'
|
|
19
|
+
AUTOPKG_CACHE_DIR: 'autopkg-cache'
|
|
20
|
+
|
|
21
|
+
jobs:
|
|
22
|
+
cache_autopkg_recipe_repos:
|
|
23
|
+
name: Cache autopkg repositories
|
|
24
|
+
runs-on: ubuntu-latest
|
|
25
|
+
outputs:
|
|
26
|
+
cache_date: ${{ steps.cache_key.outputs.date }}
|
|
27
|
+
cache_repos_sha: ${{ steps.cache_key.outputs.repo_list_sha }}
|
|
28
|
+
|
|
29
|
+
steps:
|
|
30
|
+
- name: Checkout host repo
|
|
31
|
+
uses: actions/checkout@v4
|
|
32
|
+
with:
|
|
33
|
+
path: ${{ env.AUTOPKG_OVERRIDES_REPO }}
|
|
34
|
+
|
|
35
|
+
- name: Create repos cache key
|
|
36
|
+
id: cache_key
|
|
37
|
+
shell: bash
|
|
38
|
+
env:
|
|
39
|
+
GH_TOKEN: ${{ github.token }}
|
|
40
|
+
run: |
|
|
41
|
+
echo "date=$(/bin/date -u "+%Y%m%d")" >> $GITHUB_OUTPUT
|
|
42
|
+
|
|
43
|
+
REPO_COMMIT_ARRAY=()
|
|
44
|
+
while IFS= read -r repo; do
|
|
45
|
+
if [ -n "$repo" ]; then
|
|
46
|
+
REPO="${repo:19}"
|
|
47
|
+
OWNER=$(echo "$REPO" | awk -F'/' '{print $1}')
|
|
48
|
+
NAME=$(echo "$REPO" | awk -F'/' '{print $2}')
|
|
49
|
+
REPO_API="repos/${OWNER}/${NAME}/commits?per_page=1"
|
|
50
|
+
REPO_COMMIT_SHA="$(gh api "$REPO_API" --jq '.[].sha')"
|
|
51
|
+
REPO_COMMIT_ARRAY+=("$REPO_COMMIT_SHA")
|
|
52
|
+
fi
|
|
53
|
+
done < "$AUTOPKG_OVERRIDES_REPO/repo_list.txt"
|
|
54
|
+
|
|
55
|
+
REPO_LIST_SHA=$(echo "${REPO_COMMIT_ARRAY[@]}" | sha256sum -t | awk '{ print $1 }')
|
|
56
|
+
echo "repo_list_sha=$REPO_LIST_SHA" >> $GITHUB_OUTPUT
|
|
57
|
+
|
|
58
|
+
- name: Cache autopkg repos
|
|
59
|
+
uses: actions/cache@v4
|
|
60
|
+
with:
|
|
61
|
+
enableCrossOsArchive: true
|
|
62
|
+
path: ${{ env.AUTOPKG_REPOS_DIR }}
|
|
63
|
+
key: cache-autopkg-repos-${{ steps.cache_key.outputs.repo_list_sha }}
|
|
64
|
+
restore-keys: |
|
|
65
|
+
cache-autopkg-repos-${{ steps.cache_key.outputs.repo_list_sha }}
|
|
66
|
+
cache-autopkg-repos-
|
|
67
|
+
|
|
68
|
+
- name: Clone autopkg repos
|
|
69
|
+
run: |
|
|
70
|
+
mkdir -p "$AUTOPKG_REPOS_DIR"
|
|
71
|
+
for repo in $(cat "$AUTOPKG_OVERRIDES_REPO/repo_list.txt"); do
|
|
72
|
+
REPO="${repo:19}"
|
|
73
|
+
OWNER="$(echo $REPO | awk -F'/' '{print $1}')"
|
|
74
|
+
NAME="$(echo $REPO | awk -F'/' '{print $2}')"
|
|
75
|
+
REPO_PATH="$AUTOPKG_REPOS_DIR/com.github.$OWNER.$NAME"
|
|
76
|
+
|
|
77
|
+
if [[ -d "$REPO_PATH" ]]; then
|
|
78
|
+
echo "Repo restored from cache, moving on"
|
|
79
|
+
else
|
|
80
|
+
echo "Repo not present, cloning"
|
|
81
|
+
git clone --depth=1 "$repo" "$REPO_PATH"
|
|
82
|
+
fi
|
|
83
|
+
done
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
run_autopkg_recipes:
|
|
87
|
+
name: Running autopkg recipes
|
|
88
|
+
runs-on: macos-13
|
|
89
|
+
needs: [cache_autopkg_recipe_repos]
|
|
90
|
+
|
|
91
|
+
steps:
|
|
92
|
+
- name: Checkout host repo
|
|
93
|
+
uses: actions/checkout@v4
|
|
94
|
+
with:
|
|
95
|
+
path: ${{ env.AUTOPKG_OVERRIDES_REPO }}
|
|
96
|
+
|
|
97
|
+
- uses: actions/setup-python@v5
|
|
98
|
+
with:
|
|
99
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
100
|
+
cache: 'pip'
|
|
101
|
+
cache-dependency-path: |
|
|
102
|
+
**/requirements.txt
|
|
103
|
+
|
|
104
|
+
- name: Install requirements
|
|
105
|
+
run: |
|
|
106
|
+
pip install --upgrade pip
|
|
107
|
+
pip install -r "$AUTOPKG_OVERRIDES_REPO/requirements.txt"
|
|
108
|
+
|
|
109
|
+
- name: Cache autopkg repos
|
|
110
|
+
uses: actions/cache@v4
|
|
111
|
+
with:
|
|
112
|
+
enableCrossOsArchive: true
|
|
113
|
+
path: ${{ env.AUTOPKG_REPOS_DIR }}
|
|
114
|
+
key: cache-autopkg-repos-${{ needs.cache_autopkg_recipe_repos.outputs.cache_repos_sha }}
|
|
115
|
+
restore-keys: |
|
|
116
|
+
cache-autopkg-repos-${{ needs.cache_autopkg_recipe_repos.outputs.cache_repos_sha }}
|
|
117
|
+
cache-autopkg-repos-
|
|
118
|
+
|
|
119
|
+
- name: Cache autopkg packages
|
|
120
|
+
uses: actions/cache@v4
|
|
121
|
+
with:
|
|
122
|
+
enableCrossOsArchive: true
|
|
123
|
+
path: ${{ env.AUTOPKG_CACHE_DIR }}
|
|
124
|
+
key: cache-autopkg-packages-${{ needs.cache_autopkg_recipe_repos.outputs.cache_date }}
|
|
125
|
+
restore-keys: |
|
|
126
|
+
cache-autopkg-packages-${{ needs.cache_autopkg_recipe_repos.outputs.cache_date }}
|
|
127
|
+
cache-autopkg-packages-
|
|
128
|
+
|
|
129
|
+
- name: Configure autopkg directories
|
|
130
|
+
run: |
|
|
131
|
+
mkdir -p "$AUTOPKG_CACHE_DIR" "$AUTOPKG_REPOS_DIR"
|
|
132
|
+
|
|
133
|
+
- name: Validate autopkg directory structure
|
|
134
|
+
continue-on-error: true
|
|
135
|
+
run: |
|
|
136
|
+
echo "Contents of GITHUB_WORKSPACE: $GITHUB_WORKSPACE"
|
|
137
|
+
ls -la "$GITHUB_WORKSPACE"
|
|
138
|
+
|
|
139
|
+
echo "Contents of AUTOPKG_OVERRIDES_REPO: $AUTOPKG_OVERRIDES_REPO"
|
|
140
|
+
ls -la "$AUTOPKG_OVERRIDES_REPO"
|
|
141
|
+
|
|
142
|
+
echo "Contents of AUTOPKG_CACHE_DIR: $AUTOPKG_CACHE_DIR"
|
|
143
|
+
ls -la "$AUTOPKG_CACHE_DIR"
|
|
144
|
+
|
|
145
|
+
echo "Contents of AUTOPKG_REPOS_DIR: $AUTOPKG_REPOS_DIR"
|
|
146
|
+
ls -la "$AUTOPKG_REPOS_DIR"
|
|
147
|
+
|
|
148
|
+
- uses: robinraju/release-downloader@efa4cd07bd0195e6cc65e9e30c251b49ce4d3e51 # v1.8
|
|
149
|
+
with:
|
|
150
|
+
repository: 'autopkg/autopkg'
|
|
151
|
+
latest: true
|
|
152
|
+
# tag: 'v3.0.0RC2'
|
|
153
|
+
fileName: '*.pkg'
|
|
154
|
+
out-file-path: 'downloads'
|
|
155
|
+
|
|
156
|
+
- name: Install autopkg
|
|
157
|
+
run: |
|
|
158
|
+
# sudo installer -pkg "$GITHUB_WORKSPACE"/downloads/*.pkg -target /
|
|
159
|
+
for PKG in $(find "$GITHUB_WORKSPACE"/downloads -name "*.pkg"); do
|
|
160
|
+
sudo /usr/sbin/installer -pkg "${PKG}" -target /
|
|
161
|
+
done
|
|
162
|
+
|
|
163
|
+
- name: Configure AutoPkg and Git
|
|
164
|
+
env:
|
|
165
|
+
AUTOPKG_OVERRIDES_PATH: '${{ github.workspace}}/${{ env.AUTOPKG_OVERRIDES_REPO }}/overrides'
|
|
166
|
+
AUTOPKG_REPOS_PATH: '${{ github.workspace}}/${{ env.AUTOPKG_REPOS_DIR }}'
|
|
167
|
+
AUTOPKG_CACHE_PATH: '${{ github.workspace}}/${{ env.AUTOPKG_CACHE_DIR }}'
|
|
168
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
169
|
+
run: |
|
|
170
|
+
defaults write com.github.autopkg RECIPE_OVERRIDE_DIRS "$AUTOPKG_OVERRIDES_PATH"
|
|
171
|
+
defaults write com.github.autopkg RECIPE_REPO_DIR "$AUTOPKG_REPOS_PATH"
|
|
172
|
+
defaults write com.github.autopkg CACHE_DIR "$AUTOPKG_CACHE_PATH"
|
|
173
|
+
defaults write com.github.autopkg FAIL_RECIPES_WITHOUT_TRUST_INFO -bool YES
|
|
174
|
+
defaults write com.github.autopkg GITHUB_TOKEN "${GITHUB_TOKEN}"
|
|
175
|
+
defaults write com.github.autopkg jcds_mode -bool True
|
|
176
|
+
git config --global user.name "autopkg_runner"
|
|
177
|
+
git config --global user.email "autopkg_runner@githubactions.local"
|
|
178
|
+
|
|
179
|
+
- name: Add autopkg repos
|
|
180
|
+
run: |
|
|
181
|
+
for repo in $(cat "$AUTOPKG_OVERRIDES_REPO/repo_list.txt"); do
|
|
182
|
+
autopkg repo-add "$repo"
|
|
183
|
+
done
|
|
184
|
+
|
|
185
|
+
- name: Run autopkg recipe
|
|
186
|
+
run: |
|
|
187
|
+
ls -la
|
|
188
|
+
ls "$AUTOPKG_OVERRIDES_REPO"
|
|
189
|
+
echo "AUTOPKG_OVERRIDES_REPO: $AUTOPKG_OVERRIDES_REPO"
|
|
190
|
+
autopkg_wrapper
|
|
191
|
+
env:
|
|
192
|
+
DEBUG: ${{ github.event.inputs.debug }}
|
|
193
|
+
AUTOPKG_RECIPES: ${{ github.event.inputs.recipes }}
|
|
194
|
+
AUTOPKG_OVERRIDES_REPO_PATH: ${{ env.AUTOPKG_OVERRIDES_REPO }}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
Identifier: local.pkg.Google_Chrome
|
|
2
|
+
Input:
|
|
3
|
+
DOWNLOAD_URL: https://dl.google.com/dl/chrome/mac/universal/stable/gcem/GoogleChrome.pkg
|
|
4
|
+
NAME: Google Chrome
|
|
5
|
+
PKGPAYLOADNAME: GoogleChrome
|
|
6
|
+
SOFTWARETITLE: Google_Chrome
|
|
7
|
+
ParentRecipe: com.github.smithjw.pkg.Google_Chrome
|
|
8
|
+
ParentRecipeTrustInfo:
|
|
9
|
+
non_core_processors:
|
|
10
|
+
com.github.smithjw.processors/FriendlyPathDeleter:
|
|
11
|
+
git_hash: 2e4a63c08157f400040db145d8d8deb64160d192
|
|
12
|
+
path: /usr/local/autopkgci/repos/com.github.autopkg.smithjw-recipes/SharedProcessors/FriendlyPathDeleter.py
|
|
13
|
+
sha256_hash: eb9abb47f5c699c98d2cde6273782504015e52e6bde031d8e27dbfa0335139dd
|
|
14
|
+
parent_recipes:
|
|
15
|
+
com.github.smithjw.download.Google_Chrome:
|
|
16
|
+
git_hash: 00d83d45572ac9caf5d5743f07d01aecae17413a
|
|
17
|
+
path: /usr/local/autopkgci/repos/com.github.autopkg.smithjw-recipes/Google/Google_Chrome.download.recipe.yaml
|
|
18
|
+
sha256_hash: 0acfd4869db0778a652443e1b0927486b3ccfe75254e21c6206857c0def75f7f
|
|
19
|
+
com.github.smithjw.pkg.Google_Chrome:
|
|
20
|
+
git_hash: 849955822c69b5ef28685f47662cdd9348173d96
|
|
21
|
+
path: /usr/local/autopkgci/repos/com.github.autopkg.smithjw-recipes/Google/Google_Chrome.pkg.recipe.yaml
|
|
22
|
+
sha256_hash: f84fccf85d2d966c8b336ba6a64ebdabb79c398af087cb88f1c330d56f037380
|
|
File without changes
|
|
@@ -186,7 +186,7 @@ def get_override_repo_info(args):
|
|
|
186
186
|
logging.debug(f"Override Repo Path: {override_repo_path}")
|
|
187
187
|
|
|
188
188
|
override_repo_git_work_tree = f"--work-tree={override_repo_path}"
|
|
189
|
-
override_repo_git_git_dir = f"--git-dir={override_repo_path /
|
|
189
|
+
override_repo_git_git_dir = f"--git-dir={override_repo_path / '.git'}"
|
|
190
190
|
override_repo_url, override_repo_remote_ref = git.get_repo_info(
|
|
191
191
|
override_repo_git_git_dir
|
|
192
192
|
)
|
|
@@ -229,7 +229,7 @@ def update_recipe_repo(recipe, git_info, disable_recipe_trust_check, args):
|
|
|
229
229
|
|
|
230
230
|
if current_branch != git_info["override_trust_branch"]:
|
|
231
231
|
logging.debug(
|
|
232
|
-
f"override_trust_branch: {git_info[
|
|
232
|
+
f"override_trust_branch: {git_info['override_trust_branch']}"
|
|
233
233
|
)
|
|
234
234
|
git.create_branch(git_info)
|
|
235
235
|
|
|
@@ -356,6 +356,8 @@ def main():
|
|
|
356
356
|
args=args,
|
|
357
357
|
)
|
|
358
358
|
|
|
359
|
+
failed_recipes = []
|
|
360
|
+
|
|
359
361
|
for recipe in recipe_list:
|
|
360
362
|
logging.info(f"Processing Recipe: {recipe.name}")
|
|
361
363
|
process_recipe(
|
|
@@ -373,12 +375,18 @@ def main():
|
|
|
373
375
|
recipe=recipe, token=args.slack_token
|
|
374
376
|
) if args.slack_token else None
|
|
375
377
|
|
|
378
|
+
if recipe.error or recipe.results.get("failed"):
|
|
379
|
+
failed_recipes.append(recipe)
|
|
380
|
+
|
|
376
381
|
recipe.pr_url = (
|
|
377
382
|
git.create_pull_request(git_info=override_repo_info, recipe=recipe)
|
|
378
383
|
if args.create_pr
|
|
379
384
|
else None
|
|
380
385
|
)
|
|
381
386
|
|
|
382
|
-
|
|
383
|
-
if
|
|
384
|
-
|
|
387
|
+
# Create GitHub issue for failed recipes
|
|
388
|
+
if args.create_issues and failed_recipes and args.github_token:
|
|
389
|
+
issue_url = git.create_issue_for_failed_recipes(
|
|
390
|
+
git_info=override_repo_info, failed_recipes=failed_recipes
|
|
391
|
+
)
|
|
392
|
+
logging.info(f"Created GitHub issue for failed recipes: {issue_url}")
|
|
File without changes
|
|
@@ -19,7 +19,7 @@ def send_notification(recipe, token):
|
|
|
19
19
|
if not recipe.results["failed"]:
|
|
20
20
|
task_description = "Unknown error"
|
|
21
21
|
else:
|
|
22
|
-
task_description = ("Error: {} \
|
|
22
|
+
task_description = ("Error: {} \nTraceback: {} \n").format(
|
|
23
23
|
recipe.results["failed"][0]["message"],
|
|
24
24
|
recipe.results["failed"][0]["traceback"],
|
|
25
25
|
)
|
|
File without changes
|
|
@@ -100,7 +100,7 @@ def setup_args():
|
|
|
100
100
|
"--branch-name",
|
|
101
101
|
default=os.getenv(
|
|
102
102
|
"AW_TRUST_BRANCH",
|
|
103
|
-
f"fix/update_trust_information/{datetime.now().strftime(
|
|
103
|
+
f"fix/update_trust_information/{datetime.now().strftime('%Y-%m-%dT%H-%M-%S')}",
|
|
104
104
|
),
|
|
105
105
|
help="""
|
|
106
106
|
Branch name to be used recipe overrides have failed their trust verification and need to be updated.
|
|
@@ -113,6 +113,11 @@ def setup_args():
|
|
|
113
113
|
action="store_true",
|
|
114
114
|
help="If enabled, autopkg_wrapper will open a PR for updated trust information",
|
|
115
115
|
)
|
|
116
|
+
parser.add_argument(
|
|
117
|
+
"--create-issues",
|
|
118
|
+
action="store_true",
|
|
119
|
+
help="Create a GitHub issue for recipes that fail during processing",
|
|
120
|
+
)
|
|
116
121
|
parser.add_argument(
|
|
117
122
|
"--overrides-repo-path",
|
|
118
123
|
default=os.getenv("AW_OVERRIDES_REPO_PATH", None),
|
{autopkg_wrapper-2024.8.1 → autopkg_wrapper-2025.8.1}/autopkg_wrapper/utils/git_functions.py
RENAMED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import logging
|
|
2
2
|
import subprocess
|
|
3
|
+
from datetime import datetime
|
|
3
4
|
|
|
4
5
|
from github import Github
|
|
5
6
|
|
|
@@ -102,8 +103,58 @@ Please review and merge the updated trust information for this override.
|
|
|
102
103
|
|
|
103
104
|
g = Github(git_info["github_token"])
|
|
104
105
|
repo = g.get_repo(git_info["override_repo_remote_ref"])
|
|
105
|
-
pr = repo.create_pull(
|
|
106
|
-
|
|
106
|
+
pr = repo.create_pull(
|
|
107
|
+
title=title, body=body, head=git_info["override_trust_branch"], base="main"
|
|
108
|
+
)
|
|
109
|
+
pr_url = f"{git_info['override_repo_url']}/pull/{pr.number}"
|
|
107
110
|
|
|
108
111
|
logging.debug(f"PR URL: {pr_url}")
|
|
109
112
|
return pr_url
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
def create_issue_for_failed_recipes(git_info, failed_recipes):
|
|
116
|
+
"""
|
|
117
|
+
Creates a GitHub issue listing all recipes that failed during the run.
|
|
118
|
+
|
|
119
|
+
Args:
|
|
120
|
+
git_info (dict): Dictionary containing Git repository information
|
|
121
|
+
failed_recipes (list): List of Recipe objects that failed during processing
|
|
122
|
+
|
|
123
|
+
Returns:
|
|
124
|
+
str: URL of the created GitHub issue, or None if no issue was created
|
|
125
|
+
"""
|
|
126
|
+
|
|
127
|
+
if not failed_recipes:
|
|
128
|
+
logging.debug("No failed recipes to report")
|
|
129
|
+
return None
|
|
130
|
+
|
|
131
|
+
g = Github(git_info["github_token"])
|
|
132
|
+
repo = g.get_repo(git_info["override_repo_remote_ref"])
|
|
133
|
+
|
|
134
|
+
# Create issue title and body
|
|
135
|
+
current_date = datetime.now().strftime("%Y-%m-%d")
|
|
136
|
+
title = f"AutoPkg Recipe Failures - {current_date}"
|
|
137
|
+
|
|
138
|
+
body = "## Recipe Failure Details:\n\n"
|
|
139
|
+
for recipe in failed_recipes:
|
|
140
|
+
body += f"#### {recipe.name}\n"
|
|
141
|
+
|
|
142
|
+
if recipe.results.get("failed"):
|
|
143
|
+
for failure in recipe.results.get("failed", []):
|
|
144
|
+
body += f"- {failure.get('message', 'Unknown error')}\n"
|
|
145
|
+
|
|
146
|
+
body += "\n"
|
|
147
|
+
|
|
148
|
+
body += "\nThis issue was automatically generated by autopkg-wrapper."
|
|
149
|
+
|
|
150
|
+
# Create the issue
|
|
151
|
+
issue = repo.create_issue(
|
|
152
|
+
title=title,
|
|
153
|
+
body=body,
|
|
154
|
+
labels=["autopkg-failure"],
|
|
155
|
+
)
|
|
156
|
+
|
|
157
|
+
issue_url = f"{git_info['override_repo_url']}/issues/{issue.number}"
|
|
158
|
+
logging.debug(f"Issue URL: {issue_url}")
|
|
159
|
+
|
|
160
|
+
return issue_url
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
name = "autopkg-wrapper"
|
|
3
|
+
version = "2025.8.1"
|
|
4
|
+
description = "A package used to execute some autopkg functions, primarily within the context of a GitHub Actions runner."
|
|
5
|
+
readme = "README.md"
|
|
6
|
+
requires-python = "~=3.12.0"
|
|
7
|
+
license = "BSD-3-Clause"
|
|
8
|
+
authors = [{ name = "James Smith", email = "james@smithjw.me" }]
|
|
9
|
+
dependencies = [
|
|
10
|
+
"chardet",
|
|
11
|
+
"idna",
|
|
12
|
+
"pygithub",
|
|
13
|
+
"requests",
|
|
14
|
+
"ruamel-yaml",
|
|
15
|
+
"toml",
|
|
16
|
+
"urllib3",
|
|
17
|
+
]
|
|
18
|
+
|
|
19
|
+
[project.urls]
|
|
20
|
+
Repository = "https://github.com/smithjw/autopkg-wrapper"
|
|
21
|
+
|
|
22
|
+
[project.scripts]
|
|
23
|
+
autopkg_wrapper = "autopkg_wrapper.autopkg_wrapper:main"
|
|
24
|
+
|
|
25
|
+
[dependency-groups]
|
|
26
|
+
dev = [
|
|
27
|
+
"uv-bump>=0.1.2",
|
|
28
|
+
]
|
|
29
|
+
|
|
30
|
+
[build-system]
|
|
31
|
+
requires = ["hatchling"]
|
|
32
|
+
build-backend = "hatchling.build"
|
|
File without changes
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"CACHE_DIR": "/Users/Shared/AutoPkg/Cache",
|
|
3
|
+
"MUNKI_REPO": "/Users/Shared/munki_repo",
|
|
4
|
+
"RECIPE_OVERRIDE_DIRS": "/Users/Shared/AutoPkg/RecipeOverrides",
|
|
5
|
+
"RECIPE_REPOS": {},
|
|
6
|
+
"RECIPE_REPO_DIR": "/Users/Shared/AutoPkg/RecipeRepos",
|
|
7
|
+
"RECIPE_SEARCH_DIRS": [
|
|
8
|
+
".",
|
|
9
|
+
"~/Library/AutoPkg/Recipes",
|
|
10
|
+
"/Library/AutoPkg/Recipes",
|
|
11
|
+
"/Users/Shared/AutoPkg/Recipes"
|
|
12
|
+
]
|
|
13
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
3
|
+
<plist version="1.0">
|
|
4
|
+
<dict>
|
|
5
|
+
<key>CACHE_DIR</key>
|
|
6
|
+
<string>/Users/Shared/AutoPkg/Cache</string>
|
|
7
|
+
<key>MUNKI_REPO</key>
|
|
8
|
+
<string>/Users/Shared/munki_repo</string>
|
|
9
|
+
<key>RECIPE_OVERRIDE_DIRS</key>
|
|
10
|
+
<string>/Users/Shared/AutoPkg/RecipeOverrides</string>
|
|
11
|
+
<key>RECIPE_REPOS</key>
|
|
12
|
+
<dict />
|
|
13
|
+
<key>RECIPE_REPO_DIR</key>
|
|
14
|
+
<string>/Users/Shared/AutoPkg/RecipeRepos</string>
|
|
15
|
+
<key>RECIPE_SEARCH_DIRS</key>
|
|
16
|
+
<array>
|
|
17
|
+
<string>.</string>
|
|
18
|
+
<string>~/Library/AutoPkg/Recipes</string>
|
|
19
|
+
<string>/Library/AutoPkg/Recipes</string>
|
|
20
|
+
<string>/Users/Shared/AutoPkg/Recipes</string>
|
|
21
|
+
</array>
|
|
22
|
+
</dict>
|
|
23
|
+
</plist>
|
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
version = 1
|
|
2
|
+
revision = 3
|
|
3
|
+
requires-python = "==3.12.*"
|
|
4
|
+
|
|
5
|
+
[[package]]
|
|
6
|
+
name = "autopkg-wrapper"
|
|
7
|
+
version = "2025.8.1"
|
|
8
|
+
source = { editable = "." }
|
|
9
|
+
dependencies = [
|
|
10
|
+
{ name = "chardet" },
|
|
11
|
+
{ name = "idna" },
|
|
12
|
+
{ name = "pygithub" },
|
|
13
|
+
{ name = "requests" },
|
|
14
|
+
{ name = "ruamel-yaml" },
|
|
15
|
+
{ name = "toml" },
|
|
16
|
+
{ name = "urllib3" },
|
|
17
|
+
]
|
|
18
|
+
|
|
19
|
+
[package.dev-dependencies]
|
|
20
|
+
dev = [
|
|
21
|
+
{ name = "uv-bump" },
|
|
22
|
+
]
|
|
23
|
+
|
|
24
|
+
[package.metadata]
|
|
25
|
+
requires-dist = [
|
|
26
|
+
{ name = "chardet" },
|
|
27
|
+
{ name = "idna" },
|
|
28
|
+
{ name = "pygithub" },
|
|
29
|
+
{ name = "requests" },
|
|
30
|
+
{ name = "ruamel-yaml" },
|
|
31
|
+
{ name = "toml" },
|
|
32
|
+
{ name = "urllib3" },
|
|
33
|
+
]
|
|
34
|
+
|
|
35
|
+
[package.metadata.requires-dev]
|
|
36
|
+
dev = [{ name = "uv-bump", specifier = ">=0.1.2" }]
|
|
37
|
+
|
|
38
|
+
[[package]]
|
|
39
|
+
name = "certifi"
|
|
40
|
+
version = "2025.8.3"
|
|
41
|
+
source = { registry = "https://pypi.org/simple" }
|
|
42
|
+
sdist = { url = "https://files.pythonhosted.org/packages/dc/67/960ebe6bf230a96cda2e0abcf73af550ec4f090005363542f0765df162e0/certifi-2025.8.3.tar.gz", hash = "sha256:e564105f78ded564e3ae7c923924435e1daa7463faeab5bb932bc53ffae63407", size = 162386, upload-time = "2025-08-03T03:07:47.08Z" }
|
|
43
|
+
wheels = [
|
|
44
|
+
{ url = "https://files.pythonhosted.org/packages/e5/48/1549795ba7742c948d2ad169c1c8cdbae65bc450d6cd753d124b17c8cd32/certifi-2025.8.3-py3-none-any.whl", hash = "sha256:f6c12493cfb1b06ba2ff328595af9350c65d6644968e5d3a2ffd78699af217a5", size = 161216, upload-time = "2025-08-03T03:07:45.777Z" },
|
|
45
|
+
]
|
|
46
|
+
|
|
47
|
+
[[package]]
|
|
48
|
+
name = "cffi"
|
|
49
|
+
version = "1.17.1"
|
|
50
|
+
source = { registry = "https://pypi.org/simple" }
|
|
51
|
+
dependencies = [
|
|
52
|
+
{ name = "pycparser" },
|
|
53
|
+
]
|
|
54
|
+
sdist = { url = "https://files.pythonhosted.org/packages/fc/97/c783634659c2920c3fc70419e3af40972dbaf758daa229a7d6ea6135c90d/cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824", size = 516621, upload-time = "2024-09-04T20:45:21.852Z" }
|
|
55
|
+
wheels = [
|
|
56
|
+
{ url = "https://files.pythonhosted.org/packages/5a/84/e94227139ee5fb4d600a7a4927f322e1d4aea6fdc50bd3fca8493caba23f/cffi-1.17.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:805b4371bf7197c329fcb3ead37e710d1bca9da5d583f5073b799d5c5bd1eee4", size = 183178, upload-time = "2024-09-04T20:44:12.232Z" },
|
|
57
|
+
{ url = "https://files.pythonhosted.org/packages/da/ee/fb72c2b48656111c4ef27f0f91da355e130a923473bf5ee75c5643d00cca/cffi-1.17.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:733e99bc2df47476e3848417c5a4540522f234dfd4ef3ab7fafdf555b082ec0c", size = 178840, upload-time = "2024-09-04T20:44:13.739Z" },
|
|
58
|
+
{ url = "https://files.pythonhosted.org/packages/cc/b6/db007700f67d151abadf508cbfd6a1884f57eab90b1bb985c4c8c02b0f28/cffi-1.17.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1257bdabf294dceb59f5e70c64a3e2f462c30c7ad68092d01bbbfb1c16b1ba36", size = 454803, upload-time = "2024-09-04T20:44:15.231Z" },
|
|
59
|
+
{ url = "https://files.pythonhosted.org/packages/1a/df/f8d151540d8c200eb1c6fba8cd0dfd40904f1b0682ea705c36e6c2e97ab3/cffi-1.17.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da95af8214998d77a98cc14e3a3bd00aa191526343078b530ceb0bd710fb48a5", size = 478850, upload-time = "2024-09-04T20:44:17.188Z" },
|
|
60
|
+
{ url = "https://files.pythonhosted.org/packages/28/c0/b31116332a547fd2677ae5b78a2ef662dfc8023d67f41b2a83f7c2aa78b1/cffi-1.17.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d63afe322132c194cf832bfec0dc69a99fb9bb6bbd550f161a49e9e855cc78ff", size = 485729, upload-time = "2024-09-04T20:44:18.688Z" },
|
|
61
|
+
{ url = "https://files.pythonhosted.org/packages/91/2b/9a1ddfa5c7f13cab007a2c9cc295b70fbbda7cb10a286aa6810338e60ea1/cffi-1.17.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f79fc4fc25f1c8698ff97788206bb3c2598949bfe0fef03d299eb1b5356ada99", size = 471256, upload-time = "2024-09-04T20:44:20.248Z" },
|
|
62
|
+
{ url = "https://files.pythonhosted.org/packages/b2/d5/da47df7004cb17e4955df6a43d14b3b4ae77737dff8bf7f8f333196717bf/cffi-1.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b62ce867176a75d03a665bad002af8e6d54644fad99a3c70905c543130e39d93", size = 479424, upload-time = "2024-09-04T20:44:21.673Z" },
|
|
63
|
+
{ url = "https://files.pythonhosted.org/packages/0b/ac/2a28bcf513e93a219c8a4e8e125534f4f6db03e3179ba1c45e949b76212c/cffi-1.17.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:386c8bf53c502fff58903061338ce4f4950cbdcb23e2902d86c0f722b786bbe3", size = 484568, upload-time = "2024-09-04T20:44:23.245Z" },
|
|
64
|
+
{ url = "https://files.pythonhosted.org/packages/d4/38/ca8a4f639065f14ae0f1d9751e70447a261f1a30fa7547a828ae08142465/cffi-1.17.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4ceb10419a9adf4460ea14cfd6bc43d08701f0835e979bf821052f1805850fe8", size = 488736, upload-time = "2024-09-04T20:44:24.757Z" },
|
|
65
|
+
{ url = "https://files.pythonhosted.org/packages/86/c5/28b2d6f799ec0bdecf44dced2ec5ed43e0eb63097b0f58c293583b406582/cffi-1.17.1-cp312-cp312-win32.whl", hash = "sha256:a08d7e755f8ed21095a310a693525137cfe756ce62d066e53f502a83dc550f65", size = 172448, upload-time = "2024-09-04T20:44:26.208Z" },
|
|
66
|
+
{ url = "https://files.pythonhosted.org/packages/50/b9/db34c4755a7bd1cb2d1603ac3863f22bcecbd1ba29e5ee841a4bc510b294/cffi-1.17.1-cp312-cp312-win_amd64.whl", hash = "sha256:51392eae71afec0d0c8fb1a53b204dbb3bcabcb3c9b807eedf3e1e6ccf2de903", size = 181976, upload-time = "2024-09-04T20:44:27.578Z" },
|
|
67
|
+
]
|
|
68
|
+
|
|
69
|
+
[[package]]
|
|
70
|
+
name = "chardet"
|
|
71
|
+
version = "5.2.0"
|
|
72
|
+
source = { registry = "https://pypi.org/simple" }
|
|
73
|
+
sdist = { url = "https://files.pythonhosted.org/packages/f3/0d/f7b6ab21ec75897ed80c17d79b15951a719226b9fababf1e40ea74d69079/chardet-5.2.0.tar.gz", hash = "sha256:1b3b6ff479a8c414bc3fa2c0852995695c4a026dcd6d0633b2dd092ca39c1cf7", size = 2069618, upload-time = "2023-08-01T19:23:02.662Z" }
|
|
74
|
+
wheels = [
|
|
75
|
+
{ url = "https://files.pythonhosted.org/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl", hash = "sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970", size = 199385, upload-time = "2023-08-01T19:23:00.661Z" },
|
|
76
|
+
]
|
|
77
|
+
|
|
78
|
+
[[package]]
|
|
79
|
+
name = "charset-normalizer"
|
|
80
|
+
version = "3.4.3"
|
|
81
|
+
source = { registry = "https://pypi.org/simple" }
|
|
82
|
+
sdist = { url = "https://files.pythonhosted.org/packages/83/2d/5fd176ceb9b2fc619e63405525573493ca23441330fcdaee6bef9460e924/charset_normalizer-3.4.3.tar.gz", hash = "sha256:6fce4b8500244f6fcb71465d4a4930d132ba9ab8e71a7859e6a5d59851068d14", size = 122371, upload-time = "2025-08-09T07:57:28.46Z" }
|
|
83
|
+
wheels = [
|
|
84
|
+
{ url = "https://files.pythonhosted.org/packages/e9/5e/14c94999e418d9b87682734589404a25854d5f5d0408df68bc15b6ff54bb/charset_normalizer-3.4.3-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:e28e334d3ff134e88989d90ba04b47d84382a828c061d0d1027b1b12a62b39b1", size = 205655, upload-time = "2025-08-09T07:56:08.475Z" },
|
|
85
|
+
{ url = "https://files.pythonhosted.org/packages/7d/a8/c6ec5d389672521f644505a257f50544c074cf5fc292d5390331cd6fc9c3/charset_normalizer-3.4.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0cacf8f7297b0c4fcb74227692ca46b4a5852f8f4f24b3c766dd94a1075c4884", size = 146223, upload-time = "2025-08-09T07:56:09.708Z" },
|
|
86
|
+
{ url = "https://files.pythonhosted.org/packages/fc/eb/a2ffb08547f4e1e5415fb69eb7db25932c52a52bed371429648db4d84fb1/charset_normalizer-3.4.3-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c6fd51128a41297f5409deab284fecbe5305ebd7e5a1f959bee1c054622b7018", size = 159366, upload-time = "2025-08-09T07:56:11.326Z" },
|
|
87
|
+
{ url = "https://files.pythonhosted.org/packages/82/10/0fd19f20c624b278dddaf83b8464dcddc2456cb4b02bb902a6da126b87a1/charset_normalizer-3.4.3-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:3cfb2aad70f2c6debfbcb717f23b7eb55febc0bb23dcffc0f076009da10c6392", size = 157104, upload-time = "2025-08-09T07:56:13.014Z" },
|
|
88
|
+
{ url = "https://files.pythonhosted.org/packages/16/ab/0233c3231af734f5dfcf0844aa9582d5a1466c985bbed6cedab85af9bfe3/charset_normalizer-3.4.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1606f4a55c0fd363d754049cdf400175ee96c992b1f8018b993941f221221c5f", size = 151830, upload-time = "2025-08-09T07:56:14.428Z" },
|
|
89
|
+
{ url = "https://files.pythonhosted.org/packages/ae/02/e29e22b4e02839a0e4a06557b1999d0a47db3567e82989b5bb21f3fbbd9f/charset_normalizer-3.4.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:027b776c26d38b7f15b26a5da1044f376455fb3766df8fc38563b4efbc515154", size = 148854, upload-time = "2025-08-09T07:56:16.051Z" },
|
|
90
|
+
{ url = "https://files.pythonhosted.org/packages/05/6b/e2539a0a4be302b481e8cafb5af8792da8093b486885a1ae4d15d452bcec/charset_normalizer-3.4.3-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:42e5088973e56e31e4fa58eb6bd709e42fc03799c11c42929592889a2e54c491", size = 160670, upload-time = "2025-08-09T07:56:17.314Z" },
|
|
91
|
+
{ url = "https://files.pythonhosted.org/packages/31/e7/883ee5676a2ef217a40ce0bffcc3d0dfbf9e64cbcfbdf822c52981c3304b/charset_normalizer-3.4.3-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:cc34f233c9e71701040d772aa7490318673aa7164a0efe3172b2981218c26d93", size = 158501, upload-time = "2025-08-09T07:56:18.641Z" },
|
|
92
|
+
{ url = "https://files.pythonhosted.org/packages/c1/35/6525b21aa0db614cf8b5792d232021dca3df7f90a1944db934efa5d20bb1/charset_normalizer-3.4.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:320e8e66157cc4e247d9ddca8e21f427efc7a04bbd0ac8a9faf56583fa543f9f", size = 153173, upload-time = "2025-08-09T07:56:20.289Z" },
|
|
93
|
+
{ url = "https://files.pythonhosted.org/packages/50/ee/f4704bad8201de513fdc8aac1cabc87e38c5818c93857140e06e772b5892/charset_normalizer-3.4.3-cp312-cp312-win32.whl", hash = "sha256:fb6fecfd65564f208cbf0fba07f107fb661bcd1a7c389edbced3f7a493f70e37", size = 99822, upload-time = "2025-08-09T07:56:21.551Z" },
|
|
94
|
+
{ url = "https://files.pythonhosted.org/packages/39/f5/3b3836ca6064d0992c58c7561c6b6eee1b3892e9665d650c803bd5614522/charset_normalizer-3.4.3-cp312-cp312-win_amd64.whl", hash = "sha256:86df271bf921c2ee3818f0522e9a5b8092ca2ad8b065ece5d7d9d0e9f4849bcc", size = 107543, upload-time = "2025-08-09T07:56:23.115Z" },
|
|
95
|
+
{ url = "https://files.pythonhosted.org/packages/8a/1f/f041989e93b001bc4e44bb1669ccdcf54d3f00e628229a85b08d330615c5/charset_normalizer-3.4.3-py3-none-any.whl", hash = "sha256:ce571ab16d890d23b5c278547ba694193a45011ff86a9162a71307ed9f86759a", size = 53175, upload-time = "2025-08-09T07:57:26.864Z" },
|
|
96
|
+
]
|
|
97
|
+
|
|
98
|
+
[[package]]
|
|
99
|
+
name = "cryptography"
|
|
100
|
+
version = "45.0.6"
|
|
101
|
+
source = { registry = "https://pypi.org/simple" }
|
|
102
|
+
dependencies = [
|
|
103
|
+
{ name = "cffi", marker = "platform_python_implementation != 'PyPy'" },
|
|
104
|
+
]
|
|
105
|
+
sdist = { url = "https://files.pythonhosted.org/packages/d6/0d/d13399c94234ee8f3df384819dc67e0c5ce215fb751d567a55a1f4b028c7/cryptography-45.0.6.tar.gz", hash = "sha256:5c966c732cf6e4a276ce83b6e4c729edda2df6929083a952cc7da973c539c719", size = 744949, upload-time = "2025-08-05T23:59:27.93Z" }
|
|
106
|
+
wheels = [
|
|
107
|
+
{ url = "https://files.pythonhosted.org/packages/8c/29/2793d178d0eda1ca4a09a7c4e09a5185e75738cc6d526433e8663b460ea6/cryptography-45.0.6-cp311-abi3-macosx_10_9_universal2.whl", hash = "sha256:048e7ad9e08cf4c0ab07ff7f36cc3115924e22e2266e034450a890d9e312dd74", size = 7042702, upload-time = "2025-08-05T23:58:23.464Z" },
|
|
108
|
+
{ url = "https://files.pythonhosted.org/packages/b3/b6/cabd07410f222f32c8d55486c464f432808abaa1f12af9afcbe8f2f19030/cryptography-45.0.6-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:44647c5d796f5fc042bbc6d61307d04bf29bccb74d188f18051b635f20a9c75f", size = 4206483, upload-time = "2025-08-05T23:58:27.132Z" },
|
|
109
|
+
{ url = "https://files.pythonhosted.org/packages/8b/9e/f9c7d36a38b1cfeb1cc74849aabe9bf817990f7603ff6eb485e0d70e0b27/cryptography-45.0.6-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:e40b80ecf35ec265c452eea0ba94c9587ca763e739b8e559c128d23bff7ebbbf", size = 4429679, upload-time = "2025-08-05T23:58:29.152Z" },
|
|
110
|
+
{ url = "https://files.pythonhosted.org/packages/9c/2a/4434c17eb32ef30b254b9e8b9830cee4e516f08b47fdd291c5b1255b8101/cryptography-45.0.6-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:00e8724bdad672d75e6f069b27970883179bd472cd24a63f6e620ca7e41cc0c5", size = 4210553, upload-time = "2025-08-05T23:58:30.596Z" },
|
|
111
|
+
{ url = "https://files.pythonhosted.org/packages/ef/1d/09a5df8e0c4b7970f5d1f3aff1b640df6d4be28a64cae970d56c6cf1c772/cryptography-45.0.6-cp311-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:7a3085d1b319d35296176af31c90338eeb2ddac8104661df79f80e1d9787b8b2", size = 3894499, upload-time = "2025-08-05T23:58:32.03Z" },
|
|
112
|
+
{ url = "https://files.pythonhosted.org/packages/79/62/120842ab20d9150a9d3a6bdc07fe2870384e82f5266d41c53b08a3a96b34/cryptography-45.0.6-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:1b7fa6a1c1188c7ee32e47590d16a5a0646270921f8020efc9a511648e1b2e08", size = 4458484, upload-time = "2025-08-05T23:58:33.526Z" },
|
|
113
|
+
{ url = "https://files.pythonhosted.org/packages/fd/80/1bc3634d45ddfed0871bfba52cf8f1ad724761662a0c792b97a951fb1b30/cryptography-45.0.6-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:275ba5cc0d9e320cd70f8e7b96d9e59903c815ca579ab96c1e37278d231fc402", size = 4210281, upload-time = "2025-08-05T23:58:35.445Z" },
|
|
114
|
+
{ url = "https://files.pythonhosted.org/packages/7d/fe/ffb12c2d83d0ee625f124880a1f023b5878f79da92e64c37962bbbe35f3f/cryptography-45.0.6-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:f4028f29a9f38a2025abedb2e409973709c660d44319c61762202206ed577c42", size = 4456890, upload-time = "2025-08-05T23:58:36.923Z" },
|
|
115
|
+
{ url = "https://files.pythonhosted.org/packages/8c/8e/b3f3fe0dc82c77a0deb5f493b23311e09193f2268b77196ec0f7a36e3f3e/cryptography-45.0.6-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:ee411a1b977f40bd075392c80c10b58025ee5c6b47a822a33c1198598a7a5f05", size = 4333247, upload-time = "2025-08-05T23:58:38.781Z" },
|
|
116
|
+
{ url = "https://files.pythonhosted.org/packages/b3/a6/c3ef2ab9e334da27a1d7b56af4a2417d77e7806b2e0f90d6267ce120d2e4/cryptography-45.0.6-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:e2a21a8eda2d86bb604934b6b37691585bd095c1f788530c1fcefc53a82b3453", size = 4565045, upload-time = "2025-08-05T23:58:40.415Z" },
|
|
117
|
+
{ url = "https://files.pythonhosted.org/packages/31/c3/77722446b13fa71dddd820a5faab4ce6db49e7e0bf8312ef4192a3f78e2f/cryptography-45.0.6-cp311-abi3-win32.whl", hash = "sha256:d063341378d7ee9c91f9d23b431a3502fc8bfacd54ef0a27baa72a0843b29159", size = 2928923, upload-time = "2025-08-05T23:58:41.919Z" },
|
|
118
|
+
{ url = "https://files.pythonhosted.org/packages/38/63/a025c3225188a811b82932a4dcc8457a26c3729d81578ccecbcce2cb784e/cryptography-45.0.6-cp311-abi3-win_amd64.whl", hash = "sha256:833dc32dfc1e39b7376a87b9a6a4288a10aae234631268486558920029b086ec", size = 3403805, upload-time = "2025-08-05T23:58:43.792Z" },
|
|
119
|
+
{ url = "https://files.pythonhosted.org/packages/5b/af/bcfbea93a30809f126d51c074ee0fac5bd9d57d068edf56c2a73abedbea4/cryptography-45.0.6-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:3436128a60a5e5490603ab2adbabc8763613f638513ffa7d311c900a8349a2a0", size = 7020111, upload-time = "2025-08-05T23:58:45.316Z" },
|
|
120
|
+
{ url = "https://files.pythonhosted.org/packages/98/c6/ea5173689e014f1a8470899cd5beeb358e22bb3cf5a876060f9d1ca78af4/cryptography-45.0.6-cp37-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:0d9ef57b6768d9fa58e92f4947cea96ade1233c0e236db22ba44748ffedca394", size = 4198169, upload-time = "2025-08-05T23:58:47.121Z" },
|
|
121
|
+
{ url = "https://files.pythonhosted.org/packages/ba/73/b12995edc0c7e2311ffb57ebd3b351f6b268fed37d93bfc6f9856e01c473/cryptography-45.0.6-cp37-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:ea3c42f2016a5bbf71825537c2ad753f2870191134933196bee408aac397b3d9", size = 4421273, upload-time = "2025-08-05T23:58:48.557Z" },
|
|
122
|
+
{ url = "https://files.pythonhosted.org/packages/f7/6e/286894f6f71926bc0da67408c853dd9ba953f662dcb70993a59fd499f111/cryptography-45.0.6-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:20ae4906a13716139d6d762ceb3e0e7e110f7955f3bc3876e3a07f5daadec5f3", size = 4199211, upload-time = "2025-08-05T23:58:50.139Z" },
|
|
123
|
+
{ url = "https://files.pythonhosted.org/packages/de/34/a7f55e39b9623c5cb571d77a6a90387fe557908ffc44f6872f26ca8ae270/cryptography-45.0.6-cp37-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:2dac5ec199038b8e131365e2324c03d20e97fe214af051d20c49db129844e8b3", size = 3883732, upload-time = "2025-08-05T23:58:52.253Z" },
|
|
124
|
+
{ url = "https://files.pythonhosted.org/packages/f9/b9/c6d32edbcba0cd9f5df90f29ed46a65c4631c4fbe11187feb9169c6ff506/cryptography-45.0.6-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:18f878a34b90d688982e43f4b700408b478102dd58b3e39de21b5ebf6509c301", size = 4450655, upload-time = "2025-08-05T23:58:53.848Z" },
|
|
125
|
+
{ url = "https://files.pythonhosted.org/packages/77/2d/09b097adfdee0227cfd4c699b3375a842080f065bab9014248933497c3f9/cryptography-45.0.6-cp37-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:5bd6020c80c5b2b2242d6c48487d7b85700f5e0038e67b29d706f98440d66eb5", size = 4198956, upload-time = "2025-08-05T23:58:55.209Z" },
|
|
126
|
+
{ url = "https://files.pythonhosted.org/packages/55/66/061ec6689207d54effdff535bbdf85cc380d32dd5377173085812565cf38/cryptography-45.0.6-cp37-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:eccddbd986e43014263eda489abbddfbc287af5cddfd690477993dbb31e31016", size = 4449859, upload-time = "2025-08-05T23:58:56.639Z" },
|
|
127
|
+
{ url = "https://files.pythonhosted.org/packages/41/ff/e7d5a2ad2d035e5a2af116e1a3adb4d8fcd0be92a18032917a089c6e5028/cryptography-45.0.6-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:550ae02148206beb722cfe4ef0933f9352bab26b087af00e48fdfb9ade35c5b3", size = 4320254, upload-time = "2025-08-05T23:58:58.833Z" },
|
|
128
|
+
{ url = "https://files.pythonhosted.org/packages/82/27/092d311af22095d288f4db89fcaebadfb2f28944f3d790a4cf51fe5ddaeb/cryptography-45.0.6-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:5b64e668fc3528e77efa51ca70fadcd6610e8ab231e3e06ae2bab3b31c2b8ed9", size = 4554815, upload-time = "2025-08-05T23:59:00.283Z" },
|
|
129
|
+
{ url = "https://files.pythonhosted.org/packages/7e/01/aa2f4940262d588a8fdf4edabe4cda45854d00ebc6eaac12568b3a491a16/cryptography-45.0.6-cp37-abi3-win32.whl", hash = "sha256:780c40fb751c7d2b0c6786ceee6b6f871e86e8718a8ff4bc35073ac353c7cd02", size = 2912147, upload-time = "2025-08-05T23:59:01.716Z" },
|
|
130
|
+
{ url = "https://files.pythonhosted.org/packages/0a/bc/16e0276078c2de3ceef6b5a34b965f4436215efac45313df90d55f0ba2d2/cryptography-45.0.6-cp37-abi3-win_amd64.whl", hash = "sha256:20d15aed3ee522faac1a39fbfdfee25d17b1284bafd808e1640a74846d7c4d1b", size = 3390459, upload-time = "2025-08-05T23:59:03.358Z" },
|
|
131
|
+
]
|
|
132
|
+
|
|
133
|
+
[[package]]
|
|
134
|
+
name = "idna"
|
|
135
|
+
version = "3.10"
|
|
136
|
+
source = { registry = "https://pypi.org/simple" }
|
|
137
|
+
sdist = { url = "https://files.pythonhosted.org/packages/f1/70/7703c29685631f5a7590aa73f1f1d3fa9a380e654b86af429e0934a32f7d/idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9", size = 190490, upload-time = "2024-09-15T18:07:39.745Z" }
|
|
138
|
+
wheels = [
|
|
139
|
+
{ url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3", size = 70442, upload-time = "2024-09-15T18:07:37.964Z" },
|
|
140
|
+
]
|
|
141
|
+
|
|
142
|
+
[[package]]
|
|
143
|
+
name = "pycparser"
|
|
144
|
+
version = "2.22"
|
|
145
|
+
source = { registry = "https://pypi.org/simple" }
|
|
146
|
+
sdist = { url = "https://files.pythonhosted.org/packages/1d/b2/31537cf4b1ca988837256c910a668b553fceb8f069bedc4b1c826024b52c/pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6", size = 172736, upload-time = "2024-03-30T13:22:22.564Z" }
|
|
147
|
+
wheels = [
|
|
148
|
+
{ url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc", size = 117552, upload-time = "2024-03-30T13:22:20.476Z" },
|
|
149
|
+
]
|
|
150
|
+
|
|
151
|
+
[[package]]
|
|
152
|
+
name = "pygithub"
|
|
153
|
+
version = "2.7.0"
|
|
154
|
+
source = { registry = "https://pypi.org/simple" }
|
|
155
|
+
dependencies = [
|
|
156
|
+
{ name = "pyjwt", extra = ["crypto"] },
|
|
157
|
+
{ name = "pynacl" },
|
|
158
|
+
{ name = "requests" },
|
|
159
|
+
{ name = "typing-extensions" },
|
|
160
|
+
{ name = "urllib3" },
|
|
161
|
+
]
|
|
162
|
+
sdist = { url = "https://files.pythonhosted.org/packages/6a/a7/403e04aa96e2d94e1518d518d69718c2ba978c8d3ffa4ab3b101b94dbafa/pygithub-2.7.0.tar.gz", hash = "sha256:7cd6eafabb09b5369afba3586d86b1f1ad6f1326d2ff01bc47bb26615dce4cbb", size = 3707928, upload-time = "2025-07-31T11:52:53.714Z" }
|
|
163
|
+
wheels = [
|
|
164
|
+
{ url = "https://files.pythonhosted.org/packages/57/76/d768dd31322173b3956692b75471ac37bf3759c7abb603152f6a9b6594a8/pygithub-2.7.0-py3-none-any.whl", hash = "sha256:40ecbfe26dc55cc34ab4b0ffa1d455e6f816ef9a2bc8d6f5ad18ce572f163700", size = 416514, upload-time = "2025-07-31T11:52:51.909Z" },
|
|
165
|
+
]
|
|
166
|
+
|
|
167
|
+
[[package]]
|
|
168
|
+
name = "pyjwt"
|
|
169
|
+
version = "2.10.1"
|
|
170
|
+
source = { registry = "https://pypi.org/simple" }
|
|
171
|
+
sdist = { url = "https://files.pythonhosted.org/packages/e7/46/bd74733ff231675599650d3e47f361794b22ef3e3770998dda30d3b63726/pyjwt-2.10.1.tar.gz", hash = "sha256:3cc5772eb20009233caf06e9d8a0577824723b44e6648ee0a2aedb6cf9381953", size = 87785, upload-time = "2024-11-28T03:43:29.933Z" }
|
|
172
|
+
wheels = [
|
|
173
|
+
{ url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl", hash = "sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb", size = 22997, upload-time = "2024-11-28T03:43:27.893Z" },
|
|
174
|
+
]
|
|
175
|
+
|
|
176
|
+
[package.optional-dependencies]
|
|
177
|
+
crypto = [
|
|
178
|
+
{ name = "cryptography" },
|
|
179
|
+
]
|
|
180
|
+
|
|
181
|
+
[[package]]
|
|
182
|
+
name = "pynacl"
|
|
183
|
+
version = "1.5.0"
|
|
184
|
+
source = { registry = "https://pypi.org/simple" }
|
|
185
|
+
dependencies = [
|
|
186
|
+
{ name = "cffi" },
|
|
187
|
+
]
|
|
188
|
+
sdist = { url = "https://files.pythonhosted.org/packages/a7/22/27582568be639dfe22ddb3902225f91f2f17ceff88ce80e4db396c8986da/PyNaCl-1.5.0.tar.gz", hash = "sha256:8ac7448f09ab85811607bdd21ec2464495ac8b7c66d146bf545b0f08fb9220ba", size = 3392854, upload-time = "2022-01-07T22:05:41.134Z" }
|
|
189
|
+
wheels = [
|
|
190
|
+
{ url = "https://files.pythonhosted.org/packages/ce/75/0b8ede18506041c0bf23ac4d8e2971b4161cd6ce630b177d0a08eb0d8857/PyNaCl-1.5.0-cp36-abi3-macosx_10_10_universal2.whl", hash = "sha256:401002a4aaa07c9414132aaed7f6836ff98f59277a234704ff66878c2ee4a0d1", size = 349920, upload-time = "2022-01-07T22:05:49.156Z" },
|
|
191
|
+
{ url = "https://files.pythonhosted.org/packages/59/bb/fddf10acd09637327a97ef89d2a9d621328850a72f1fdc8c08bdf72e385f/PyNaCl-1.5.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:52cb72a79269189d4e0dc537556f4740f7f0a9ec41c1322598799b0bdad4ef92", size = 601722, upload-time = "2022-01-07T22:05:50.989Z" },
|
|
192
|
+
{ url = "https://files.pythonhosted.org/packages/5d/70/87a065c37cca41a75f2ce113a5a2c2aa7533be648b184ade58971b5f7ccc/PyNaCl-1.5.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a36d4a9dda1f19ce6e03c9a784a2921a4b726b02e1c736600ca9c22029474394", size = 680087, upload-time = "2022-01-07T22:05:52.539Z" },
|
|
193
|
+
{ url = "https://files.pythonhosted.org/packages/ee/87/f1bb6a595f14a327e8285b9eb54d41fef76c585a0edef0a45f6fc95de125/PyNaCl-1.5.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:0c84947a22519e013607c9be43706dd42513f9e6ae5d39d3613ca1e142fba44d", size = 856678, upload-time = "2022-01-07T22:05:54.251Z" },
|
|
194
|
+
{ url = "https://files.pythonhosted.org/packages/66/28/ca86676b69bf9f90e710571b67450508484388bfce09acf8a46f0b8c785f/PyNaCl-1.5.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:06b8f6fa7f5de8d5d2f7573fe8c863c051225a27b61e6860fd047b1775807858", size = 1133660, upload-time = "2022-01-07T22:05:56.056Z" },
|
|
195
|
+
{ url = "https://files.pythonhosted.org/packages/3d/85/c262db650e86812585e2bc59e497a8f59948a005325a11bbbc9ecd3fe26b/PyNaCl-1.5.0-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:a422368fc821589c228f4c49438a368831cb5bbc0eab5ebe1d7fac9dded6567b", size = 663824, upload-time = "2022-01-07T22:05:57.434Z" },
|
|
196
|
+
{ url = "https://files.pythonhosted.org/packages/fd/1a/cc308a884bd299b651f1633acb978e8596c71c33ca85e9dc9fa33a5399b9/PyNaCl-1.5.0-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:61f642bf2378713e2c2e1de73444a3778e5f0a38be6fee0fe532fe30060282ff", size = 1117912, upload-time = "2022-01-07T22:05:58.665Z" },
|
|
197
|
+
{ url = "https://files.pythonhosted.org/packages/25/2d/b7df6ddb0c2a33afdb358f8af6ea3b8c4d1196ca45497dd37a56f0c122be/PyNaCl-1.5.0-cp36-abi3-win32.whl", hash = "sha256:e46dae94e34b085175f8abb3b0aaa7da40767865ac82c928eeb9e57e1ea8a543", size = 204624, upload-time = "2022-01-07T22:06:00.085Z" },
|
|
198
|
+
{ url = "https://files.pythonhosted.org/packages/5e/22/d3db169895faaf3e2eda892f005f433a62db2decbcfbc2f61e6517adfa87/PyNaCl-1.5.0-cp36-abi3-win_amd64.whl", hash = "sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93", size = 212141, upload-time = "2022-01-07T22:06:01.861Z" },
|
|
199
|
+
]
|
|
200
|
+
|
|
201
|
+
[[package]]
|
|
202
|
+
name = "requests"
|
|
203
|
+
version = "2.32.5"
|
|
204
|
+
source = { registry = "https://pypi.org/simple" }
|
|
205
|
+
dependencies = [
|
|
206
|
+
{ name = "certifi" },
|
|
207
|
+
{ name = "charset-normalizer" },
|
|
208
|
+
{ name = "idna" },
|
|
209
|
+
{ name = "urllib3" },
|
|
210
|
+
]
|
|
211
|
+
sdist = { url = "https://files.pythonhosted.org/packages/c9/74/b3ff8e6c8446842c3f5c837e9c3dfcfe2018ea6ecef224c710c85ef728f4/requests-2.32.5.tar.gz", hash = "sha256:dbba0bac56e100853db0ea71b82b4dfd5fe2bf6d3754a8893c3af500cec7d7cf", size = 134517, upload-time = "2025-08-18T20:46:02.573Z" }
|
|
212
|
+
wheels = [
|
|
213
|
+
{ url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl", hash = "sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6", size = 64738, upload-time = "2025-08-18T20:46:00.542Z" },
|
|
214
|
+
]
|
|
215
|
+
|
|
216
|
+
[[package]]
|
|
217
|
+
name = "ruamel-yaml"
|
|
218
|
+
version = "0.18.15"
|
|
219
|
+
source = { registry = "https://pypi.org/simple" }
|
|
220
|
+
dependencies = [
|
|
221
|
+
{ name = "ruamel-yaml-clib", marker = "platform_python_implementation == 'CPython'" },
|
|
222
|
+
]
|
|
223
|
+
sdist = { url = "https://files.pythonhosted.org/packages/3e/db/f3950f5e5031b618aae9f423a39bf81a55c148aecd15a34527898e752cf4/ruamel.yaml-0.18.15.tar.gz", hash = "sha256:dbfca74b018c4c3fba0b9cc9ee33e53c371194a9000e694995e620490fd40700", size = 146865, upload-time = "2025-08-19T11:15:10.694Z" }
|
|
224
|
+
wheels = [
|
|
225
|
+
{ url = "https://files.pythonhosted.org/packages/d1/e5/f2a0621f1781b76a38194acae72f01e37b1941470407345b6e8653ad7640/ruamel.yaml-0.18.15-py3-none-any.whl", hash = "sha256:148f6488d698b7a5eded5ea793a025308b25eca97208181b6a026037f391f701", size = 119702, upload-time = "2025-08-19T11:15:07.696Z" },
|
|
226
|
+
]
|
|
227
|
+
|
|
228
|
+
[[package]]
|
|
229
|
+
name = "ruamel-yaml-clib"
|
|
230
|
+
version = "0.2.12"
|
|
231
|
+
source = { registry = "https://pypi.org/simple" }
|
|
232
|
+
sdist = { url = "https://files.pythonhosted.org/packages/20/84/80203abff8ea4993a87d823a5f632e4d92831ef75d404c9fc78d0176d2b5/ruamel.yaml.clib-0.2.12.tar.gz", hash = "sha256:6c8fbb13ec503f99a91901ab46e0b07ae7941cd527393187039aec586fdfd36f", size = 225315, upload-time = "2024-10-20T10:10:56.22Z" }
|
|
233
|
+
wheels = [
|
|
234
|
+
{ url = "https://files.pythonhosted.org/packages/48/41/e7a405afbdc26af961678474a55373e1b323605a4f5e2ddd4a80ea80f628/ruamel.yaml.clib-0.2.12-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:20b0f8dc160ba83b6dcc0e256846e1a02d044e13f7ea74a3d1d56ede4e48c632", size = 133433, upload-time = "2024-10-20T10:12:55.657Z" },
|
|
235
|
+
{ url = "https://files.pythonhosted.org/packages/ec/b0/b850385604334c2ce90e3ee1013bd911aedf058a934905863a6ea95e9eb4/ruamel.yaml.clib-0.2.12-cp312-cp312-manylinux2014_aarch64.whl", hash = "sha256:943f32bc9dedb3abff9879edc134901df92cfce2c3d5c9348f172f62eb2d771d", size = 647362, upload-time = "2024-10-20T10:12:57.155Z" },
|
|
236
|
+
{ url = "https://files.pythonhosted.org/packages/44/d0/3f68a86e006448fb6c005aee66565b9eb89014a70c491d70c08de597f8e4/ruamel.yaml.clib-0.2.12-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95c3829bb364fdb8e0332c9931ecf57d9be3519241323c5274bd82f709cebc0c", size = 754118, upload-time = "2024-10-20T10:12:58.501Z" },
|
|
237
|
+
{ url = "https://files.pythonhosted.org/packages/52/a9/d39f3c5ada0a3bb2870d7db41901125dbe2434fa4f12ca8c5b83a42d7c53/ruamel.yaml.clib-0.2.12-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:749c16fcc4a2b09f28843cda5a193e0283e47454b63ec4b81eaa2242f50e4ccd", size = 706497, upload-time = "2024-10-20T10:13:00.211Z" },
|
|
238
|
+
{ url = "https://files.pythonhosted.org/packages/b0/fa/097e38135dadd9ac25aecf2a54be17ddf6e4c23e43d538492a90ab3d71c6/ruamel.yaml.clib-0.2.12-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bf165fef1f223beae7333275156ab2022cffe255dcc51c27f066b4370da81e31", size = 698042, upload-time = "2024-10-21T11:26:46.038Z" },
|
|
239
|
+
{ url = "https://files.pythonhosted.org/packages/ec/d5/a659ca6f503b9379b930f13bc6b130c9f176469b73b9834296822a83a132/ruamel.yaml.clib-0.2.12-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:32621c177bbf782ca5a18ba4d7af0f1082a3f6e517ac2a18b3974d4edf349680", size = 745831, upload-time = "2024-10-21T11:26:47.487Z" },
|
|
240
|
+
{ url = "https://files.pythonhosted.org/packages/db/5d/36619b61ffa2429eeaefaab4f3374666adf36ad8ac6330d855848d7d36fd/ruamel.yaml.clib-0.2.12-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:b82a7c94a498853aa0b272fd5bc67f29008da798d4f93a2f9f289feb8426a58d", size = 715692, upload-time = "2024-12-11T19:58:17.252Z" },
|
|
241
|
+
{ url = "https://files.pythonhosted.org/packages/b1/82/85cb92f15a4231c89b95dfe08b09eb6adca929ef7df7e17ab59902b6f589/ruamel.yaml.clib-0.2.12-cp312-cp312-win32.whl", hash = "sha256:e8c4ebfcfd57177b572e2040777b8abc537cdef58a2120e830124946aa9b42c5", size = 98777, upload-time = "2024-10-20T10:13:01.395Z" },
|
|
242
|
+
{ url = "https://files.pythonhosted.org/packages/d7/8f/c3654f6f1ddb75daf3922c3d8fc6005b1ab56671ad56ffb874d908bfa668/ruamel.yaml.clib-0.2.12-cp312-cp312-win_amd64.whl", hash = "sha256:0467c5965282c62203273b838ae77c0d29d7638c8a4e3a1c8bdd3602c10904e4", size = 115523, upload-time = "2024-10-20T10:13:02.768Z" },
|
|
243
|
+
]
|
|
244
|
+
|
|
245
|
+
[[package]]
|
|
246
|
+
name = "toml"
|
|
247
|
+
version = "0.10.2"
|
|
248
|
+
source = { registry = "https://pypi.org/simple" }
|
|
249
|
+
sdist = { url = "https://files.pythonhosted.org/packages/be/ba/1f744cdc819428fc6b5084ec34d9b30660f6f9daaf70eead706e3203ec3c/toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f", size = 22253, upload-time = "2020-11-01T01:40:22.204Z" }
|
|
250
|
+
wheels = [
|
|
251
|
+
{ url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b", size = 16588, upload-time = "2020-11-01T01:40:20.672Z" },
|
|
252
|
+
]
|
|
253
|
+
|
|
254
|
+
[[package]]
|
|
255
|
+
name = "typing-extensions"
|
|
256
|
+
version = "4.15.0"
|
|
257
|
+
source = { registry = "https://pypi.org/simple" }
|
|
258
|
+
sdist = { url = "https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz", hash = "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466", size = 109391, upload-time = "2025-08-25T13:49:26.313Z" }
|
|
259
|
+
wheels = [
|
|
260
|
+
{ url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl", hash = "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548", size = 44614, upload-time = "2025-08-25T13:49:24.86Z" },
|
|
261
|
+
]
|
|
262
|
+
|
|
263
|
+
[[package]]
|
|
264
|
+
name = "urllib3"
|
|
265
|
+
version = "2.5.0"
|
|
266
|
+
source = { registry = "https://pypi.org/simple" }
|
|
267
|
+
sdist = { url = "https://files.pythonhosted.org/packages/15/22/9ee70a2574a4f4599c47dd506532914ce044817c7752a79b6a51286319bc/urllib3-2.5.0.tar.gz", hash = "sha256:3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760", size = 393185, upload-time = "2025-06-18T14:07:41.644Z" }
|
|
268
|
+
wheels = [
|
|
269
|
+
{ url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl", hash = "sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc", size = 129795, upload-time = "2025-06-18T14:07:40.39Z" },
|
|
270
|
+
]
|
|
271
|
+
|
|
272
|
+
[[package]]
|
|
273
|
+
name = "uv-bump"
|
|
274
|
+
version = "0.2.0"
|
|
275
|
+
source = { registry = "https://pypi.org/simple" }
|
|
276
|
+
sdist = { url = "https://files.pythonhosted.org/packages/6f/83/9d12d51d5f35ce68e16a8c5817c83175441792cc23dcc07f7764b9e21683/uv_bump-0.2.0.tar.gz", hash = "sha256:c1688ed035884b0cca5f0fd0ca8716f61aab320a2313a4ac1dc83b8e1b1f5e55", size = 4571, upload-time = "2025-07-19T08:15:23.3Z" }
|
|
277
|
+
wheels = [
|
|
278
|
+
{ url = "https://files.pythonhosted.org/packages/a8/a2/8096354e31d829b556b15f9aff9138deb9748799a63d240072e73611aba0/uv_bump-0.2.0-py3-none-any.whl", hash = "sha256:128b8d3f8597ed3905e08329d032e5dbced2776a8f0c95139fcb6f253fca527b", size = 5874, upload-time = "2025-07-19T08:15:22.357Z" },
|
|
279
|
+
]
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "2024.8.1"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.0.0"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.0.0"
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
[tool.poetry]
|
|
2
|
-
authors = ["James Smith <james@smithjw.me>"]
|
|
3
|
-
description = "A package used to execute some autopkg functions, primarily within the context of a GitHub Actions runner."
|
|
4
|
-
license = "BSD-3-Clause"
|
|
5
|
-
name = "autopkg-wrapper"
|
|
6
|
-
readme = "README.md"
|
|
7
|
-
repository = "https://github.com/smithjw/autopkg-wrapper"
|
|
8
|
-
version = "2024.8.1"
|
|
9
|
-
|
|
10
|
-
[tool.poetry.scripts]
|
|
11
|
-
# When built and installed by pip, the command autopkg_wrapper will be availble in to run within that environment
|
|
12
|
-
autopkg_wrapper = "autopkg_wrapper.autopkg_wrapper:main"
|
|
13
|
-
|
|
14
|
-
[tool.poetry.dependencies]
|
|
15
|
-
chardet = ">=5"
|
|
16
|
-
idna = ">=3"
|
|
17
|
-
pygithub = ">=2"
|
|
18
|
-
python = "^3.12"
|
|
19
|
-
requests = ">=2"
|
|
20
|
-
ruamel-yaml = ">=0.18"
|
|
21
|
-
toml = ">=0.10"
|
|
22
|
-
urllib3 = ">=2"
|
|
23
|
-
|
|
24
|
-
[tool.poetry_bumpversion.file."autopkg_wrapper/__init__.py"]
|
|
25
|
-
|
|
26
|
-
[build-system]
|
|
27
|
-
build-backend = "poetry.core.masonry.api"
|
|
28
|
-
requires = ["poetry-core"]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|