You ever created a PS script and wanted it to share. What best place would it be other than the PowerShell Gallery itself!
Let’s go through this article to know how I listed my own PS script on PSGallery.
- Go to https://www.powershellgallery.com/ and sign in or sign up.
- Go to API Keys to create a API Key to be used later.

- Click Create and provide Key Name = script_name and glob pattern = *

- Now, I have my script ready with me. However, before uploading the script, I must add some metadata to my script like Author, Description, Version etc.
- For that, I have used New-ScriptFileInfo method. I put the values as per my need and run them inside Powershell console.
$Parms = @{
Path = "C:\Users\mayank.goyal1\Downloads\scriptInfo.ps1"
Version = "2.1.0"
Author = "Mayank Goyal"
Description = "This script converts vRO Package directly into JSDoc website by connecting to vRO. Requires nodejs and jsdoc module installed. Create new files *.html & *.js directly from vRO with JSDoc annotation. It consumes a package name which should exist in vRO with all the Actions you want to document and creates .js files with JSDoc Annotations."
ProjectUri = "https://github.com/imtrinity94/vRODoc"
}
New-ScriptFileInfo @Parms
Get-Content -Path C:\Users\mayank.goyal1\Downloads\scriptInfo.ps1- This creates a new file C:\Users\mayank.goyal1\Downloads\scriptInfo.ps1. Opening this file show me this content.
<#PSScriptInfo
.VERSION 2.1.0
.GUID 7202df73-3b8c-4616-adeb-b6d9b97a63c7
.AUTHOR Mayank Goyal
.COMPANYNAME
.COPYRIGHT
.TAGS
.LICENSEURI
.PROJECTURI https://github.com/imtrinity94/vRODoc
.ICONURI
.EXTERNALMODULEDEPENDENCIES
.REQUIREDSCRIPTS
.EXTERNALSCRIPTDEPENDENCIES
.RELEASENOTES
.PRIVATEDATA
#>
<#
.DESCRIPTION
This script converts vRO Package directly into JSDoc website by connecting to vRO. Requires nodejs and jsdoc module installed. Create new files *.html & *.js directly from vRO with JSDoc annotation. It consumes a package name which should exist in vRO with all the Actions you want to document and creates .js files with JSDoc Annotations.
#> - Copy this file’s content and put it on top of your original script.

- Now, it’s time to publish our file. Use Publish-Script command along with file path and API key that I have handy already.
Publish-Script -Path "C:\Users\mayank.goyal1\Downloads\vRODoc.ps1" -NuGetApiKey oy2hxalemh46n4ghty*****************************64 -Repository PSGallery- This should have worked, but it didn’t. Got this error no matter from where I run it.
Failed to publish script ‘vRODoc’: ‘The underlying connection was closed: An unexpected error occurred on a send.
- The first problem might be that my system runs TLS11 instead of TLS12, to fix this run the following command:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls -bor [Net.SecurityProtocolType]::Tls11 -bor [Net.SecurityProtocolType]::Tls12The second problem might be that my PowerShellGet Module is not up to date. To fix this I run the following command:
Install-Module PowerShellGet -Force -AllowClobber -Scope CurrentUser- Restart PS terminal and run this command again. This time it worked.

BINGO! It’s published for anyone to use.

Discover more from Cloud Blogger
Subscribe to get the latest posts sent to your email.










