Skip to content

ciscomanagedservices/sxo-analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 

Repository files navigation

GitHub Action for SecureX Orchestrator Workflow Analyzer

published

This repository houses a GitHub Action wrapper for the Workflow Analyzer available here, that you can use in a CI/CD pipeline with your SecureX Orchestrator (SXO) Atomic Actions & Workflows.

By using this GitHub Action, you can have the Workflow Analyzer automatically run on each commit you make to the repository to check if your workflows & atomic actions conform to Cisco recommended best practices.


Features:

  1. Ability to run conditionally
    Don't want the analyzer to run for some workflows? No problem. Just add !#NOANALYZER to your workflow description before you commit to the repository and we'll skip it.

  2. Commit Context Aware
    The analyzer will only run for workflows/atomic actions in a given commit and not everything in the repository. This ensures we don't create repeat issues.

  3. Ability to automatically create issues for items that do not conform to best practices
    We'll create an issue per run with an itemized list of checks that failed. A sample issue can be found here. If no issues are found, i.e. all checks pass in all workflows in the commit context, an issue will be created and auto-closed. This way, you can still audit checks that passed and don't warrant any action.

  4. Latest code, always
    We pull the latest analyzer code on every run. As new best practices & checks are added to the workflow analyzer over time, this action will always be up-to-date!


Steps to use:

If you aren't already using one or more GitHub Actions in your repository:

  1. When creating a new repository to commit your SXO workflows/atomic actions to, select ciscomanagedservices/sxo-analyzer as the repository template
  2. This will initialize your new repository with the contents of this repository, i.e. with the .github folder and a README.md file. You're free to discard the README.md file or overwrite it with your own.

If you are already using one or more GitHub Actions in your repository:
Copy the Analyzer Action and add it under .github/workflows/ in your own repository.


Usage Guidance:

  1. Any limitations seen in the original analyzer code will exist in this GitHub Action as well. If you have any feedback to improve the workflow analyzer, please create an issue on the original repository here. If you have any feedback pertaining to this action, please create an issue on this repository.

  2. Please be aware of pricing & usage limits associated with using GitHub Actions.

  3. No changes are required on SXO for this action to work. You'd setup the Git Endpoint for your repository on SXO and commit as you typically do.

  4. Let the world know you've analyzed your workflows by adding a badge to your repository! 🎉

    sxoanalyzed

    Copy this code to your README: [![sxoanalyzed](https://raw.githubusercontent.com/ciscomanagedservices/sxo-analyzer/main/.github/workflows/sxo-analyzer-badge.svg)](https://github.com/ciscomanagedservices/sxo-analyzer)


Contributors:

  1. Aman Sardana (amasarda@cisco.com)
  2. Anant Nambiar (ananambi@cisco.com)

Cisco CX Managed Services - Operate, August 2021