The Prisma Cloud CLI is a command line interface for Prisma Cloud by Palo Alto Networks.

Overview

Prisma Cloud CLI

The Prisma Cloud CLI is a command line interface for Prisma Cloud by Palo Alto Networks.

Support

This project has been developed by Prisma Cloud SAs and is not Supported by Palo Alto Networks. Nevertheless, the maintainers will make a best-effort to address issues, and (of course) contributors are encouraged to submit issues and pull requests.

Getting started

Requirements

  • Python >= 3.7
  • Pip3

Installation

pip3 install prismacloud-cli

Installation on Alpine:

sudo pip3 install --upgrade pip && pip3 install --upgrade setuptools
sudo pip3 install prismacloud-cli

Installation on Ubuntu:

sudo apt update
sudo apt install -y python3-venv python3-pip jq
mkdir python_virtual_environments/
cd python_virtual_enviornments/
python3 -m venv prisma_cli_env
source prisma_cli_env/bin/activate
pip3 install prismacloud-cli

Run the script

Run the pc cli script. If you don't have a config file yet, it will help you to create one.

pc version

This process looks like the screenshot below. the prismacloud-cli asks you for some details, stores it in the credentials file and uses that file when it is already available.

First run

Create your own configuration

Create an access key from Settings then Access key Get the path to console from Compute tab, System, Utilities

Create a file into home directory .prismacloud/credentials.json with the following structure

{
  "api_endpoint": "__REDACTED__",
  "pcc_api_endpoint": "__REDACTED__",
  "access_key_id": "__REDACTED__",
  "secret_key": "__REDACTED__"
}

You can add additional configurations which you can call by using --config. For example, create a file called ~/.prismacloud/demo.json with the contents above.

Add --config demo to your cli commands.

For example:

pc --config demo -o csv policy

Examples

pc -o csv policy
pc -o json policy | jq
pc tags
pc stats dashboard
pc -o json stats dashboard
pc cloud name
pc --columns defendersSummary.host stats dashboard

Global options

The following global options are available

Options:
  -v, --verbose                   Enables verbose mode.
  -vv, --very_verbose             Enables very verbose mode.
  -o, --output [text|csv|json|html|columns]
  -c, --config TEXT               Select configuration
                                  ~/.prismacloud/[CONFIGURATION].json
  --columns TEXT                  Select columns for output
  --help                          Show this message and exit.

Use -o columns to get a list of columns available for --columns, e.g.:

pc -o columns images
pc --columns hostname,repoTag.repo,osDistro -o csv images -l 1

Environment variables

To overwrite the default output settings, use environment variables MAX_WIDTH (console output), MAX_ROWS and MAX_COLUMNS.

Commands

The cli has several commands to work with, see the screenshot below for an example, but use pc --help to see the latest list for your version.

Help

Use cases

Log4J Impacted Resources

pc -o json stats vulnerabilities --cve CVE-2021-44228 | jq
pc stats vulnerabilities --cve CVE-2021-44228

Use something similar for getting the Spring Shell impacted resources.

Search scan reports for images scanned by the Jenkins plugin or twistcli.

pc scans --help

Select only specific columns for the output:

pc --columns entityInfo.repoTag.registry,entityInfo.repoTag.repo,entityInfo.repoTag.tag,entityInfo.vulnerabilitiesCount scans -l 20 -s nginx

You might also want to add some additional columns and save the output as html:

pc --config local -o html --columns entityInfo.repoTag.registry,entityInfo.repoTag.repo,entityInfo.repoTag.tag,entityInfo.vulnerabilitiesCount,entityInfo.vulnerabilityDistribution.critical,entityInfo.vulnerabilityDistribution.high,entityInfo.vulnerabilityDistribution.medium scans -l 20 -s nginx  > /tmp/results.html

Then, open /tmp/results.html:

Results

