Instal Powershell Module dari Github Repository

Hai yang disana!

Tahun-tahun terakhir Powershell memulai ekspansi ke platform lain dan sekarang bekerja pada Windows, Linux, dan MacOS (Saya bahkan berhasil memulainya pada distro raspberry Pi Debian).

Dan saat ini cara utama untuk menginstal modul adalah Galeri PowerShell tetapi dalam beberapa situasi, masih nyaman untuk menginstal modul langsung dari sumbernya (alasan utama - modul PowerShell utama yang dikonfigurasi untuk MyGet atau NugetServer).

Dan itu bisa menyakitkan untuk menginstal Modul dari GitHub - Anda harus mengunduh arsip, menemukan folder modul ekstrak konten arsip dan kemudian menyalin folder modul ke direktori Powershell Profile.

Selain itu - orang-orang seperti saya tidak ingin membuat repositori terpisah untuk setiap modul (ya, saya suka pendekatan Release-Flow ) jadi unduh dan ekstrak hanya modul-modul yang Anda sukai - bahkan lebih sulit.

Tentu saja, ada beberapa skrip dari internet yang bertujuan untuk mengunduh dan menginstal modul PowerShell dari GitHub tetapi saya tidak menemukan kemungkinan untuk menginstal Modul dari folder Repositori di Github. Ini adalah cara bagaimana memunculkan proyek ` InstallFromGithub` .

Pertama kali saya menggunakan installer ini hanya untuk Modul Powershell saya, tetapi kemudian memutuskan untuk memisahkannya untuk memungkinkan digunakan dalam skrip repositori apa pun.

Temui skrip 'install.ps1'!

Sebagai contoh, mari kita coba menginstal modul Bookmarks dari repo PowershellScripts langsung dari akun GitHub:

Kami hanya perlu mengatur parameter

$user="stadub"; $repo="PowershellScripts" $module="Bookmarks" 

juga, Anda dapat membiarkan variabel $ module kosong untuk menunjukkan modul yang ditempatkan di folder root

Jadi string instalasi adalah:

 iex ('$module="Bookmarks";$user="stadub";$repo="PowershellScripts"'+(new-object net.webclient).DownloadString('https://raw.githubusercontent.com/PsModuleInstall/InstallFromGithub/master/install.ps1')) 

Sekarang untuk memeriksa apakah itu berfungsi, mari kita mengimpor GHiPS dan EventLogDrive

 Import-Module Bookmarks 

Sederhana bukan?

Di bawah tenda, ada skrip pengunduh yang berfungsi pada platform apa pun dengan pemeriksaan kemajuan dan instalasi sehingga Anda tidak akan menulis ulang modul yang ada.

Seperti yang saya sebutkan sebelumnya skrip dipisahkan dari modul lain dan memungkinkan setiap orang untuk menggunakan installer terpadu.

Dan jika Anda memiliki saran atau laporan bug, Anda dapat membuat masalah di repo.

Salam hangat dan selamat coding,
Dima stadub

Source: https://habr.com/ru/post/id476914/


All Articles