[Devember 2021] Linode Powershell Module

Please accept this late submission for consideration in the Devember challenge. I missed out on last year’s challenge, so I was determined to participate this time around.

Although my heart is open source, MS pays the bills (only just), so the Power of the Shell compels me! To learn more about PS, and in honor of our generous benefactor Linode, I’ve chosen to create a Powershell module for interacting with the Linode API.

Because I’m short on time and ability, my plan is to make a MVP (minimally viable product) that will serve as proof of concept. The goal is to create a Powershell module to leverage the Linode API. The idea is to use Invoke-RestMethod to send JSON data to Linode endpoints. In the end, I want to create a new Linode VM using Powershell, destroy it using the same, and who knows what other cool stuff?

4 Likes

The whole point of the challenge is to do something. Doesn’t matter if you’re a bit late, your submission is definitely welcome and accepted.

Also, really enjoyed your prose. I don’t personally have use for this project, but I think it’ll be very cool.

2 Likes

Progress! I signed up for a free trial on Linode

1 Like

I created a github account and hope to make my first commit soon!

1 Like

huzzah! yay powershell!

1 Like

Hows this going? It would be nice to see it completed by the end of the month (and I think that is doable by your plan).

1 Like

Here it is: The Windows Powershell module for the Linux Cloud Hosting Provider.

https://github.com/thepowerstring/LinodePS

Still very much a work in progress, but hopefully the few cmdlets included so far will serve as proof of concept.

To run, copy ‘LinodePS’ folder to location discoverable by Powershell ( on Windows, I used ‘C:\Users\powerstring\Documents\WIndows Powershell\Modules’ ). Then, run “Import-Module .\path\to\folder\LinodePS.psm1” where “\path\to\folder” is the path you copied the LinodePS folder to. Once the module is imported to your Powershell session, you should have access to four new cmdlets:

Get-LinodeImages - Get list of available Linode images
Get-LinodeRegions - Get list of available Linode regions
Get-LinodeTypes - Get list of available Linode types

Use the output of the above cmdlets plus your Linode API key to create a new Linode Linux Node using:
New-LinodeInstance

Disclaimer: You will be charged by Linode for creating a new node

A big thanks to Linode for the cloud credits and for sponsoring the news. Likewise to the Level One community for the encouragement.

2 Likes