My goal is using Gitea as a registry for custom PowerShell modules.
To a certain level it also works fine, but some things don’t work as expected and I am not sure if it is a bug, a limitation or wrong usage.
I created this repo with a test module: GitHub - marvint24/PWSHTest
Registering, publishing works fine, but installing fails.
Install-Module -Name PWSHTest -Repository Gitea
Result:
Install-Package: No match was found for the specified search criteria and module name 'PWSHTest'. Try Get-PSRepository to see all
available registered module repositories.
But I can find it with:
Find-Module -Name * -Repository Gitea
Result:
Version Name Repository Description
------- ---- ---------- -----------
0.1.3 PWSHTest Gitea A test PowerShell module
If I try to find it directly by name Find-Module -Name PWSHTest -Repository Gitea
it also fails.
I wanted to know if it is a problem with Gitea or with my module / publish process and I installed Sonartype Nexus.
This seams to work fine, no problems with finding or installing modules.
After this I went down the PowerShell Module rabbit hole deeper and found out that there are also different modules in PowerShell to handle modules. This is what I found out:
Name | PowerShell Version | Commands | Works with Gitea |
---|---|---|---|
PowerShellGet |
5.1 - Installs itself on first run 7 - Installs itself on first run |
Register-PSRepository, Unregister-PSRepository Get-PSRepository Publish-Module Install-Module, Uninstall-Module Find-Module |
Publish ✅ Find ➖ Only * finds the modules Install ❌ Update ❌ |
PSResourceGet |
5.1 -
Install
7 - Already installed |
Register-PSResourceRepository, Unregister-PSResourceRepository Get-PSResourceRepository Publish-PSResource Install-PSResource, Uninstall-PSResource Find-PSResource |
Publish ✅ Find ➖ Find * doesn't work Install ✅ Installing dependencies is not supported Update ✅ Installing dependencies is not supported |
Does anyone have tips or directions what I could do next? With PSResourceGet I found a way that works, but I think it is not ideal.