問題タブ [powershellget]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
7772 参照

powershell - PowerShellGet 用の純粋な powershell Nuget モジュールを作成する

私が欲しいもの

ビルド システムで使用するために、多数の PowerShell スクリプトを Nuget パッケージとして公開したいと考えています。

PowerShellGetを使用して、インストール作業とバージョン管理を行いたいと考えています。

これらのスクリプトを Visual Studio ソリューションの一部にするのではなく、スタンドアロン スクリプトとして使用したいと考えています。

利用シーン

どのシステムでも、構成された Nuget プロバイダーを使用して、ユーザーは次を実行します。

その瞬間から、そのモジュールからのすべてのエクスポートは、このユーザーが永続的に利用できます。また、ユーザーはそのコマンドを再度呼び出して、それらのスクリプトのバージョンを更新することもできます。

私がしたこと

ここでパッケージの現在の状態を見つけることができます: GitHub

  1. Nuget プロバイダーをローカル Nuget サーバーに追加して構成しました

    この呼び出しを行うにはGet-PackageProvider -Name NuGet -ForceBootstrapSet-PSRepository -Name My_Nuget_Repo -SourceLocation http://my-nuget/api -InstallationPolicy Trusted

  2. によってローカルにインポートできる適切なモジュールを作成しましたImport-Module

  3. そのモジュールでNugetパッケージを作成して公開しました

問題

Install-Moduleコマンドレットでそのパッケージをインストールでき、Get-InstalledModuleリストの後半で確認できます。

ただし、利用できる機能はありません。

また、何があってInstall-Moduleも、私のパッケージからスクリプトを呼び出さないでください:

  • ScriptsToProcessから呼び出していないMyModule.psd1
  • フォルダInstall.ps1から呼び出していませんtools
  • フォルダInit.ps1から呼び出していませんtools
  • モジュールによってエクスポートされたコマンドレットは使用できず、モジュールはによってインポートできませんImport-Module

(Visual Studios からインストールした場合、同じパッケージが正しく動作しInstall-Package MyModule、スクリプトが呼び出され、PowerShell モジュールがインポートされます)。

調査

PowerShellGetに基づいているためOneGet、問題はInstall-Packageコマンドレット (コマンドレット内で呼び出されますInstall-Module) にあるようです。

Install-Package MyModuleVisual Studio からInstall.ps1実行しInit.ps1ていて、呼び出されたとき。しかし、純粋な PowerShell からの同じコマンドは何もしません。

0 投票する
5 に答える
12101 参照

powershell - Register-PSRepository の無効な Web Uri エラー

Windows の 11 月の更新 (PackageManagementおよびPowerShellGet1.0.0.1 バージョンのモジュール) の後、HTTPS NuGet サーバーを PSRepository として登録できなくなりました。

エラーを返します:

0 投票する
4 に答える
29812 参照

powershell - Install-PackageProvider は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません

PowerShell ギャラリーの Get Started をフォローしています。これは、PowerShellGet モジュールが Windows 10 に存在することを示しています (これを使用しています - ビルド 14721)。確認するために、PowerShell v5 を実行しています。

PowerShell ギャラリーの開始には、次のように記載されています。

PowerShellGet では、NuGet プロバイダーが PowerShell ギャラリーと連携することも必要です。NuGet プロバイダーが次のいずれかの場所にない場合、PowerShellGet を初めて使用するときに、NuGet プロバイダーを自動的にインストールするように求められます

これらの場所には何もありません:

Get Started with PowerShell Galleryには、次のように記載されています。

または、Install-PackageProvider -Name NuGet -Force を実行して、NuGet プロバイダーのダウンロードとインストールを自動化できます。

私がそれを試してみると:

私はとても混乱しています。私は PowerShell v5 を持っていますが、PowerShellGet という本来あるべきものがすべて揃っていないようです。

誰かが理由を説明できますか?

0 投票する
1 に答える
1133 参照

azure-devops - VSTS ホスト エージェントでの PowerShellGet の使用

ビルド プロセスで Visual Studio Team Services (VSTS) がホストするビルド エージェントを使用しています。私のビルドは主に、git にあるスクリプトを呼び出す「PowerShell」ステップに依存しています。このスクリプト内から、PowerShellGet を使用して PowerShell モジュールを管理したいと考えています。たとえば、実行するだけでpscxをインストールできるようにしたいと思います

PowerShellGet残念ながら、ホストされたエージェントは PowerShell 4 を使用しており、モジュールがインストールされていません。そのため、Install-Module機能は使用できません。

VSTS でホストされたエージェントで PowerShellGet モジュールを使用する提案はありますか? このマシンの管理者権限がないため、PowerShell 4 用の PowerShellGet をインストールする msi をインストールできないことに注意してください。

0 投票する
0 に答える
212 参照

powershell - PowerShell Register-PSRepository セットの優先度

2 つの PowerShell リポジトリがインストールされています。Unregister-PSRepositoryコマンドを使用して既定のパッケージ フィード ( https://www.powershellgallery.com/api/v2/ )をアンインストールすることはできず、既定のパッケージ フィードを介してパッケージを取得したくありません。パッケージがインストールされるパッケージフィードよりも優先順位を設定することは何とか可能ですか?

0 投票する
2 に答える
3543 参照

powershell - モジュールから関数をインポートしないPowershell

ここで NuGet フィードをセットアップしようとしていますが、うまくいきました。フィードからモジュールをインストールしました

しかし、Get-Module を実行すると、関数が取得されず、それはマニフェストですか?

手動でインストール場所に移動し、手動でインポートする場合

Import-Module私のマニフェスト ファイルにはこれらの行があるため、正しく動作しない理由がわかりません。

FunctionsToExport = '*'

CmdletsToExport = '*'

0 投票する
1 に答える
759 参照

powershell - .exe または .msi から Package Management/PowerShellGet/OneGet パッケージを作成するにはどうすればよいですか?

Package Management (以前の PowerShellGet (以前の OneGet)) を使用してパッケージをインストールする方法については、たくさんの情報を見つけることができますが、それらのパッケージの作成に関する情報はほとんど見つかりません。

コマンドレットを使用して PowerShell モジュールを公開する方法を説明しているthisを見つけましPublish-Moduleたが、他の種類のパッケージを作成する方法に関する情報は見つかりませんでした。

具体的には、.MSI と .EXE の 2 つのタイプを作成したいと考えています。.EXE はシステムのどこかにインストールする必要があるだけで、ユーザーが実行できるように PATH 環境変数を更新する機能が必要です。.MSI については、(msiexec を使用して) インストールするのが理想的ですが、それが不可能な場合は、他の手段を使用できます。

私が見つけることができる唯一のリモート関連の情報は Chocolatey からのものです。これは、Package Management より前のシステムですが、Package Management で動作します (多分? ちょっと? よくわかりません?)。Chocolatey はパッケージを作成できますが、Package Management 用のパッケージを作成する方法は本当にそれしかないのでしょうか?

これらのパッケージング タスクを実行する方法に関する情報はどこにありますか?

0 投票する
1 に答える
1712 参照

windows - モジュール 'PowerShellGet' で 'Save-Module' コマンドが見つかりましたが、モジュールを読み込めませんでした

パワーシェルでコマンドを実行すると Save-Module -Name ACMESharp -Path <path>

次のようなエラーが表示されます。

モジュール 'PowerShellGet' で 'Save-Module' コマンドが見つかりましたが、モジュールを読み込めませんでした。

そこでスクリプトを実行してみると Import-Module PowerShellGet 、ステータスが「制限付き」になっているのは実行ポリシーの問題であることがわかりました。