Skip to content

felipegodias/PoshPipelines

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Logo

PoshPipelines

Requirements

  • PowerShell 7.x
winget install Microsoft.PowerShell
Install-Module -Name powershell-yaml -AllowClobber -Scope CurrentUser -Force

Install

git clone git@github.com:felipegodias/PoshPipelines.git
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted

Powershell Profile

Import-Module <REPOSITORY_PATH>/PoshPipelines.psm1 -Force -ArgumentList <SETTINGS_FILE_PATH>

Usage

Settings.yaml

---
Pipelines:
    pipeline_foo:
        Description: "Prints Hello World"
        Steps:
            - Command: "Write-Host Hello World"
    pipeline_bar:
        Description: "Prints Steps Locations"
        WorkingDirectory: "C:/"
        Steps:
            - Command: "Get-Location | Write-Host"
            - Command: "Get-Location | Write-Host"
              WorkingDirectory: "C:/Users"
            - Command: "Get-Location | Write-Host"

Get-Pipeline (gpi)

Get the details of the given pipeline. If the pipeline does not exists or ain't passed to the function this will show all possible pipelines that can be invoked.

Get-Pipeline <PIPELINE_NAME>
gpi <PIPELINE_NAME>

#EXAMPLE 1
Get-Pipeline

#OUTPUT 1
#Name         Description
#----         -----------
#pipeline_bar Prints Steps Locations
#pipeline_foo Prints Hello World

#EXAMPLE 2
Get-Pipeline pipeline_foo

#OUTPUT 2
#Name             : pipeline_foo
#Description      : Prints Hello World
#WorkingDirectory : 

#Command                WorkingDirectory
#-------                ----------------
#Write-Host Hello World

#EXAMPLE 3
gpi pipeline_bar

#OUTPUT 3
#Name             : pipeline_bar
#Description      : Prints Steps Locations
#WorkingDirectory : C:/

#Command                   WorkingDirectory
#-------                   ----------------
#Get-Location | Write-Host
#Get-Location | Write-Host C:/Users
#Get-Location | Write-Host

Invoke-Pipeline (ipi)

Invokes all the steps from the given pipeline.

Invoke-Pipeline <PIPELINE_NAME>
ipi <PIPELINE_NAME>

#EXAMPLE 1
Invoke-Pipeline pipeline_foo

#OUTPUT 1
#Hello World

#EXAMPLE 2
ipi pipeline_bar

#OUTPUT 2
#C:\
#C:\Users
#C:\

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published