Рубрики
Uncategorized

Как вы можете создать пакет сценария для галереи PowerShell

Эта статья описывает, как создавать и публиковать пакет для галереи PowerShell. Помечено PowerShell, DevOps, Учебник.

PowerShell-Tutorials (3 части серии)

TLDR; Эта статья охватывает, как построить пакет для галереи PowerShell. Это отличный способ поделиться своими сценариями и модулями с другими. Вы хотите помочь сообществу, верно? Конечно, вы делаете:)

Вот шаги, которые мы собираемся взять:

  • Автор сценария Отказ Сначала вам нужно создать скрипт. В этом случае мы создаем сценарий, но вы также можете создавать и загрузить модуль в галерею PowerShell.
  • Документировать это Отказ Когда вы документируете свой скрипт, вы делаете это, так что Получить справку будет работать с этим , это очень рекомендуется делать.
  • Подготовьте пакет Отказ Чтобы быть в состоянии загрузить свой скрипт, ему нужен определенный набор метаданных, есть команды, которые помогут вам сделать это.
  • Зарегистрируйтесь на Галерея PowerShell Отказ Это бесплатно подписаться на галерею, но то, что вам нужно от этого, — это ключ API, который поможет вам опубликовать ваш пакет.
  • Опубликовать Отказ Используя команду, вы можете протолкнуть пакет в галерею. В этот момент у вас хвастаются права, а можем показать своих друзей:)
  • Сохранить или установить пакет Отказ Существует два разных подхода, которые вы можете использовать, чтобы потреблять пакет, выберите один.
  • Это оно:)

Сценарий автора

Чтобы автора скрипт, вам нужен файл, окончающийся в .ps1. . Затем вы можете использовать язык сценариев PowerShell, чтобы добавить ваши команды и/или параметры.

Поддержка получить помощь

Чтобы поддержать команду Get-Help, вы хотите добавить некоторую документацию, которая поддерживает. Добавьте, например, вышеупомянутая мета-информация прямо на вершине функции:

<#
.SYNOPSIS

Retrieves a planet

.DESCRIPTION

A command that retrieves a planet by id

.PARAMETER Id
Specifies the record you want back

.INPUTS

Id

.OUTPUTS

Object. 

.EXAMPLE

PS> Get-Planet 1

#>
Function Get-Planet {
  implementation...
}

Документировать его

Прежде чем вы сможете загрузить свой пакет, ему нужны метаданные. Без этой метаданные ваша посылка будет отклонена, если вы попытаетесь его загрузить. Метаданные, которые вам нужны, являются информацией о вещах, таких как версия, автор, компания и описание. То, что вы делаете, это кормить эту информацию в команду и OUT приходит метаданные + уникальный GUID. В этот момент вам нужно добавить эти метаданные в верхнюю часть файла сценария.

Во-первых, давайте генерируем метаданные или информацию скрипта, так как он также называется:

  1. Создайте информацию о сценарии:
   $Parms = @{
       Path = "./new.ps1"
       Version = "1.0"
       Author = ""
       CompanyName = ""
       Description = "Description"
   }
   New-ScriptFileInfo @Parms -PassThru
this creates a file _new.ps1_.

Вы также получите мета информацию в пределах вышеуказанного файла, который выглядит что-то вроде:

Далее вы хотите заполнить более подробную информацию в вышеупомянутой мета информации. Вы хотите убедиться, что у вас есть хорошее описание и теги проекта для лучшей видимости в галерее. Далее вы можете проверить, что файл сценария и его информация о скрипте подтверждают.

  1. Убедитесь, что все хорошо с информацией о сценарии
   Test-ScriptFileInfo -Path ./swapi.ps1

Если все хорошо, вы получите ответ, похожий на:

   Version              Name                      Author               Description
   -------              ----                      ------               -----------
   1.1                  swapi                     author               Description

Отлично, вы готовы к следующему шагу, который должен публиковать свой скрипт в галерею.

