melmorabity / pre-commit-psscriptanalyzer

pre-commit Git hooks to check and format PowerShell code

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

pre-commit-psscriptanalyzer

Pre-Commit

This project provides pre-commit hooks to lint and format PowerShell code, using the PSScriptAnalyzer static code checker.

Setup

To activate the hooks, add the following lines to the repos list in the project's .pre-commit-config.yaml file:

---
repos:
  - repo: https://github.com/melmorabity/pre-commit-psscriptanalyzer
    rev: v1.0.0
    hooks:
      # Check PowerShell code
      - id: psscriptanalyzer-check
      # Format PowerShell code
      - id: psscriptanalyzer-format

These hooks require PowerShell to run.

Alternatively use this to run the hooks with Docker (so no dependency on PowerShell is needed):

---
repos:
  - repo: https://github.com/melmorabity/pre-commit-psscriptanalyzer
    rev: v1.0.0
    hooks:
      # Check PowerShell code
      - id: psscriptanalyzer-check-docker
      # Format PowerShell code
      - id: psscriptanalyzer-format-docker

Supported hooks

psscriptanalyzer-check

The psscriptanalyzer-check hook performs checks on PowerShell code, based on selected best practice rules. It supports the following options from the PSScriptAnalyzer function Invoke-ScriptAnalyzer:

The psscriptanalyzer-check-docker hook supports the same options.

psscriptanalyzer-format

The psscriptanalyzer-format formats PowerShell code to a canonical format. It supports the following options from the PSScriptAnalyzer function Invoke-Formatter :

The psscriptanalyzer-format-docker hook supports the same options.

Copyright and license

© 2023 Mohamed El Morabity

Licensed under the GNU GPL, version 3.0 or later.

About

pre-commit Git hooks to check and format PowerShell code

License:GNU General Public License v3.0


Languages

Language:PowerShell 82.4%Language:Dockerfile 17.6%