Skip to content

Releases: cdot65/pan-scm-cli

v1.5.0

11 Jun 21:37

Choose a tag to compare

GlobalProtect (mobile-agent) coverage for pan-scm-sdk 0.15.0. Adds CLI commands for all nine new mobile-agent services under scm <action> mobile-agent <object>:

  • agent-profile and tunnel-profile — full set/delete/show/backup/load
  • infrastructure-setting — full set/delete/show/backup/load; global-setting — show/set (tenant singleton)
  • forwarding-profile and forwarding-profile-destination — full pattern incl. PAC/GP-proxy/ZTNA profile types and rules
  • forwarding-profile-source-application, forwarding-profile-user-location, forwarding-profile-regional-and-custom-proxy — full pattern

Also bumps the SDK pin to ^0.15.0 (auth-settings spec alignment verified, non-breaking). Nested configurations are supported through load YAML; common fields are exposed as flags on set.

v1.4.0

21 Apr 13:00
134ed50

Choose a tag to compare

Add scm set/load/backup setup device commands for updating the writable device fields (display_name, folder, description, labels, snippets) landed in pan-scm-sdk 0.14.0. scm show setup device now displays those fields. Devices remain uncreatable and undeletable — they register through the firewall itself.

v1.3.5

17 Apr 10:14

Choose a tag to compare

Strip HTML tags from incident remediation output for clean terminal display.

v1.3.4

17 Apr 10:05

Choose a tag to compare

Fixes

  • Incident Show: Fixed scm incidents show <id> — works against real SCM API. Bypasses SDK get_details() parsing bug that failed on the {header, data} response wrapper.
  • Full Incident IDs: Table now shows full UUID for easy copy-paste into show command.
  • Remediation Parsing: Parses the nested JSON remediations field into readable numbered steps.
  • Epoch Timestamps: Incident dates display as human-readable YYYY-MM-DD HH:MM instead of raw epoch integers.

Verified Against Real SCM API

scm incidents list                    ✓ (50 incidents, filters work)
scm incidents list --severity Warning ✓ 
scm incidents show <uuid>             ✓ (alerts + remediation steps)
scm incidents show <uuid> --json      ✓

v1.3.3

17 Apr 09:44

Choose a tag to compare

Fixes

  • Device Name Resolution: --device austin-01 now works — searches hostname, display_name, name, and serial_number fields. Shows available devices when no match found.
  • Incidents Table: Epoch timestamps converted to human-readable dates. Long IDs truncated.
  • API 404 Handling: Clear error message when Operations or Local Config API is unavailable, instead of "Invalid error response format".

Verified Against Real SCM API

  • scm incidents list with filters — working
  • scm incidents show <id> with alerts — working
  • Device resolution: austin-01007954000653665 — working
  • Operations/Local Config: 404 on test tenant (may require specific licensing)

v1.3.2

17 Apr 09:32
375fbfa

Choose a tag to compare

Fixes

  • Device Name Resolution: --device austin-fw1 now works. The CLI automatically resolves device names to serial numbers via the SCM device API. Serial numbers (14-15 digits) are still accepted directly.
  • SDK Model Alignment: Mock data and live API calls fully aligned with actual SDK 0.13.0 Pydantic model schemas (local config, device operations, incidents).

v1.3.1

17 Apr 09:15

Choose a tag to compare

Fixes

  • Region Compatibility: Scm() constructor now only receives region if the installed SDK supports it — fixes unexpected keyword argument 'region' crash when SDK <0.13.0 is installed
  • Local Config API: list()list_versions(), version type intstr
  • Device Operations API: Use per-method dispatch (route_table(), fib_table(), etc.) with devices=[device] list param. status()get_job_status()
  • Incidents API: Filter params use lists, get()get_details(), response model extraction fixed

v1.3.0

17 Apr 02:01
843a808

Choose a tag to compare

What's New

SDK 0.13.0 Upgrade

Upgraded pan-scm-sdk from 0.12.x to 0.13.0, bringing Operations API, Incidents API, and region support.

New Commands

Local Config (scm local)

  • scm local list --device <name> — List device configuration versions
  • scm local download --device <name> --version <id> — Download config as XML (stdout or --output file)

Device Operations (scm operations)

  • 7 operation types: route-table, fib-table, dns-proxy, interfaces, device-rules, bgp-export, logging-status
  • scm operations status --job-id <id> — Check async job status
  • Default sync mode (poll to completion), --async flag for fire-and-forget
  • --timeout controls sync polling duration

Incidents (scm incidents)

  • scm incidents list — Search incidents with --status, --severity, --product filters
  • scm incidents show <id> — View incident detail with alerts and remediation steps
  • --json flag on both commands for automation

Region Support

  • scm context create <name> --region europe — Store region per-context
  • scm --region americas ... — Override region per-invocation
  • Precedence: global flag > context > "americas" default

Other Changes

  • Handle GatewayTimeoutError with recovery instructions
  • Fix mypy errors from SDK 0.13.0 stricter type stubs
  • 957 tests passing, 29 skipped

v1.2.1

31 Mar 10:42

Choose a tag to compare

Fixed

  • Lint errors: section separator lines trimmed to 191 chars, import ordering fixed in sdk_client.py
  • CI now passes cleanly

Full Changelog: v1.2.0...v1.2.1

v1.2.0

31 Mar 10:36

Choose a tag to compare

What's Changed

Fixed

  • BPA Config Upload: Fixed broken upload to presigned GCS URL — config data is now gzip-compressed with correct headers (Content-Type: plain/text, Content-Encoding: gzip)
  • BPA Status Validator: Added UPLOAD_COMPLETE to accepted BPA processing statuses

Changed

  • BPA Report Parser: Rewrote for real nested BPA schema (best_practices → category → subcategory → items → warnings)
  • Score Command: --scope now uses real BPA categories (device, service_health, network, policies, objects). --format supports json/markdown/csv
  • Assess Command: Outputs formatted results to stdout after saving raw report. Added --format option. Progress on stderr for clean piping

Added

  • Output Formats: JSON (agent-friendly), Markdown (human-readable tables), CSV (spreadsheet/pipeline) on both assess and score
  • Posture Documentation: Full CLI reference page for export, assess, score commands

Full Changelog: v1.1.0...v1.2.0