Подпишитесь на галерею PowerShell

  1. Перейдите к https://www.powershellgallery.com/ и создать пользователя.
  2. Выберите опцию Меню клавиш API в верхней правой части страницы.
  3. Выберите «Создать» и разверните этот раздел. Здесь вы столкнулись со следующими полями:
  1. Заполните следующие значения:

и выберите «Создать». Теперь скопируйте эту клавишу API, вы будете использовать его рядом.

  1. Опубликуйте свой скрипт, используя Опубликовать сценарий :

    Это должно занять несколько секунд, когда-то сделано, вы сможете найти свой скрипт.

  2. В Галерее PowerShell выберите «Управление пакетами», разверните «Опубликованные пакеты», есть ваш пакет, дайте себе высокую пятерку, хорошо сделано !!:)

Потребляйте вашу пакет

Чтобы гарантировать, что все работает, как предполагалось, мы постараемся потреблять наш пакет, загрузив его из галереи PowerShell и используете ее на нашей машине. У нас есть два варианта, как это сделать:

  • Установите скрипт Отказ Это поместит сценарий в определенных папках загрузки. Нам все равно надо иметь источник, чтобы его использовать.
  • Сохранить скрипт Отказ Это позволит сохранить скрипт в пункт назначения на нашей машине, который мы решаем, нам все еще нужно точечный источник, чтобы использовать его.

а) Установите скрипт

  1. Установите из галереи PowerShell:

    На данный момент ваш сценарий был установлен на вашем компьютере, в определенном папке скрипта. Далее необходимо найти эту папку скрипта, чтобы вы могли точечный источник и использовать содержимое сценария.

  2. Убедитесь, что установить с Get-InstalledScript

   Get-InstalledScript

Отлично, вы смогли получить некоторую информацию о том, что пакет (ваш скрипт) был загружен из галереи PowerShell. Далее необходимо найти путь установки сценария, чтобы он мог его использовать.

  1. Чтобы использовать скрипт, нам сначала нужно локализовать его с помощью Get-StallScript :
   (Get-InstalledScript -Name "swapi").InstalledLocation

Это говорит что-то вроде:

   /Users//.local/share/powershell/Scripts
  1. Оттуда точечный источник, используйте ответ на последнем шаге и источник точка Это так:
   . /Users/

Обратите внимание на использование «.» А потом путь как второй аргумент, это то, что подразумевается под точечным источником.

На данный момент ваш сценарий находится на вашей машине, содержание его доступно для использования.

  1. Чтобы проверить это, попробуйте запустить Get-Planet Вы избрали, чтобы скачать Swapi.
   Get-Planet 2

Это должно дать ответ JSON.

b) Сохранить скрипт, а затем точечный источник

При этом вторым подходом вместо установки сценария вы бы сохранили его на диске в указанном вами месте. Большая разница состоит в том, что он не заканчивается в заранее определенном расположении установки, а скорее в том месте, которое вы выбираете.

   Save-Script -Name swapi -Repository PSGallery –Path ./package-swapi -Force

создает Пакет-Swapi подкаталог и помещает там скрипт. Таким образом, ваша файловая система выглядит так:

   /package-swapi
     swapi.ps1 
  1. источник точек с:
   cd package-swapi
   . swapi.ps1
  1. Чтобы проверить это, попробуйте запустить Get-Planet Вы избрали, чтобы загрузить пакет SWAPI.
   Get-Planet 2

Это должно дать ответ JSON.

Резюме

Поздравляем, вам удалось создать пакет для галереи PowerShell, загрузите его в галерею и удалось загрузить и использовать указанный пакет.

Вы прошли долгий путь, теперь построить свои собственные пакеты, поделитесь их с сообществом и дайте мне знать.

Спасибо за чтение:)

PowerShell-Tutorials (3 части серии)

Оригинал: «https://dev.to/azure/create-a-script-for-powershell-gallery-19m0»