splunk-downloader 0.2.0__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.
- splunk_downloader-0.2.0/.github/dependabot.yml +17 -0
- splunk_downloader-0.2.0/.github/workflows/dependabot_auto_merge.yml +40 -0
- splunk_downloader-0.2.0/.github/workflows/dependency_review.yml +18 -0
- splunk_downloader-0.2.0/.github/workflows/mypy.yml +25 -0
- splunk_downloader-0.2.0/.github/workflows/pylint.yml +25 -0
- splunk_downloader-0.2.0/.github/workflows/pytest.yml +25 -0
- splunk_downloader-0.2.0/.gitignore +17 -0
- splunk_downloader-0.2.0/CODEOWNERS +2 -0
- splunk_downloader-0.2.0/PKG-INFO +44 -0
- splunk_downloader-0.2.0/README.md +29 -0
- splunk_downloader-0.2.0/SECURITY.MD +9 -0
- splunk_downloader-0.2.0/htmlcov/.gitignore +2 -0
- splunk_downloader-0.2.0/htmlcov/coverage_html_cb_6fb7b396.js +733 -0
- splunk_downloader-0.2.0/htmlcov/favicon_32_cb_58284776.png +0 -0
- splunk_downloader-0.2.0/htmlcov/keybd_closed_cb_ce680311.png +0 -0
- splunk_downloader-0.2.0/htmlcov/status.json +1 -0
- splunk_downloader-0.2.0/htmlcov/style_cb_8e611ae1.css +337 -0
- splunk_downloader-0.2.0/justfile +16 -0
- splunk_downloader-0.2.0/pyproject.toml +56 -0
- splunk_downloader-0.2.0/splunk_downloader/__init__.py +345 -0
- splunk_downloader-0.2.0/splunk_downloader/__main__.py +15 -0
- splunk_downloader-0.2.0/splunk_downloader/constants.py +24 -0
- splunk_downloader-0.2.0/tests/test_other.py +45 -0
- splunk_downloader-0.2.0/tests/test_script_runs.py +14 -0
- splunk_downloader-0.2.0/tests/test_version_parser.py +47 -0
- splunk_downloader-0.2.0/uv.lock +425 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: 2
|
|
3
|
+
updates:
|
|
4
|
+
- package-ecosystem: pip
|
|
5
|
+
directory: /
|
|
6
|
+
schedule:
|
|
7
|
+
interval: weekly
|
|
8
|
+
day: saturday
|
|
9
|
+
time: "02:00"
|
|
10
|
+
timezone: "Australia/Brisbane"
|
|
11
|
+
- package-ecosystem: github-actions
|
|
12
|
+
directory: /
|
|
13
|
+
schedule:
|
|
14
|
+
interval: weekly
|
|
15
|
+
day: saturday
|
|
16
|
+
time: "02:00"
|
|
17
|
+
timezone: "Australia/Brisbane"
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
---
|
|
2
|
+
# yamllint disable rule:line-length
|
|
3
|
+
name: Dependabot auto-approval and auto-merge
|
|
4
|
+
"on": pull_request
|
|
5
|
+
|
|
6
|
+
permissions:
|
|
7
|
+
contents: write
|
|
8
|
+
pull-requests: write
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
dependabot:
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
# limit this to PRs opened by dependabot
|
|
14
|
+
if: ${{ github.actor == 'dependabot[bot]' }}
|
|
15
|
+
steps:
|
|
16
|
+
- name: Dependabot metadata
|
|
17
|
+
id: metadata
|
|
18
|
+
uses: dependabot/fetch-metadata@v2
|
|
19
|
+
with:
|
|
20
|
+
github-token: "${{ secrets.GITHUB_TOKEN }}"
|
|
21
|
+
alert-lookup: true
|
|
22
|
+
compat-lookup: true
|
|
23
|
+
- uses: actions/checkout@v4
|
|
24
|
+
- name: Approve a PR if not already approved
|
|
25
|
+
|
|
26
|
+
run: |
|
|
27
|
+
# sets the upstream metadata for `gh pr status`
|
|
28
|
+
gh pr checkout "$PR_URL"
|
|
29
|
+
if [ "$(gh pr status --json reviewDecision -q .currentBranch.reviewDecision)" != "APPROVED" ];
|
|
30
|
+
then gh pr review --approve "$PR_URL"
|
|
31
|
+
else echo "PR already approved, skipping additional approvals to minimize emails/notification noise.";
|
|
32
|
+
fi
|
|
33
|
+
env:
|
|
34
|
+
PR_URL: ${{github.event.pull_request.html_url}}
|
|
35
|
+
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
|
|
36
|
+
- name: Enable auto-merge for Dependabot PRs
|
|
37
|
+
run: gh pr merge --auto --squash "$PR_URL"
|
|
38
|
+
env:
|
|
39
|
+
PR_URL: ${{github.event.pull_request.html_url}}
|
|
40
|
+
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 'Dependency Review'
|
|
3
|
+
"on":
|
|
4
|
+
pull_request:
|
|
5
|
+
|
|
6
|
+
# https://github.com/actions/dependency-review-action
|
|
7
|
+
|
|
8
|
+
permissions:
|
|
9
|
+
contents: read
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
dependency-review:
|
|
13
|
+
runs-on: ubuntu-latest
|
|
14
|
+
steps:
|
|
15
|
+
- name: 'Checkout Repository'
|
|
16
|
+
uses: actions/checkout@v4
|
|
17
|
+
- name: 'Dependency Review'
|
|
18
|
+
uses: actions/dependency-review-action@v4
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mypy
|
|
3
|
+
|
|
4
|
+
"on":
|
|
5
|
+
push:
|
|
6
|
+
branches:
|
|
7
|
+
- main # Set a branch to deploy
|
|
8
|
+
pull_request:
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
mypy:
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v4
|
|
15
|
+
with:
|
|
16
|
+
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
|
|
17
|
+
- name: Set up Python 3.12
|
|
18
|
+
uses: actions/setup-python@v5
|
|
19
|
+
with:
|
|
20
|
+
python-version: '3.12'
|
|
21
|
+
- name: Running mypy
|
|
22
|
+
run: |
|
|
23
|
+
python --version
|
|
24
|
+
python -m pip install --quiet --no-cache-dir --upgrade uv
|
|
25
|
+
uv run mypy $(basename $(pwd) | sed -E 's/-/_/g') tests/
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Python Linting
|
|
3
|
+
|
|
4
|
+
"on":
|
|
5
|
+
push:
|
|
6
|
+
branches:
|
|
7
|
+
- main # Set a branch to deploy
|
|
8
|
+
pull_request:
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
python_linting:
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v4
|
|
15
|
+
with:
|
|
16
|
+
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
|
|
17
|
+
- name: Set up Python 3.12
|
|
18
|
+
uses: actions/setup-python@v5
|
|
19
|
+
with:
|
|
20
|
+
python-version: '3.12'
|
|
21
|
+
- name: Running tests
|
|
22
|
+
run: |
|
|
23
|
+
python --version
|
|
24
|
+
python -m pip install --quiet --no-cache-dir --upgrade uv
|
|
25
|
+
uv run ruff check $(basename $(pwd) | sed -E 's/-/_/g') tests/
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pytest
|
|
3
|
+
|
|
4
|
+
"on":
|
|
5
|
+
push:
|
|
6
|
+
branches:
|
|
7
|
+
- main # Set a branch to deploy
|
|
8
|
+
pull_request:
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
pytest:
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v4
|
|
15
|
+
with:
|
|
16
|
+
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
|
|
17
|
+
- name: Set up Python 3.12
|
|
18
|
+
uses: actions/setup-python@v5
|
|
19
|
+
with:
|
|
20
|
+
python-version: '3.12'
|
|
21
|
+
- name: Running pytest
|
|
22
|
+
run: |
|
|
23
|
+
python --version
|
|
24
|
+
python -m pip install --quiet --no-cache-dir --upgrade uv
|
|
25
|
+
uv run python -m pytest
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: splunk-downloader
|
|
3
|
+
Version: 0.2.0
|
|
4
|
+
Summary: Download your Splunk binaries with this quick tool.
|
|
5
|
+
Author-email: James Hodgkinson <james@terminaloutcomes.com>
|
|
6
|
+
License: MIT
|
|
7
|
+
Requires-Python: >=3.12
|
|
8
|
+
Requires-Dist: beautifulsoup4>=4.12.3
|
|
9
|
+
Requires-Dist: click>=8.1.7
|
|
10
|
+
Requires-Dist: loguru>=0.7.2
|
|
11
|
+
Requires-Dist: packaging>=24.1
|
|
12
|
+
Requires-Dist: pydantic>=2.9.1
|
|
13
|
+
Requires-Dist: requests>=2.32.3
|
|
14
|
+
Description-Content-Type: text/markdown
|
|
15
|
+
|
|
16
|
+
# splunk-downloader
|
|
17
|
+
|
|
18
|
+
A little script to help download Splunk installers. You really should agree to the download terms if you're going to use this, just sayin'.
|
|
19
|
+
|
|
20
|
+
```text
|
|
21
|
+
Usage: splunk-downloader [OPTIONS] {enterprise|forwarder}
|
|
22
|
+
|
|
23
|
+
Application needs to be either forwarder or enterprise.
|
|
24
|
+
|
|
25
|
+
Options:
|
|
26
|
+
--cached Use a locally cached version of the source
|
|
27
|
+
data.
|
|
28
|
+
-a, --arch TEXT CPU Architecture filter - based on filename
|
|
29
|
+
which is messy
|
|
30
|
+
-d, --debug Enable debug mode
|
|
31
|
+
-D, --download Prompt to download to the local directory
|
|
32
|
+
-v, --version TEXT Version to match, is used as a <version>*
|
|
33
|
+
wildcard, if not included will list them
|
|
34
|
+
all.
|
|
35
|
+
-o, --os [windows|linux|solaris|osx|freebsd|aix]
|
|
36
|
+
OS string to match, valid options for
|
|
37
|
+
Enterprise: (linux|windows|osx), Forwarder:
|
|
38
|
+
(windows|linux|solaris|osx|freebsd|aix)
|
|
39
|
+
-t, --type [deb|dmg|msi|p5p|pkg.Z|rpm|tgz|txz|tar.Z|zip]
|
|
40
|
+
Package type to match.
|
|
41
|
+
-l, --latest Show only the latest version for any given
|
|
42
|
+
os/package/arch combination.
|
|
43
|
+
--help Show this message and exit.
|
|
44
|
+
```
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# splunk-downloader
|
|
2
|
+
|
|
3
|
+
A little script to help download Splunk installers. You really should agree to the download terms if you're going to use this, just sayin'.
|
|
4
|
+
|
|
5
|
+
```text
|
|
6
|
+
Usage: splunk-downloader [OPTIONS] {enterprise|forwarder}
|
|
7
|
+
|
|
8
|
+
Application needs to be either forwarder or enterprise.
|
|
9
|
+
|
|
10
|
+
Options:
|
|
11
|
+
--cached Use a locally cached version of the source
|
|
12
|
+
data.
|
|
13
|
+
-a, --arch TEXT CPU Architecture filter - based on filename
|
|
14
|
+
which is messy
|
|
15
|
+
-d, --debug Enable debug mode
|
|
16
|
+
-D, --download Prompt to download to the local directory
|
|
17
|
+
-v, --version TEXT Version to match, is used as a <version>*
|
|
18
|
+
wildcard, if not included will list them
|
|
19
|
+
all.
|
|
20
|
+
-o, --os [windows|linux|solaris|osx|freebsd|aix]
|
|
21
|
+
OS string to match, valid options for
|
|
22
|
+
Enterprise: (linux|windows|osx), Forwarder:
|
|
23
|
+
(windows|linux|solaris|osx|freebsd|aix)
|
|
24
|
+
-t, --type [deb|dmg|msi|p5p|pkg.Z|rpm|tgz|txz|tar.Z|zip]
|
|
25
|
+
Package type to match.
|
|
26
|
+
-l, --latest Show only the latest version for any given
|
|
27
|
+
os/package/arch combination.
|
|
28
|
+
--help Show this message and exit.
|
|
29
|
+
```
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Security Policy
|
|
2
|
+
|
|
3
|
+
## Supported Versions
|
|
4
|
+
|
|
5
|
+
Only the latest released version is supported - if a major issue appears, old ones will be considered for patching, or yanked.
|
|
6
|
+
|
|
7
|
+
## Reporting a Vulnerability
|
|
8
|
+
|
|
9
|
+
Please contact me via email at <mailto:james+splunk-downloader@terminaloutcomes.com>
|