Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/Phil-Factor/PSYaml

A Powershell module to convert YAML documents to and from PowerShell objects
https://github.com/Phil-Factor/PSYaml

Last synced: 9 days ago
JSON representation

A Powershell module to convert YAML documents to and from PowerShell objects

Awesome Lists containing this project

README

        

# PSYaml

## Build Status

|Branch | Status |
|-------|:--------:|
|Master |[![AppVeyor build status](https://ci.appveyor.com/api/projects/status/github/pezhore/PSYaml?branch=master&svg=true)](https://ci.appveyor.com/project/pezhore/PSYaml/branch/master)|

## Introduction
This module will help users convert from/to YAML. For more information see [the documentation](./Documentation.md) or the [legacy documentation](./Legacy_Documentation.adoc).

Please note that the **Master** branch has the latest, ready-for-production version. The **release/stage** branch is the holding ground for master merges where integration testing will take place. Other branches with active development will be denoted by having a prefix ( **feature/**, **bugfix/**, **release/**, etc) followed by an unique identifier. Nothing is merged into **release/stage** branch without code review, and only code that passes testing in the **release/stage** branch will be merged into **master**.

## Features
* Fancy Logo
* Bundled binary
* Pester Testing

## ToDo
* Clean up documentation

## Example Usage
```PowerShell
import-module psyaml
$yamlString = @"
anArray:
- 1
- 2
- 3
nested:
array:
- this
- is
- an
- array
hello: world
"@
$YamlObject = ConvertFrom-YAML $yamlString
ConvertTo-YAML $YamlObject
```

## Contact Information
Author: Phil-Factor ([email protected])

## Release Notes
| Version | Change Log |
| :-------: | ----------------------------------------------------------------- |
| 1.0.3 | Closed the open YAML file if error occurs in it during parsing |
| 1.0.2 | Reformated several sections for readability, added pester tests |
| 1.0.1 | Converted single psm1 file to multiple public/private functions |

## Installation
### One time setup
* Download/clone the repository
* Copy the PSYaml folder to a module path (e.g. `$env:USERPROFILE\Documents\WindowsPowerShell\Modules\`)
* Alternatively, in the PS-PSYaml folder use PSDeploy (`Invoke-PSDeploy -Path .\PSDeploy\`)

### Automated Install
* Assuming you have PowerShell v5 and a Nuget Repository configured, use the built in Module management (`Install-Module PSYaml`)

## Import the module.
`Import-Module PSYaml #Alternatively, Import-Module \\Path\To\PSYaml`

## Get commands in the module
`Get-Command -Module PSYaml`

## Get help
`Get-Help ConvertFrom-Yaml -Full`
`Get-Help about_PSYaml`