After playing with OneGet and PowerShellGet for some time now I wanted to dive into the OData feed that both new PowerShell v5 preview features are using.
Let me first summarize OneGet and PowerShellGet.
OneGet is a new way to discover and install software packages from around the web. With OneGet, you can:
This first version of OneGet installs and searches software from Chocolatey repositories. Support of additional repositories will come in subsequent versions.
Both use an OData feed, Open Data Protocol (OData) is a data access protocol initially defined by Microsoft. The protocol was designed to provide standard CRUD access to a data source via a website. If you want to learn more about OData just go to wikipedia.
Now we know, we can access the OneGet and PowerShellGet repositories using an OData feed we can use the PowerShell OData Explorer. With the 'OData Explorer' PowerShell application we can browse the OData Services. After downloading and unzipping the OData Explorer we need to add the two OData Services from OneGet and PowerShellGet in the ODataServices.csv file.
PowerShell OData Explorer
Name, uri NetFlix, "http://odata.netflix.com/Catalog" Northwind, "http://services.odata.org/Northwind/Northwind.svc/" TechEd2010, "http://odata.msteched.com/sessions.svc/" WorldCup, "http://www.openligadb.de/Webservices/OData.svc/" StackOverflow, "http://odata.stackexchange.com/stackoverflow/atom" SuperUser, "http://odata.stackexchange.com/superuser/atom" ServerFault, "http://odata.stackexchange.com/serverfault/atom" "Meta StackOverflow", "http://odata.stackexchange.com/meta/atom" Locations, "http://ogdi.cloudapp.net/v1/dc" Chocolatey, "http://chocolatey.org/api/v2/" Nuget, "http://www.nuget.org/api/v2/" PowerShellget, "https://msconfiggallery.cloudapp.net/api/v2/"
Open the .\View-OData.ps1 PowerShell script and start browsing.
You can browse the Chocolatey or NuGet OData feed for the OneGet Packages or for the PowerShell Modules you can browse the PowerShelGet OData feed.
After browsing through the OneGet and PowerShellGet OData repositories would not it be cool if we can “just” navigate those OData feeds like we do with our other PowerShell Providers?
OData PowerShell provider
This can be done using the PowerShell OData Provider Module. The OData PowerShell provider allows you to mount OData feeds as drives in your powershell session. This enables simple and intuitive access to the catalogs, collections, and entities in the feed using the same cmdlets you use for working with files. Download, unzip and install the PowerShell OData Provider and get started navigating your OneGet and PowerShellGet OData feed just like any other PowerShell Provider.
Have fun browsing those PowerShellGet and OneGet OData feeds using the PowerShell OData Provider Module.