Skip to content

Home

PaloAltoNetworks

scm-config-clone: Clone configuration objects between SCM tenants

Contributors Forks Stars Issues License


Documentation : https://cdot65.github.io/scm-config-clone/

Source Code : https://github.com/cdot65/scm-config-clone


scm-config-clone is a command-line tool designed to seamlessly clone configuration objects between Palo Alto Networks Strata Cloud Manager (SCM) tenants. It simplifies the process of migrating configurations such as address objects and address groups from a source tenant to a destination tenant, enhancing efficiency and reducing manual efforts.

Key Features

  • Effortless Cloning: Seamlessly clone address objects and address groups from one SCM tenant to another.
  • User-Friendly CLI: Built with Typer for an intuitive command-line experience.
  • Secure Authentication: Generate a settings.yaml file to securely store your SCM credentials.
  • Customizable Folders: Specify source and destination folders to organize your configurations.
  • Extensible Design: Structured to allow easy addition of new commands and features in the future.

Workflow

  1. Authentication: Use the settings command to generate a settings.yaml file with your SCM credentials, and other tool options.
  2. Cloning: Use the appropriate command to clone configurations from the source to the destination tenant.
  3. Verification: Verify the cloned configurations in the destination SCM tenant.

Execution

scm-config-clone can be executed using Python in a virtual environment:

pip install scm-config-clonescm-clone --help
Usage: scm-clone [OPTIONS] COMMAND [ARGS]...

Clone configuration from one Strata Cloud Manager tenant to another.

╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --install-completion Install completion for the current shell. │
│ --show-completion Show completion for the current shell, to copy it or customize the installation. │
│ --help Show this message and exit. │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ address-groups Clone address groups. │
│ addresses Clone addresses. │
│ anti-spyware-profiles Clone anti-spyware profiles. │
│ application-filters Clone application filters. │
│ application-groups Clone application groups. │
│ applications Clone applications. │
│ decryption-profiles Clone decryption profiles. │
│ dns-security-profiles Clone DNS Security profiles. │
│ edls Clone external dynamic lists. │
│ hip-objects Clone HIP objects. │
│ security-rules Clone security rules. │
│ service-groups Clone service groupss. │
│ services Clone services. │
│ settings Create a `settings.yaml` file with configuration needed to accomplish our tasks (required one-time setup). │
│ tags Clone tags. │
│ url-categories Clone URL categories. │
│ vulnerability-profiles Clone vulnerability protection profiles. │
│ wildfire-profiles Clone Wildfire AV profiles. │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

For more detailed usage instructions and examples, refer to the User Guide.


Contributing

Contributions are welcome and greatly appreciated. Visit the Contributing page for guidelines on how to contribute.

License

This project is licensed under the Apache 2.0 License - see the License page for details.