Import and Use Skillets

Printer Friendly Page

NOTE: Examples shown in this article are specific to the panHandler application. Installation and getting started with Panhandler can be found in the Panhandler quick start guide or at https://panhandler.readthedocs.io.

 

Import Skillets

In order to import skillets, both the GitHub clone URL and the branch name are required. This information is captured in the community skillet articles and should be included in personal skillet contributions.

 

Skillet details for GitHubSkillet details for GitHub

 

In Panhandler, choose "Import Skillets"

 

Panhandler MenuPanhandler Menu

 

Then enter the GitHub "clone URL" not the website url. Either copy from the skillet article or if using github.com look for the green box labeled "Clone or Download"

 

Import Repository - Enter a valid git url and desired branch belowImport Repository - Enter a valid git url and desired branch below

 

NOTE: This will default to the master branch. If a different branch is required, go to Skillet Repositories, select skillet repo Details. Click on the branch name to jump to the bottom of the page where you can checkout the needed branch.

 

Imported Skillets can be updated with Update to Latest found in the Skillet Repository details page

 

Skillet Collections

The common way to play skillets is from the Skillet Collections page and then skillet selection. Skillets can be filtered by type or found with search options. Within a named collection is a list of playable skillets.

 

Skillet CollectionSkillet Collection

 

Click Go to play a specific skillet from within its collection.

 

Based on the skillet design the user will be presented with various web form entries and target IP/user/password inputs as API credentials.

 

What to Expect based on the Type of the Skillet

'panos' or Panorama

This type of skillet uses the NGFW or Panorama API to push one or more configuration snippets to the device. Target IP, username, and password are used to generate the API key prior to loading the snippets. The user has the option to commit, fast commit, or not commit after the snippets are loaded along with prior config backup.

 

These skillets also support operational commands and additional config actions such as delete, edit, and move.

 

Validation

these skillets use a source config file loaded in offline mode or captured from the device in online mode. Online mode requires the target IP, username, and password to create the api key and export the start-up or running configuration for analysis.

 

Post analysis results show pass/fail responses for each test criteria along with detailed messages and documentation links for next steps such as config remediation.

 

Rest

REST skillets do not have device logic included and consist of a sequence of one or more stateless API calls. Where required for 'panos' or Panorama, the target IP, username, and password are entered for api key generation and capture for subsequent api calls.

 

The rest response can be parsed and displayed or passed to other skillets as input variables. A common type of rest skillet is an API call emulated the '?' complete CLI option generating a list of responses used in dropdown lists.

 

Python

Used for stateful or more complex needs, these skillets provide for a python virtual environment and GUI on top of the python code. This simplifies distribution of python code with extensive documentation for installation and CLI usage. Skillet variables are passed to the code as arguments.

 

When running a python skillet the user will see the python virtual environment created including installation of required packages. Then the code will run. Screen-based status updates can be viewed on the screen during update intervals.

 

Template

These are basic rendering of text content using jinja-based variable substitutions. This multi-purpose skillet type can be used for output messages, CLI set commands, and any other text context capture requiring user-based variable inputs. 

 

All output is rendered on screen.

 

Terraform

Similar to python, provides for a UI interface on top of Terraform templates. User capture variable inputs are passed to the Terraform platform to instantiate devices in various private and public cloud deployments.

 

Workflow

Workflows provide a simple model for chaining together a set of skillets of various types. Simple conditionals can be used to determine if a skillet should be played.

Ask Questions Get Answers Join the Live Community
Version history
Revision #:
5 of 5
Last update:
‎01-27-2020 10:45 AM
Updated by:
 
Contributors