socketsecurity 2.2.79__tar.gz → 2.2.80__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.
- socketsecurity-2.2.80/.github/workflows/docker-stable.yml +51 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.github/workflows/e2e-test.yml +6 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.github/workflows/pr-preview.yml +1 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.github/workflows/release.yml +7 -4
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.github/workflows/version-check.yml +6 -0
- socketsecurity-2.2.80/.github/zizmor.yml +3 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/PKG-INFO +20 -20
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/README.md +19 -19
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/pyproject.toml +1 -1
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/__init__.py +1 -1
- socketsecurity-2.2.79/.github/workflows/docker-stable.yml +0 -44
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.github/CODEOWNERS +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.github/PULL_REQUEST_TEMPLATE/bug-fix.md +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.github/PULL_REQUEST_TEMPLATE/feature.md +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.github/PULL_REQUEST_TEMPLATE/improvement.md +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.github/workflows/python-tests.yml +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.gitignore +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.hooks/sync_version.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.pre-commit-config.yaml +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/.python-version +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/CHANGELOG.md +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/Dockerfile +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/LICENSE +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/Makefile +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/docs/ci-cd.md +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/docs/cli-reference.md +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/docs/development.md +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/docs/troubleshooting.md +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/examples/config/sarif-dashboard-parity.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/examples/config/sarif-dashboard-parity.toml +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/examples/config/sarif-diff-ci-cd.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/examples/config/sarif-diff-ci-cd.toml +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/examples/config/sarif-instance-detail.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/examples/config/sarif-instance-detail.toml +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/instructions/gitlab-commit-status/uat.md +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/pytest.ini +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/scripts/build_container.sh +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/scripts/build_container_flexible.sh +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/scripts/deploy-test-docker.sh +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/scripts/deploy-test-pypi.sh +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/scripts/docker-entrypoint.sh +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/scripts/run.sh +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/session.md +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socket.yml +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/config.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/__init__.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/alert_selection.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/classes.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/cli_client.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/exceptions.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/git_interface.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/helper/__init__.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/helper/socket_facts_loader.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/lazy_file_loader.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/logging.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/messages.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/resource_utils.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/scm/__init__.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/scm/base.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/scm/client.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/scm/github.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/scm/gitlab.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/scm_comments.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/socket_config.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/tools/reachability.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/utils.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/output.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/plugins/__init__.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/plugins/base.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/plugins/formatters/__init__.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/plugins/formatters/slack.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/plugins/jira.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/plugins/manager.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/plugins/slack.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/plugins/teams.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/plugins/webhook.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/socketcli.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/__init__.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/core/conftest.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/core/create_diff_input.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/core/test_diff_alerts.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/core/test_diff_generation.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/core/test_has_manifest_files.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/core/test_package_and_alerts.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/core/test_sdk_methods.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/core/test_supporting_methods.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/fullscans/create_response.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/fullscans/diff/stream_diff.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/fullscans/diff/stream_diff_full.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/fullscans/head_scan/metadata.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/fullscans/head_scan/stream_scan.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/fullscans/head_scan/stream_scan_full.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/fullscans/new_scan/metadata.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/fullscans/new_scan/stream_scan.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/repos/repo_info_error.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/repos/repo_info_no_head.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/repos/repo_info_success.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/settings/security-policy.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/e2e/fixtures/simple-npm/index.js +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/e2e/fixtures/simple-npm/package.json +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/unit/__init__.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/unit/test_alert_selection.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/unit/test_cli_config.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/unit/test_client.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/unit/test_config.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/unit/test_gitlab_auth.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/unit/test_gitlab_auth_fallback.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/unit/test_gitlab_commit_status.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/unit/test_gitlab_format.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/unit/test_output.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/unit/test_slack_plugin.py +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/uv.lock +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/workflows/bitbucket-pipelines.yml +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/workflows/buildkite.yml +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/workflows/github-actions.yml +0 -0
- {socketsecurity-2.2.79 → socketsecurity-2.2.80}/workflows/gitlab-ci.yml +0 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
name: Mark Release as Stable
|
|
2
|
+
on:
|
|
3
|
+
workflow_dispatch:
|
|
4
|
+
inputs:
|
|
5
|
+
version:
|
|
6
|
+
description: 'Version to mark as stable (e.g., 1.2.3)'
|
|
7
|
+
required: true
|
|
8
|
+
|
|
9
|
+
permissions:
|
|
10
|
+
contents: read
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
stable:
|
|
14
|
+
runs-on: ubuntu-latest
|
|
15
|
+
steps:
|
|
16
|
+
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
17
|
+
with:
|
|
18
|
+
persist-credentials: false
|
|
19
|
+
|
|
20
|
+
- name: Check if version exists in PyPI
|
|
21
|
+
id: version_check
|
|
22
|
+
env:
|
|
23
|
+
INPUT_VERSION: ${{ inputs.version }}
|
|
24
|
+
run: |
|
|
25
|
+
if ! curl -s -f "https://pypi.org/pypi/socketsecurity/${INPUT_VERSION}/json" > /dev/null; then
|
|
26
|
+
echo "Error: Version ${INPUT_VERSION} not found on PyPI"
|
|
27
|
+
exit 1
|
|
28
|
+
fi
|
|
29
|
+
echo "Version ${INPUT_VERSION} found on PyPI - proceeding with release"
|
|
30
|
+
|
|
31
|
+
- name: Set up QEMU
|
|
32
|
+
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3
|
|
33
|
+
|
|
34
|
+
- name: Set up Docker Buildx
|
|
35
|
+
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3
|
|
36
|
+
|
|
37
|
+
- name: Login to Docker Hub with Organization Token
|
|
38
|
+
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3
|
|
39
|
+
with:
|
|
40
|
+
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
41
|
+
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
|
42
|
+
|
|
43
|
+
- name: Build & Push Stable Docker
|
|
44
|
+
uses: docker/build-push-action@ca052bb54ab0790a636c9b5f226502c73d547a25 # v5
|
|
45
|
+
with:
|
|
46
|
+
push: true
|
|
47
|
+
platforms: linux/amd64,linux/arm64
|
|
48
|
+
tags: socketdev/cli:stable
|
|
49
|
+
build-args: |
|
|
50
|
+
CLI_VERSION=${{ inputs.version }}
|
|
51
|
+
|
|
@@ -6,6 +6,9 @@ on:
|
|
|
6
6
|
pull_request:
|
|
7
7
|
workflow_dispatch:
|
|
8
8
|
|
|
9
|
+
permissions:
|
|
10
|
+
contents: read
|
|
11
|
+
|
|
9
12
|
jobs:
|
|
10
13
|
e2e-scan:
|
|
11
14
|
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository
|
|
@@ -14,6 +17,7 @@ jobs:
|
|
|
14
17
|
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871
|
|
15
18
|
with:
|
|
16
19
|
fetch-depth: 0
|
|
20
|
+
persist-credentials: false
|
|
17
21
|
|
|
18
22
|
- uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3
|
|
19
23
|
with:
|
|
@@ -56,6 +60,7 @@ jobs:
|
|
|
56
60
|
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871
|
|
57
61
|
with:
|
|
58
62
|
fetch-depth: 0
|
|
63
|
+
persist-credentials: false
|
|
59
64
|
|
|
60
65
|
- uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3
|
|
61
66
|
with:
|
|
@@ -96,6 +101,7 @@ jobs:
|
|
|
96
101
|
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871
|
|
97
102
|
with:
|
|
98
103
|
fetch-depth: 0
|
|
104
|
+
persist-credentials: false
|
|
99
105
|
|
|
100
106
|
- uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3
|
|
101
107
|
with:
|
|
@@ -13,6 +13,7 @@ jobs:
|
|
|
13
13
|
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871
|
|
14
14
|
with:
|
|
15
15
|
fetch-depth: 0
|
|
16
|
+
persist-credentials: false
|
|
16
17
|
- uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3
|
|
17
18
|
with:
|
|
18
19
|
python-version: '3.13'
|
|
@@ -26,11 +27,13 @@ jobs:
|
|
|
26
27
|
|
|
27
28
|
- name: Get Version
|
|
28
29
|
id: version
|
|
30
|
+
env:
|
|
31
|
+
REF_NAME: ${{ github.ref_name }}
|
|
29
32
|
run: |
|
|
30
33
|
RAW_VERSION=$(hatch version)
|
|
31
34
|
echo "VERSION=$RAW_VERSION" >> $GITHUB_ENV
|
|
32
|
-
if [ "v$RAW_VERSION" != "$
|
|
33
|
-
echo "Error: Git tag ($
|
|
35
|
+
if [ "v$RAW_VERSION" != "$REF_NAME" ]; then
|
|
36
|
+
echo "Error: Git tag ($REF_NAME) does not match hatch version (v$RAW_VERSION)"
|
|
34
37
|
exit 1
|
|
35
38
|
fi
|
|
36
39
|
|
|
@@ -52,7 +55,7 @@ jobs:
|
|
|
52
55
|
env:
|
|
53
56
|
VERSION: ${{ env.VERSION }}
|
|
54
57
|
run: |
|
|
55
|
-
if curl -s -f "https://hub.docker.com/v2/repositories/socketdev/cli/tags/${
|
|
58
|
+
if curl -s -f "https://hub.docker.com/v2/repositories/socketdev/cli/tags/${VERSION}" > /dev/null; then
|
|
56
59
|
echo "Docker image socketdev/cli:${VERSION} already exists"
|
|
57
60
|
echo "docker_exists=true" >> $GITHUB_OUTPUT
|
|
58
61
|
else
|
|
@@ -113,4 +116,4 @@ jobs:
|
|
|
113
116
|
socketdev/cli:latest
|
|
114
117
|
socketdev/cli:${{ env.VERSION }}
|
|
115
118
|
build-args: |
|
|
116
|
-
CLI_VERSION=${{ env.VERSION }}
|
|
119
|
+
CLI_VERSION=${{ env.VERSION }}
|
|
@@ -7,6 +7,11 @@ on:
|
|
|
7
7
|
- 'setup.py'
|
|
8
8
|
- 'pyproject.toml'
|
|
9
9
|
|
|
10
|
+
permissions:
|
|
11
|
+
contents: read
|
|
12
|
+
pull-requests: write
|
|
13
|
+
issues: write
|
|
14
|
+
|
|
10
15
|
jobs:
|
|
11
16
|
check_version:
|
|
12
17
|
runs-on: ubuntu-latest
|
|
@@ -14,6 +19,7 @@ jobs:
|
|
|
14
19
|
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871
|
|
15
20
|
with:
|
|
16
21
|
fetch-depth: 0 # Fetch all history for all branches
|
|
22
|
+
persist-credentials: false
|
|
17
23
|
|
|
18
24
|
- name: Check version increment
|
|
19
25
|
id: version_check
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: socketsecurity
|
|
3
|
-
Version: 2.2.
|
|
3
|
+
Version: 2.2.80
|
|
4
4
|
Summary: Socket Security CLI for CI/CD
|
|
5
5
|
Project-URL: Homepage, https://socket.dev
|
|
6
6
|
Author-email: Douglas Coburn <douglas@socket.dev>
|
|
@@ -60,7 +60,7 @@ Description-Content-Type: text/markdown
|
|
|
60
60
|
|
|
61
61
|
Socket Python CLI for Socket scans, diff reporting, reachability analysis, and SARIF/GitLab exports.
|
|
62
62
|
|
|
63
|
-
Comprehensive docs are available in [`docs/`](docs
|
|
63
|
+
Comprehensive docs are available in [`docs/`](https://github.com/SocketDev/socket-python-cli/tree/main/docs) for full flag reference, CI/CD-specific guidance, and contributor setup.
|
|
64
64
|
|
|
65
65
|
## Quick start
|
|
66
66
|
|
|
@@ -85,8 +85,8 @@ socketcli --target-path .
|
|
|
85
85
|
## Common use cases
|
|
86
86
|
|
|
87
87
|
This section covers the paved path/common workflows.
|
|
88
|
-
For advanced options and exhaustive details, see [`docs/cli-reference.md`](docs/cli-reference.md).
|
|
89
|
-
For CI/CD-specific guidance, see [`docs/ci-cd.md`](docs/ci-cd.md).
|
|
88
|
+
For advanced options and exhaustive details, see [`docs/cli-reference.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/cli-reference.md).
|
|
89
|
+
For CI/CD-specific guidance, see [`docs/ci-cd.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/ci-cd.md).
|
|
90
90
|
|
|
91
91
|
### Basic policy scan (no SARIF)
|
|
92
92
|
|
|
@@ -149,7 +149,7 @@ socketcli \
|
|
|
149
149
|
Dashboard parity note:
|
|
150
150
|
- Full-scope SARIF is the closest match for dashboard-style filtering.
|
|
151
151
|
- Exact result counts can still differ from the dashboard due to backend/API consolidation differences and grouping semantics.
|
|
152
|
-
- See [`docs/troubleshooting.md#dashboard-vs-cli-result-counts`](docs/troubleshooting.md#dashboard-vs-cli-result-counts).
|
|
152
|
+
- See [`docs/troubleshooting.md#dashboard-vs-cli-result-counts`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/troubleshooting.md#dashboard-vs-cli-result-counts).
|
|
153
153
|
|
|
154
154
|
## Config files (`--config`)
|
|
155
155
|
|
|
@@ -195,23 +195,23 @@ socketcli --config .socketcli.toml --target-path .
|
|
|
195
195
|
Reference sample configs:
|
|
196
196
|
|
|
197
197
|
TOML:
|
|
198
|
-
- [`examples/config/sarif-dashboard-parity.toml`](examples/config/sarif-dashboard-parity.toml)
|
|
199
|
-
- [`examples/config/sarif-instance-detail.toml`](examples/config/sarif-instance-detail.toml)
|
|
200
|
-
- [`examples/config/sarif-diff-ci-cd.toml`](examples/config/sarif-diff-ci-cd.toml)
|
|
198
|
+
- [`examples/config/sarif-dashboard-parity.toml`](https://github.com/SocketDev/socket-python-cli/blob/main/examples/config/sarif-dashboard-parity.toml)
|
|
199
|
+
- [`examples/config/sarif-instance-detail.toml`](https://github.com/SocketDev/socket-python-cli/blob/main/examples/config/sarif-instance-detail.toml)
|
|
200
|
+
- [`examples/config/sarif-diff-ci-cd.toml`](https://github.com/SocketDev/socket-python-cli/blob/main/examples/config/sarif-diff-ci-cd.toml)
|
|
201
201
|
|
|
202
202
|
JSON:
|
|
203
|
-
- [`examples/config/sarif-dashboard-parity.json`](examples/config/sarif-dashboard-parity.json)
|
|
204
|
-
- [`examples/config/sarif-instance-detail.json`](examples/config/sarif-instance-detail.json)
|
|
205
|
-
- [`examples/config/sarif-diff-ci-cd.json`](examples/config/sarif-diff-ci-cd.json)
|
|
203
|
+
- [`examples/config/sarif-dashboard-parity.json`](https://github.com/SocketDev/socket-python-cli/blob/main/examples/config/sarif-dashboard-parity.json)
|
|
204
|
+
- [`examples/config/sarif-instance-detail.json`](https://github.com/SocketDev/socket-python-cli/blob/main/examples/config/sarif-instance-detail.json)
|
|
205
|
+
- [`examples/config/sarif-diff-ci-cd.json`](https://github.com/SocketDev/socket-python-cli/blob/main/examples/config/sarif-diff-ci-cd.json)
|
|
206
206
|
|
|
207
207
|
## CI/CD examples
|
|
208
208
|
|
|
209
209
|
Prebuilt workflow examples:
|
|
210
210
|
|
|
211
|
-
- [GitHub Actions](workflows/github-actions.yml)
|
|
212
|
-
- [Buildkite](workflows/buildkite.yml)
|
|
213
|
-
- [GitLab CI](workflows/gitlab-ci.yml)
|
|
214
|
-
- [Bitbucket Pipelines](workflows/bitbucket-pipelines.yml)
|
|
211
|
+
- [GitHub Actions](https://github.com/SocketDev/socket-python-cli/blob/main/workflows/github-actions.yml)
|
|
212
|
+
- [Buildkite](https://github.com/SocketDev/socket-python-cli/blob/main/workflows/buildkite.yml)
|
|
213
|
+
- [GitLab CI](https://github.com/SocketDev/socket-python-cli/blob/main/workflows/gitlab-ci.yml)
|
|
214
|
+
- [Bitbucket Pipelines](https://github.com/SocketDev/socket-python-cli/blob/main/workflows/bitbucket-pipelines.yml)
|
|
215
215
|
|
|
216
216
|
Minimal pattern:
|
|
217
217
|
|
|
@@ -224,7 +224,7 @@ Minimal pattern:
|
|
|
224
224
|
|
|
225
225
|
## Common gotchas
|
|
226
226
|
|
|
227
|
-
See [`docs/troubleshooting.md`](docs/troubleshooting.md#common-gotchas).
|
|
227
|
+
See [`docs/troubleshooting.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/troubleshooting.md#common-gotchas).
|
|
228
228
|
|
|
229
229
|
## Quick verification checks
|
|
230
230
|
|
|
@@ -245,7 +245,7 @@ jq '.runs[0].results | length' sarif-diff-reachable.sarif
|
|
|
245
245
|
|
|
246
246
|
## Documentation reference
|
|
247
247
|
|
|
248
|
-
- Full CLI reference: [`docs/cli-reference.md`](docs/cli-reference.md)
|
|
249
|
-
- CI/CD guide: [`docs/ci-cd.md`](docs/ci-cd.md)
|
|
250
|
-
- Troubleshooting guide: [`docs/troubleshooting.md`](docs/troubleshooting.md)
|
|
251
|
-
- Development guide: [`docs/development.md`](docs/development.md)
|
|
248
|
+
- Full CLI reference: [`docs/cli-reference.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/cli-reference.md)
|
|
249
|
+
- CI/CD guide: [`docs/ci-cd.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/ci-cd.md)
|
|
250
|
+
- Troubleshooting guide: [`docs/troubleshooting.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/troubleshooting.md)
|
|
251
|
+
- Development guide: [`docs/development.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/development.md)
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Socket Python CLI for Socket scans, diff reporting, reachability analysis, and SARIF/GitLab exports.
|
|
4
4
|
|
|
5
|
-
Comprehensive docs are available in [`docs/`](docs
|
|
5
|
+
Comprehensive docs are available in [`docs/`](https://github.com/SocketDev/socket-python-cli/tree/main/docs) for full flag reference, CI/CD-specific guidance, and contributor setup.
|
|
6
6
|
|
|
7
7
|
## Quick start
|
|
8
8
|
|
|
@@ -27,8 +27,8 @@ socketcli --target-path .
|
|
|
27
27
|
## Common use cases
|
|
28
28
|
|
|
29
29
|
This section covers the paved path/common workflows.
|
|
30
|
-
For advanced options and exhaustive details, see [`docs/cli-reference.md`](docs/cli-reference.md).
|
|
31
|
-
For CI/CD-specific guidance, see [`docs/ci-cd.md`](docs/ci-cd.md).
|
|
30
|
+
For advanced options and exhaustive details, see [`docs/cli-reference.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/cli-reference.md).
|
|
31
|
+
For CI/CD-specific guidance, see [`docs/ci-cd.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/ci-cd.md).
|
|
32
32
|
|
|
33
33
|
### Basic policy scan (no SARIF)
|
|
34
34
|
|
|
@@ -91,7 +91,7 @@ socketcli \
|
|
|
91
91
|
Dashboard parity note:
|
|
92
92
|
- Full-scope SARIF is the closest match for dashboard-style filtering.
|
|
93
93
|
- Exact result counts can still differ from the dashboard due to backend/API consolidation differences and grouping semantics.
|
|
94
|
-
- See [`docs/troubleshooting.md#dashboard-vs-cli-result-counts`](docs/troubleshooting.md#dashboard-vs-cli-result-counts).
|
|
94
|
+
- See [`docs/troubleshooting.md#dashboard-vs-cli-result-counts`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/troubleshooting.md#dashboard-vs-cli-result-counts).
|
|
95
95
|
|
|
96
96
|
## Config files (`--config`)
|
|
97
97
|
|
|
@@ -137,23 +137,23 @@ socketcli --config .socketcli.toml --target-path .
|
|
|
137
137
|
Reference sample configs:
|
|
138
138
|
|
|
139
139
|
TOML:
|
|
140
|
-
- [`examples/config/sarif-dashboard-parity.toml`](examples/config/sarif-dashboard-parity.toml)
|
|
141
|
-
- [`examples/config/sarif-instance-detail.toml`](examples/config/sarif-instance-detail.toml)
|
|
142
|
-
- [`examples/config/sarif-diff-ci-cd.toml`](examples/config/sarif-diff-ci-cd.toml)
|
|
140
|
+
- [`examples/config/sarif-dashboard-parity.toml`](https://github.com/SocketDev/socket-python-cli/blob/main/examples/config/sarif-dashboard-parity.toml)
|
|
141
|
+
- [`examples/config/sarif-instance-detail.toml`](https://github.com/SocketDev/socket-python-cli/blob/main/examples/config/sarif-instance-detail.toml)
|
|
142
|
+
- [`examples/config/sarif-diff-ci-cd.toml`](https://github.com/SocketDev/socket-python-cli/blob/main/examples/config/sarif-diff-ci-cd.toml)
|
|
143
143
|
|
|
144
144
|
JSON:
|
|
145
|
-
- [`examples/config/sarif-dashboard-parity.json`](examples/config/sarif-dashboard-parity.json)
|
|
146
|
-
- [`examples/config/sarif-instance-detail.json`](examples/config/sarif-instance-detail.json)
|
|
147
|
-
- [`examples/config/sarif-diff-ci-cd.json`](examples/config/sarif-diff-ci-cd.json)
|
|
145
|
+
- [`examples/config/sarif-dashboard-parity.json`](https://github.com/SocketDev/socket-python-cli/blob/main/examples/config/sarif-dashboard-parity.json)
|
|
146
|
+
- [`examples/config/sarif-instance-detail.json`](https://github.com/SocketDev/socket-python-cli/blob/main/examples/config/sarif-instance-detail.json)
|
|
147
|
+
- [`examples/config/sarif-diff-ci-cd.json`](https://github.com/SocketDev/socket-python-cli/blob/main/examples/config/sarif-diff-ci-cd.json)
|
|
148
148
|
|
|
149
149
|
## CI/CD examples
|
|
150
150
|
|
|
151
151
|
Prebuilt workflow examples:
|
|
152
152
|
|
|
153
|
-
- [GitHub Actions](workflows/github-actions.yml)
|
|
154
|
-
- [Buildkite](workflows/buildkite.yml)
|
|
155
|
-
- [GitLab CI](workflows/gitlab-ci.yml)
|
|
156
|
-
- [Bitbucket Pipelines](workflows/bitbucket-pipelines.yml)
|
|
153
|
+
- [GitHub Actions](https://github.com/SocketDev/socket-python-cli/blob/main/workflows/github-actions.yml)
|
|
154
|
+
- [Buildkite](https://github.com/SocketDev/socket-python-cli/blob/main/workflows/buildkite.yml)
|
|
155
|
+
- [GitLab CI](https://github.com/SocketDev/socket-python-cli/blob/main/workflows/gitlab-ci.yml)
|
|
156
|
+
- [Bitbucket Pipelines](https://github.com/SocketDev/socket-python-cli/blob/main/workflows/bitbucket-pipelines.yml)
|
|
157
157
|
|
|
158
158
|
Minimal pattern:
|
|
159
159
|
|
|
@@ -166,7 +166,7 @@ Minimal pattern:
|
|
|
166
166
|
|
|
167
167
|
## Common gotchas
|
|
168
168
|
|
|
169
|
-
See [`docs/troubleshooting.md`](docs/troubleshooting.md#common-gotchas).
|
|
169
|
+
See [`docs/troubleshooting.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/troubleshooting.md#common-gotchas).
|
|
170
170
|
|
|
171
171
|
## Quick verification checks
|
|
172
172
|
|
|
@@ -187,7 +187,7 @@ jq '.runs[0].results | length' sarif-diff-reachable.sarif
|
|
|
187
187
|
|
|
188
188
|
## Documentation reference
|
|
189
189
|
|
|
190
|
-
- Full CLI reference: [`docs/cli-reference.md`](docs/cli-reference.md)
|
|
191
|
-
- CI/CD guide: [`docs/ci-cd.md`](docs/ci-cd.md)
|
|
192
|
-
- Troubleshooting guide: [`docs/troubleshooting.md`](docs/troubleshooting.md)
|
|
193
|
-
- Development guide: [`docs/development.md`](docs/development.md)
|
|
190
|
+
- Full CLI reference: [`docs/cli-reference.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/cli-reference.md)
|
|
191
|
+
- CI/CD guide: [`docs/ci-cd.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/ci-cd.md)
|
|
192
|
+
- Troubleshooting guide: [`docs/troubleshooting.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/troubleshooting.md)
|
|
193
|
+
- Development guide: [`docs/development.md`](https://github.com/SocketDev/socket-python-cli/blob/main/docs/development.md)
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
name: Mark Release as Stable
|
|
2
|
-
on:
|
|
3
|
-
workflow_dispatch:
|
|
4
|
-
inputs:
|
|
5
|
-
version:
|
|
6
|
-
description: 'Version to mark as stable (e.g., 1.2.3)'
|
|
7
|
-
required: true
|
|
8
|
-
|
|
9
|
-
jobs:
|
|
10
|
-
stable:
|
|
11
|
-
runs-on: ubuntu-latest
|
|
12
|
-
steps:
|
|
13
|
-
- uses: actions/checkout@v4
|
|
14
|
-
|
|
15
|
-
- name: Check if version exists in PyPI
|
|
16
|
-
id: version_check
|
|
17
|
-
run: |
|
|
18
|
-
if ! curl -s -f https://pypi.org/pypi/socketsecurity/${{ inputs.version }}/json > /dev/null; then
|
|
19
|
-
echo "Error: Version ${{ inputs.version }} not found on PyPI"
|
|
20
|
-
exit 1
|
|
21
|
-
fi
|
|
22
|
-
echo "Version ${{ inputs.version }} found on PyPI - proceeding with release"
|
|
23
|
-
|
|
24
|
-
- name: Set up QEMU
|
|
25
|
-
uses: docker/setup-qemu-action@v3
|
|
26
|
-
|
|
27
|
-
- name: Set up Docker Buildx
|
|
28
|
-
uses: docker/setup-buildx-action@v3
|
|
29
|
-
|
|
30
|
-
- name: Login to Docker Hub with Organization Token
|
|
31
|
-
uses: docker/login-action@v3
|
|
32
|
-
with:
|
|
33
|
-
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
34
|
-
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
|
35
|
-
|
|
36
|
-
- name: Build & Push Stable Docker
|
|
37
|
-
uses: docker/build-push-action@v5
|
|
38
|
-
with:
|
|
39
|
-
push: true
|
|
40
|
-
platforms: linux/amd64,linux/arm64
|
|
41
|
-
tags: socketdev/cli:stable
|
|
42
|
-
build-args: |
|
|
43
|
-
CLI_VERSION=${{ inputs.version }}
|
|
44
|
-
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{socketsecurity-2.2.79 → socketsecurity-2.2.80}/.github/PULL_REQUEST_TEMPLATE/improvement.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/core/helper/socket_facts_loader.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{socketsecurity-2.2.79 → socketsecurity-2.2.80}/socketsecurity/plugins/formatters/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/fullscans/diff/stream_diff_full.json
RENAMED
|
File without changes
|
{socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/fullscans/head_scan/metadata.json
RENAMED
|
File without changes
|
{socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/fullscans/head_scan/stream_scan.json
RENAMED
|
File without changes
|
{socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/fullscans/head_scan/stream_scan_full.json
RENAMED
|
File without changes
|
|
File without changes
|
{socketsecurity-2.2.79 → socketsecurity-2.2.80}/tests/data/fullscans/new_scan/stream_scan.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|