Comments
  • [Community Health Assessment] Changes needed

    [Community Health Assessment] Changes needed

    | Health Check | Pass | Score | More Info | | ------------ | ---- | ----- | --------- | | Contains a meaningful README.md file | :white_check_mark: | 20 / 20 | More info | SUPPORT.md file exists | :white_check_mark: | 20 / 20 | More info | Repo has a description | :white_check_mark: | 15 / 15 | More info | Has a recognized open source license | :white_check_mark: | 15 / 15 | More info | Has a descriptive repo name | :white_check_mark: | 15 / 15 | More info | Required topics attached to repo | :white_check_mark: | 15 / 15 | More info | CONTRIBUTING.md file with contribution guidelines | :white_check_mark: | 5 / 5 | More info | Has custom issue and pull request templates | :x: | 0 / 5 | More info

    Current score: 105 Target threshold: 100 Total possible: 110

    opened by community-health-panw[bot] 8
  • Config and version

    Config and version

    Description

    add a cspm version check and improve config mapping between cli and api

    Motivation and Context

    Question on Slack

    How Has This Been Tested?

    Manual, Flake8

    Types of changes

    • New feature (non-breaking change which adds functionality)

    Checklist

    • [x] I have updated the documentation accordingly.
    • [x] I have read the CONTRIBUTING document.
    • [x] I have added tests to cover my changes if appropriate.
    • [x] All new and existing tests passed.
    opened by tkishel 6
  • pc -v audits container

    pc -v audits container

    Describe the bug

    I'd like to use the cli tool to export container audits

    Expected behavior

    I would expect pc -v audits container to return back the audits from the container runtime.

    Current behavior

    But it is returning nothing, and when reviewing the source code, I see audits/firewall/app/container the following API being called which is for WAAS and not container runtime.

    Possible solution

    I would suggest we update this endpoint or create a new option for this result.

    Steps to reproduce

    Screenshots

    Context

    Your Environment

    • Version used:
    • Environment name and version (e.g. Chrome 59, node.js 5.4, python 3.7.3):
    • Operating System and version (desktop or mobile):
    • Link to your project:
    bug 
    opened by sgordon46 5
  • API urls not sanitised during first setup

    API urls not sanitised during first setup

    Describe the bug

    When first running the cli tool after installing, it asks for API urls. However, if I paste a URL with https:// in it, it will be stored to config as such, but subsequent requests to the API fail.

    Expected behavior

    The setup flow should sanitise the url to such a form that it works regardless if the value contains the protocol or not. Alternatively, URL's read from the config json should be sanitised to the expected form before the calls to the API.

    Current behavior

    Requests fail because the URL stored in the config is in the wrong format. Log output:

    Traceback (most recent call last):
      File "/Users/xyz/Library/Python/3.9/lib/python/site-packages/requests/adapters.py", line 439, in send
        resp = conn.urlopen(
      File "/Users/xyz/Library/Python/3.9/lib/python/site-packages/urllib3/connectionpool.py", line 755, in urlopen
        retries = retries.increment(
      File "/Users/xyz/Library/Python/3.9/lib/python/site-packages/urllib3/util/retry.py", line 574, in increment
        raise MaxRetryError(_pool, url, error or ResponseError(cause))
    urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='https', port=443): Max retries exceeded with url: //api.eu.prismacloud.io/login (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x125250b20>: Failed to establish a new connection: [Errno 8] nodename nor servname provided, or not known'))
    
    
    

    Steps to reproduce

    starting from a fresh install

    1. pip3 install prismacloud-cli
    2. pc version
    3. follow steps to setup tool, but set API urls including https, e.g. https://api.eu.prismacloud.io
    4. Once done, requests fail

    Alteratively just change the URL's in ~/.prismacloud/credentials.json to include https:// and try to call pc version. Request will fail.

    Your Environment

    • Version used: prismacloud_cli-0.4.35
    • Environment name and version (e.g. Chrome 59, node.js 5.4, python 3.7.3): python 3.9
    • Operating System and version (desktop or mobile): MacOS 12.4
    bug 
    opened by jenswegar 4
  • error when confirming community supported

    error when confirming community supported

    Describe the bug

    When I run pc version and try to answer yes to the #Community Supported verbage, I get a Traceback error. (pcclitest) ➜ pcclitest pc version zsh: correct 'pc' to 'cp' [nyae]? n

    Community Supported

    This template/solution is released under an as-is, best effort, support policy. These scripts should be seen as community supported and Palo Alto Networks will contribute our expertise as and when possible. We do not provide technical support or help in using or troubleshooting the components of the project through our normal support options such as Palo Alto Networks support teams, or ASC (Authorized Support Centers) partners and backline support options. The underlying product used (Prisma Cloud) by the scripts or templates are still supported, but the support is only for the product functionality and not for help in deploying or using the template or script itself.

    Unless explicitly tagged, all projects or work posted in our GitHub repository (at https://github.com/PaloAltoNetworks) or sites other than our official Downloads page on https://support.paloaltonetworks.com are provided under the best effort policy.

    Type yes to confirm you have read the message above: yes Message accepted. Traceback (most recent call last): File "/Users/[someuser]/Projects/pcclitest/bin/pc", line 8, in sys.exit(cli()) File "/Users/[someuser]/Projects/pcclitest/lib/python3.9/site-packages/click/core.py", line 1130, in call return self.main(*args, **kwargs) File "/Users/[someuser]/Projects/pcclitest/lib/python3.9/site-packages/click/core.py", line 1055, in main rv = self.invoke(ctx) File "/Users/[someuser]/Projects/pcclitest/lib/python3.9/site-packages/click/core.py", line 1651, in invoke cmd_name, cmd, args = self.resolve_command(ctx, args) File "/Users/[someuser]/Projects/pcclitest/lib/python3.9/site-packages/click_help_colors/core.py", line 101, in resolve_command cmd_name, cmd, args[1:] = super(HelpColorsMultiCommand, self).resolve_command(ctx, args) File "/Users/[someuser]/Projects/pcclitest/lib/python3.9/site-packages/click/core.py", line 1698, in resolve_command cmd = self.get_command(ctx, cmd_name) File "/Users[someuser]/Projects/pcclitest/lib/python3.9/site-packages/prismacloud/cli/init.py", line 135, in get_command mod = import(f"prismacloud.cli.{module_type}.cmd_{cmd_name}", None, None, ["cli"]) File "/Users/[someuser]/Projects/pcclitest/lib/python3.9/site-packages/prismacloud/cli/cwpp/cmd_version.py", line 4, in from prismacloud.cli.api import pc_api File "/Users/[someuser]/Projects/pcclitest/lib/python3.9/site-packages/prismacloud/cli/api.py", line 264, in pc_api.configure(map_cli_config_to_api_config()) File "/Users/[someuser]/Projects/pcclitest/lib/python3.9/site-packages/prismacloud/cli/api.py", line 33, in map_cli_config_to_api_config settings = get_cli_config() File "/Users/[someuser]/Projects/pcclitest/lib/python3.9/site-packages/prismacloud/cli/api.py", line 100, in get_cli_config community_supported() # Check if support message has been shown and accepted File "/Users/[someuser]/Projects/pcclitest/lib/python3.9/site-packages/prismacloud/cli/api.py", line 78, in community_supported with open(community_support_accepted, "w") as _accepted: FileNotFoundError: [Errno 2] No such file or directory: '/Users/[someuser]/.prismacloud/.community_supported_accepted'

    Expected behavior

    Should create .prismacloud hidden folder in my home folder with a .community_supported_accepted file in it.

    Current behavior

    It errors as above

    Possible solution

    I created the hidden folder and the hidden file and pc version worked

    Steps to reproduce

    1. on Mac OSX 12.6 running python 3.10.7 pip3 install prismacloud-cli
    2. run pc version
    3. see it fail

    Screenshots

    Context

    Cannot try/test prismacloud-cli

    Your Environment

    • Version used: prismacloud-cli 0.4.45 , prismacloud-api 4.0.8
    • Environment name and version (e.g. Chrome 59, node.js 5.4, python 3.7.3): iterm 3.4.16 SHELL: zsh python 3.10.7
    • Operating System and version (desktop or mobile): desktop OSX Monterey 10.6 (21G115)
    • Link to your project:
    bug 
    opened by timberbee 3
  • New installation requires /Users/$USER/.prismacloud to exist

    New installation requires /Users/$USER/.prismacloud to exist

    Describe the bug

    initial acceptance of support policy requires /Users/$USER/.prismacloud to pre-exist

    Expected behavior

    Expected that initial install will create /Users/$USER/.prismacloud

    Current behavior

    ❯ pc version
    # Community Supported
    This template/solution is released under an as-is, best effort,
    support policy. These scripts should be seen as community
    supported and Palo Alto Networks will contribute our expertise as
    and when possible. We do not provide technical support or help in
    using or troubleshooting the components of the project through our
    normal support options such as Palo Alto Networks support teams,
    or ASC (Authorized Support Centers) partners and backline support
    options. The underlying product used (Prisma Cloud) by the scripts
    or templates are still supported, but the support is only for the
    product functionality and not for help in deploying or using the
    template or script itself.
    
    Unless explicitly tagged, all projects or work posted in our
    GitHub repository (at https://github.com/PaloAltoNetworks) or
    sites other than our official Downloads page on
    https://support.paloaltonetworks.com are provided under the best
    effort policy.
    
    Type yes to confirm you have read the message above: yes
    Message accepted.
    Traceback (most recent call last):
      File "/usr/local/bin/pc", line 8, in <module>
        sys.exit(cli())
      File "/Users/lkaut/Library/Python/3.10/lib/python/site-packages/click/core.py", line 1130, in __call__
        return self.main(*args, **kwargs)
      File "/Users/lkaut/Library/Python/3.10/lib/python/site-packages/click/core.py", line 1055, in main
        rv = self.invoke(ctx)
      File "/Users/lkaut/Library/Python/3.10/lib/python/site-packages/click/core.py", line 1651, in invoke
        cmd_name, cmd, args = self.resolve_command(ctx, args)
      File "/usr/local/lib/python3.10/site-packages/click_help_colors/core.py", line 101, in resolve_command
        cmd_name, cmd, args[1:] = super(HelpColorsMultiCommand, self).resolve_command(ctx, args)
      File "/Users/lkaut/Library/Python/3.10/lib/python/site-packages/click/core.py", line 1698, in resolve_command
        cmd = self.get_command(ctx, cmd_name)
      File "/usr/local/lib/python3.10/site-packages/prismacloud/cli/__init__.py", line 135, in get_command
        mod = __import__(f"prismacloud.cli.{module_type}.cmd_{cmd_name}", None, None, ["cli"])
      File "/usr/local/lib/python3.10/site-packages/prismacloud/cli/cwpp/cmd_version.py", line 4, in <module>
        from prismacloud.cli.api import pc_api
      File "/usr/local/lib/python3.10/site-packages/prismacloud/cli/api.py", line 264, in <module>
        pc_api.configure(map_cli_config_to_api_config())
      File "/usr/local/lib/python3.10/site-packages/prismacloud/cli/api.py", line 33, in map_cli_config_to_api_config
        settings = get_cli_config()
      File "/usr/local/lib/python3.10/site-packages/prismacloud/cli/api.py", line 100, in get_cli_config
        community_supported()  # Check if support message has been shown and accepted
      File "/usr/local/lib/python3.10/site-packages/prismacloud/cli/api.py", line 78, in community_supported
        with open(community_support_accepted, "w") as _accepted:
    FileNotFoundError: [Errno 2] No such file or directory: '/Users/lkaut/.prismacloud/.community_supported_accepted'
    

    Possible solution

    programmatically create ~/.prismacloud/ directory workaround --> `mkdir /Users/$USER/.prismacloud

    Steps to reproduce

    New install per user

    Screenshots

    image image

    Context

    Your Environment

    Using MacOS Python3.10

    bug 
    opened by dukekautington3rd 3
  • initial commit

    initial commit

    Description

    Motivation and Context

    How Has This Been Tested?

    Screenshots (if appropriate)

    Types of changes

    • Bug fix (non-breaking change which fixes an issue)
    • New feature (non-breaking change which adds functionality)
    • Breaking change (fix or feature that would cause existing functionality to change)

    Checklist

    • [x] I have updated the documentation accordingly.
    • [x] I have read the CONTRIBUTING document.
    • [x] I have added tests to cover my changes if appropriate.
    • [x] All new and existing tests passed.
    opened by SimOnPanw 3
  • How do I enter the criteria for CWPP API query parameter, search?

    How do I enter the criteria for CWPP API query parameter, search?

    Documentation link

    https://prisma.pan.dev/api/cloud/cwpp/registry#operation/get-registry-download

    Describe the problem

    accuracy? request for improvement

    Given above documentation, how would / do I specify the search criteria for this API invocation? https://github.com/PaloAltoNetworks/prismacloud-cli/blob/39b60c85882919f1d12115c29f0b5123622e8f88/prismacloud/cli/cwpp/cmd_scans.py#L12

    Suggested fix

    Why don't someone create a tutorial / examples of the CWPP API query parameters? fields, search and offset + limit are good to know.

    documentation 
    opened by citrusoft 2
  • Create config dir if missing

    Create config dir if missing

    Description

    This adds a couple of lines to fix an error at first run:

    A test condition to see if the config directory "~/.prismacloud" exists during first run. Then mkdir said directory.

    Motivation and Context

    Documented issue here. Issue is reproducible when the ~/.prismacloud does not exist

    How Has This Been Tested?

    Yes. This was tested by removing the ~/.prismacloud directory structure and re-running pc version

    Types of changes

    • Bug fix (non-breaking change which fixes an issue)

    Checklist

    • [X] I have updated the documentation accordingly. Commit message only
    • [X] I have read the CONTRIBUTING document.
    • [X] I have added tests to cover my changes if appropriate.
    • [X] All new and existing tests passed.
    opened by dukekautington3rd 2
  • Normalize urls

    Normalize urls

    Description

    Addresses https://github.com/PaloAltoNetworks/prismacloud-cli/issues/68

    Motivation and Context

    Use existing code to sanitize.

    How Has This Been Tested?

    Manual testing.

    Types of changes

    • Bug fix (non-breaking change which fixes an issue)

    Checklist

    • [x] I have updated the documentation accordingly.
    • [x] I have read the CONTRIBUTING document.
    • [ ] I have added tests to cover my changes if appropriate.
    • [ ] All new and existing tests passed.
    opened by tkishel 2
  • Make the CLI available to windows users

    Make the CLI available to windows users

    With this change the CLI will work on windows environments as the only problem was the use of the HOME variable.

    Description

    Changes how the config directory is retrieved to make the tool available to windows users.

    Motivation and Context

    I wanted to use the CLI in a windows host.

    How Has This Been Tested?

    I've use it with my tenant.

    Types of changes

    • Bug fix (non-breaking change which fixes an issue)

    Checklist

    • [ ] I have updated the documentation accordingly.
    • [ ] I have read the CONTRIBUTING document.
    • [ ] I have added tests to cover my changes if appropriate.
    • [x] All new and existing tests passed.
    opened by deese 2
  • add agentless log download (undocumented api)

    add agentless log download (undocumented api)

    Description

    add agentless log download (undocumented api)

    Motivation and Context

    provide simple download

    How Has This Been Tested?

    manual, pylint

    Types of changes

    • New feature (non-breaking change which adds functionality)

    Checklist

    • [ ] I have updated the documentation accordingly.
    • [ ] I have read the CONTRIBUTING document.
    • [ ] I have added tests to cover my changes if appropriate.
    • [ ] All new and existing tests passed.
    opened by tkishel 1
  • fix issues #88

    fix issues #88

    Description

    Bug fix for issues #88

    Motivation and Context

    How Has This Been Tested?

    Screenshots (if appropriate)

    Types of changes

    • Bug fix (non-breaking change which fixes an issue)

    Checklist

    • [ ] I have updated the documentation accordingly.
    • [ ] I have read the CONTRIBUTING document.
    • [ ] I have added tests to cover my changes if appropriate.
    • [ ] All new and existing tests passed.
    opened by SimOnPanw 0
  • Defenders are listed in duplicate when using defenders list

    Defenders are listed in duplicate when using defenders list

    Describe the bug

    pc defenders list produces duplicate output of each defender

    Expected behavior

    I would expect to see a single entry for each defender.

    Current behavior

    When using pc defenders list and any output format, each defender is listed double.

    Possible solution

    Discover why this duplicate output happens.
    During debug I noticed that the data stored from the api call, is singular and doesn't seem to become duplicate until formatting or output occurs.

    Steps to reproduce

    pc defenders list

    Screenshots

    Output from command showing double: Uploading Screen Shot 2022-09-29 at 5.07.08 PM.png…

    Debug showing single data store: Uploading Screen Shot 2022-09-29 at 5.03.33 PM.png…

    Context

    None needed

    Your Environment

    • Version used: Python 3.10.6
    • Operating System and version (desktop or mobile): MacOS
    bug 
    opened by dukekautington3rd 4
Releases(v0.5.1)
  • v0.5.1(Dec 22, 2022)

    What's Changed

    • bump-prismacloud-api-to-5.0.11 by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/94

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.5.0...v0.5.1

    Source code(tar.gz)
    Source code(zip)
  • v0.5.0(Nov 24, 2022)

    What's Changed

    • Add license report and Serveless auto defend rules by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/90

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.49...v0.5.0

    Source code(tar.gz)
    Source code(zip)
  • v0.4.49(Nov 18, 2022)

    What's Changed

    • refactor for api version 5.0 by @tkishel in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/89

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.48...v0.4.49

    Source code(tar.gz)
    Source code(zip)
  • v0.4.48(Oct 28, 2022)

    Add automation to create host defend rule based on the cloud accounts onboarded into Prisma Cloud Compute. Moved WAAS/firewall audits to "firewall audits" and fixed "container audits" endpoint

    Source code(tar.gz)
    Source code(zip)
  • v0.4.47(Oct 10, 2022)

    What's Changed

    • Create config dir if missing by @dukekautington3rd in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/80
    • Fix sass typo -> saas by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/85
    • Added code reviews by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/86

    New Contributors

    • @dukekautington3rd made their first contribution in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/80

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.45...v0.4.47

    Source code(tar.gz)
    Source code(zip)
  • v0.4.45(Sep 28, 2022)

    What's Changed

    • Community-supported by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/78

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.44...v0.4.45

    Source code(tar.gz)
    Source code(zip)
  • v0.4.44(Sep 15, 2022)

    What's Changed

    • Refactor/cli output by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/77

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.43...v0.4.44

    Source code(tar.gz)
    Source code(zip)
  • v0.4.43(Aug 11, 2022)

    What's Changed

    • Feature/get package info by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/76

    Example usage

    pc --config local -o json images packages|jq ' .[] .license ' | sort | uniq

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v.0.4.42...v0.4.43

    Source code(tar.gz)
    Source code(zip)
  • v.0.4.42(Jul 15, 2022)

    What's Changed

    • Config and version by @tkishel in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/75

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.41...v.0.4.42

    Source code(tar.gz)
    Source code(zip)
  • v0.4.41(Jul 13, 2022)

    What's Changed

    • bump prismacloud api in setup by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/74

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.40...v0.4.41

    Source code(tar.gz)
    Source code(zip)
  • v0.4.40(Jul 13, 2022)

    What's Changed

    • bump prismacloud api to 4.0.8 by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/73

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.38...v0.4.40

    Source code(tar.gz)
    Source code(zip)
  • v0.4.38(Jul 12, 2022)

    What's Changed

    • Change API version by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/71
    • Update version.py by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/72

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.37...v0.4.38

    Source code(tar.gz)
    Source code(zip)
  • v0.4.37(Jul 12, 2022)

    What's Changed

    • add update repositories functions by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/70

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.36...v0.4.37

    Source code(tar.gz)
    Source code(zip)
  • v0.4.36(Jul 12, 2022)

    What's Changed

    • Webinar use cases by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/66
    • Documentation/use cases by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/67
    • Normalize urls by @tkishel in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/69

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.35...v0.4.36

    Source code(tar.gz)
    Source code(zip)
  • v0.4.35(Jun 23, 2022)

    What's Changed

    • Modified github actions workflow by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/63
    • update api version by @tkishel in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/61
    • refactor cli_output to handle string type data by @tkishel in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/62
    • Fixed linting and improved workflow (separate publish workflow for release) by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/64
    • Fix exit code issue for version by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/65

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.33...v0.4.35

    Source code(tar.gz)
    Source code(zip)
  • v0.4.33(Jun 20, 2022)

    Use environment variables for configuration

    By setting the environment variables:

    PC_SAAS_API_ENDPOINT PC_COMPUTE_API_ENDPOINT PC_ACCESS_KEY PC_SECRET_KEY

    And then run pc referring to a configuration called environment:

    pc --config environment <command>

    This fixes #57

    What's Changed

    • suppress both the index and the index column of the data_frame in output by @tkishel in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/51
    • Small bugfix to prevent error while removing index by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/52
    • Slightly improve the scans command to be able to fetch the latest scan results. by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/54
    • Make the CLI available to windows users by @deese in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/53
    • add compliance standard to filter by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/55
    • set default params and turn all_polciies to boolean flags by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/56
    • Use environment variable with --config environment by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/59

    New Contributors

    • @tkishel made their first contribution in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/51
    • @deese made their first contribution in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/53

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.27...v0.4.33

    Source code(tar.gz)
    Source code(zip)
  • v0.4.27(Jun 1, 2022)

    What's Changed

    • Improved logs audit command by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/50

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.26...v0.4.27

    Source code(tar.gz)
    Source code(zip)
  • v0.4.26(May 27, 2022)

    What's Changed

    • Added parameter --alert-rule to alert list command by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/44
    • Improved flattening (maximum level 2, or columns tags$ by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/45
    • Resource URL has been added to alert list command by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/46
    • Bugfix in creating resource url by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/47
    • Improved flattening and use MAX_LEVELS variable by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/48
    • Add discovery command to fetch discovery data by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/49

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v.0.4.18...v0.4.26

    Source code(tar.gz)
    Source code(zip)
  • v0.4.16(May 16, 2022)

    What's Changed

    • Improved alert list; column selection based on regex by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/41
    • Fixed #40

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.15...v0.4.16

    Source code(tar.gz)
    Source code(zip)
  • v.0.4.18(May 16, 2022)

    Release v0.4.18

    What's Changed

    • Extended alert list command with policy.name and policy.description by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/42
    • Fixed deduplication issue by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/43

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.16...v.0.4.18

    Use case

    Suppose you want to get an overview of alerts, use the alert list command. You have several options available to limit the results, for example only select resolved alerts.

    image

    • Tags are automatically extracted to new columns.
    • You can select columns based on regex strings. For example, id shows all columns with id in their name, but ^id shows only columns starting with id.
    • You can use the --filter option to further narrow your search results, even based on dynamically added columns.

    Example

    Get the alerts created in the last 5 minutes, show the id, alertTime, policy.name, policy.description, policy.policyType and resource.name.

    pc --columns ^id$,alertTime,policy.policyType,resource.name,resource.data.tagSets,policy.name,policy.description alert list --unit minute --amount 5

    image

    Source code(tar.gz)
    Source code(zip)
  • v0.4.11(May 3, 2022)

    What's Changed

    • Add config to start a POV by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/33

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.10...v0.4.11

    Source code(tar.gz)
    Source code(zip)
  • v0.4.10(Apr 20, 2022)

    What's Changed

    • Fixed #22 by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/31
    • Added more column flattening (converting nested data to multiple columns)
    • Added usage command to get usage per resource over time
    • Added filter option to be able to filter output (based on Pandas query, see https://sparkbyexamples.com/pandas/pandas-dataframe-query-examples/)

    Both the usage command and the filter need improvement to make it more user friendly. Usage command would need more parameters as input. The filter needs improvement for usability.

    Example

    Usage

    image

    Output

    image

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.9...v0.4.10

    Source code(tar.gz)
    Source code(zip)
  • v0.4.9(Apr 15, 2022)

    What's New

    • It is now possible to get a list of non-compliance resources (hosts, containers, serverless) with monitor compliance command.
    • Parameter is --complianceids
    • Output in whatever you want

    What's Changed

    • Adjust namespace logic by @NJannasch in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/29
    • Fixed autocomplete issue; Added hosts and monitor commands by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/30
    • Added hosts compliance command
    • Added monitor compliance command (parameter --complianceids)

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.8...v0.4.9

    Source code(tar.gz)
    Source code(zip)
  • v0.4.8(Apr 14, 2022)

    What's New

    • Check for new version whenever pc is used
    • Colors used in output for better readability
    image

    What's Changed

    • Update README.md by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/24
    • #22 fixed + colors added by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/23
    • Fixed setup issue and removed ipython by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/26
    • Fixed path to version file by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/27
    • Changed setup (fix pc) by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/28

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.6...v0.4.8

    Source code(tar.gz)
    Source code(zip)
  • v0.4.6(Apr 13, 2022)

    What's New

    • MAX_COLUMNS active on html output
    • MAX_ROWS environment variable added for all outputs (default 1000000)

    What's Changed

    • Update README.md by @kyle9021 in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/18
    • Improved output - fix for issue #14 by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/20

    New Contributors

    • @kyle9021 made their first contribution in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/18

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/compare/v0.4.5...v0.4.6

    Source code(tar.gz)
    Source code(zip)
  • v0.4.5(Apr 11, 2022)

    What's new

    • Read MAX_WIDTH and MAX_COLUMNS environment variables to optionally overwrite default values for console output

    What's Changed

    • initial commit by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/2
    • Create github workflow by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/3
    • Flake8 & Pylint cleanup by @NJannasch in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/4
    • Version update to be able to upload package by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/5
    • Update repository link by @NJannasch in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/6
    • Push pylint towards 10.0 by @NJannasch in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/7
    • Updated readme and added contributing explanation. by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/8
    • Modified stats to be able to add multiple cves by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/9
    • add enable_or_disable_policies functions by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/10
    • add verbose parameter to the cli by @SimOnPanw in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/11
    • Update version.py by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/12
    • Update quality.yml by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/13
    • Improved console output to make it more readable by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/15
    • Feature/flexible vars by @steven-deboer in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/16

    New Contributors

    • @SimOnPanw made their first contribution in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/2
    • @NJannasch made their first contribution in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/4
    • @steven-deboer made their first contribution in https://github.com/PaloAltoNetworks/prismacloud-cli/pull/5

    Full Changelog: https://github.com/PaloAltoNetworks/prismacloud-cli/commits/v0.4.5

    Source code(tar.gz)
    Source code(zip)
Owner
Palo Alto Networks
We ensure each day is safer and more secure than the one before.
Palo Alto Networks
Low-Cost Open Source Ventilator or PAPR

Last updated 2020/04/19 Low-Cost Open-Source Ventilator-ish Device or PAPR NOTE: This is currently an independent project not affiliated with any comm

Johnny Lee 1.7k Dec 21, 2022
WazirX Portfolio Tracker on your Terminal!

If you have been investing in crypto in India, there is a very good chance that you are using WazirX. If you are using WazirX, then you definitely know that there is no P&L report, no green arrows no

Raunit 15 Jan 10, 2022
Juniper Command System is a Micro CLI Tool that allows you to manage your files, launch applications, as well as providing extra tools for OS Management.

Juniper Command System is a Micro CLI Tool that allows you to manage your files, launch applications, as well as providing extra tools for OS Management.

Juan Carlos Juárez 1 Feb 02, 2022
Command Line Manager + Interactive Shell for Python Projects

Manage Command Line Manager + Interactive Shell for Python Projects

Python Manage 123 Aug 28, 2022
Unconventional ways to save an Image

Unexpected Image Saves Unconventional ways to save an image 😄 Have you ever been bored by the same old .png, .jpg, .jpeg, .gif and all other image ex

Eric Mendes 15 Nov 06, 2022
Simple command line tool to train and deploy your machine learning models with AWS SageMaker

metamaker Simple command line tool to train and deploy your machine learning models with AWS SageMaker Features metamaker enables you to: Build a dock

Yasuhiro Yamaguchi 5 Jan 09, 2022
xonsh is a Python-powered, cross-platform, Unix-gazing shell language and command prompt.

xonsh xonsh is a Python-powered, cross-platform, Unix-gazing shell language and command prompt. The language is a superset of Python 3.6+ with additio

xonsh 6.7k Jan 08, 2023
This is a Command Line program to interact with your NFTs, Cryptocurrencies etc

This is a Command Line program to interact with your NFTs, Cryptocurrencies etc. via the ThirdWeb Platform. This is just a fun little project that I made to be able to connect to blockchains and Web3

Arpan Pandey 5 Oct 02, 2022
Todo list console based application. Todo's save to a seperate file.

Todo list console based application. Todo's save to a seperate file.

1 Dec 24, 2021
MsfMania is a command line tool developed in Python that is designed to bypass antivirus software on Windows and Linux/Mac in the future

MsfMania MsfMania is a command line tool developed in Python that is designed to bypass antivirus software on Windows and Linux/Mac in the future. Sum

446 Dec 21, 2022
Investing library and command-line interface inspired by the Bogleheads philosophy

Lakshmi (Screenshot of the lak command in action) Background This project is inspired by Bogleheads forum. Bogleheads focus on a simple but powerful p

Sarvjeet Singh 108 Dec 26, 2022
dotfilery, configuration, environment settings, automation, etc.

┌┬┐┌─┐┌─┐┌─┐┬ ┬┌┬┐┬ ┬┬┌─┐ │││├┤ │ ┬├─┤│ │ │ ├─┤││ :: bits & bobs, dots & things. ┴ ┴└─┘└─┘┴ ┴┴─┘┴ ┴ ┴ ┴┴└─┘ @megalithic 🚀 Instal

Seth Messer 89 Dec 25, 2022
Command-line interface to PyPI Stats API to get download stats for Python packages

pypistats Python 3.6+ interface to PyPI Stats API to get aggregate download statistics on Python packages on the Python Package Index without having t

Hugo van Kemenade 140 Jan 03, 2023
lazy_table - a python-tabulate wrapper for producing tables from generators

A python-tabulate wrapper for producing tables from generators. Motivation lazy_table is useful when (i) each row of your table is generated by a poss

Parsiad Azimzadeh 52 Nov 12, 2022
An open-source CLI tool for backing up RDS(PostgreSQL) Locally or to Amazon S3 bucket

An open-source CLI tool for backing up RDS(PostgreSQL) Locally or to Amazon S3 bucket

1 Oct 30, 2021
Enlighten Progress Bar is a console progress bar library for Python.

Overview Enlighten Progress Bar is a console progress bar library for Python. The main advantage of Enlighten is it allows writing to stdout and stder

Rockhopper Technologies 265 Dec 28, 2022
Python3 library for multimedia functions at the command terminal

TERMINEDIA This is a Python library allowing using a text-terminal as a low-resolution graphics output, along with keyboard realtime reading, and a co

Joao S. O. Bueno 89 Dec 17, 2022
A next-generation CLI and TUI that aims to be your personal assistant for everything competitive programming related. 🚀

Competitive Programming Tool Kit The Competitive Programming Tool Kit (cptk for short), is a command line and terminal user interface (CLI and TUI) th

Alon 4 May 21, 2022
Easily turn single threaded command line applications into a fast, multi-threaded application with CIDR and glob support.

Easily turn single threaded command line applications into a fast, multi-threaded application with CIDR and glob support.

Michael Skelton 1k Jan 07, 2023
Display Images in your terminal with python

A python library to display images in the terminal

Pranav Baburaj 57 Dec 30, 2022