Paketmanifestvärden som påverkar PowerShell-galleriet användargränssnitt
Det här avsnittet ger utgivare sammanfattningsinformation om hur man ändrar manifestet för sina PowerShell-galleriet-publikationer så att funktionerna i PowerShellGet-cmdlets och PowerShell-galleriet-användargränssnittet påverkas. Det här innehållet ordnas efter var ändringen kommer att visas, från mittenavsnittet och sedan navigeringsområdet till vänster. Det finns ett informationsavsnitt om taggar som identifierar viktiga taggar, samt några av de vanligaste taggarna. Det finns två ämnen som innehåller manifestexempel:
- Moduler finns i Uppdatera modulmanifest
- Skript finns i Skapa skriptfil med metadata
PowerShell-galleriet funktionselement som styrs av manifestet
Tabellen nedan visar elementen i PowerShell-galleriet-paketsidans användargränssnitt som styrs av utgivaren. Varje objekt anger om det kan styras av modulen eller skriptmanifestet.
| Användargränssnittselement | Description | Modul | Skript |
|---|---|---|---|
| Rubrik | Det här är namnet på paketet som publiceras i galleriet | Inga | Inga |
| Version | Den version som visas är versionssträngen i metadata och en förhandsversion om har angetts. Den primära delen av versionen i ett modulmanifest är ModuleVersion. För ett skript identifieras det som . VERSION. Om en versionssträng för förhandsversion anges läggs den till i ModuleVersion för moduler eller anges som en del av . VERSION för skript. Det finns dokumentation för att ange förhandsversionssträngar imoduler och i skript | Ja | Ja |
| Beskrivning | Det här är beskrivningen i modulmanifestet, och i ett skriptfilmanifest är det . BESKRIVNING | Ja | Ja |
| Kräv godkännande av licensen | En modul kan kräva att användaren accepterar en licens genom att ändra modulmanifestet med RequireLicenseAcceptance = $true, ange en LicenseURI och tillhandahålla en license.txt-fil i roten av modulmappen. Mer information finns i avsnittet Kräv godkännande av licens. | Ja | Inga |
| Viktig information | För moduler hämtas den här informationen från avsnittet ReleaseNotes under PSData\PrivateData. I skriptmanifest är det . RELEASENOTES-element. | Ja | Ja |
| Ägare | Ägare är en lista över användare i PowerShell-galleriet som kan uppdatera ett paket. Ägarlistan ingår inte i paketmanifestet. Ytterligare dokumentation beskriver hur du hanterar objektägare. | Inga | Inga |
| Författare | Detta ingår i modulmanifestet som Författare och i ett skriptmanifest som . FÖRFATTARE. Fältet Författare används ofta för att ange ett företag eller en organisation som är associerad med ett paket. | Ja | Ja |
| Copyright | Det här är fältet Copyright i modulmanifestet och . COPYRIGHT i ett skriptmanifest. | Ja | Ja |
| Filförteckning | Fillistan hämtas från paketet när den publiceras till PowerShell-galleriet. Den kan inte styras av manifestinformationen. Obs! Det finns ytterligare en .nuspec-fil listad med varje paket i PowerShell-galleriet som inte finns när du har installerat paketet på ett system. Det här är Nuget-paketmanifestet för paketet och kan ignoreras. | Inga | Inga |
| Taggar | För moduler ingår Taggar under PSData\PrivateData. För skript är avsnittet märkt med . TAGGAR. Observera att taggar inte får innehålla blanksteg, även om de är inom citattecken. Taggar har ytterligare krav och innebörder, som beskrivs senare i det här avsnittet i avsnittet Tagginformation. | Ja | Ja |
| Cmdletar | Detta anges i modulmanifestet med cmdletsToExport. Observera att det bästa sättet är att uttryckligen lista objekten i stället för att använda jokertecknet "*", eftersom det förbättrar belastningsmodulens prestanda för användarna. | Ja | Inga |
| Funktioner | Detta anges i modulmanifestet med hjälp av FunctionsToExport. Observera att det bästa sättet är att uttryckligen lista objekten i stället för att använda jokertecknet "*", eftersom det förbättrar belastningsmodulens prestanda för användarna. | Ja | Inga |
| DSC-resurser | För moduler som ska användas i PowerShell version 5.0 och senare tillhandahålls detta i manifestet med hjälp av DscResourcesToExport. Om modulen ska användas i PowerShell 4 ska DSCResourcesToExport inte användas eftersom det inte är en manifestnyckel som stöds. (DSC var inte tillgängligt före PowerShell 4.) | Ja | Inga |
| Arbetsflöden | Arbetsflöden publiceras till PowerShell-galleriet som skript och identifieras som arbetsflöden (se Anslut-AzureVM för ett exempel) i koden. Detta styrs inte av manifestet. | Inga | Inga |
| Rollfunktioner | Detta visas när modulen som publiceras till PowerShell-galleriet innehåller en eller flera rollfunktionsfiler (.psrc), som används av JEA. Mer information om rollfunktioner finns i JEA-dokumentationen. | Ja | Inga |
| PowerShell-utgåvor | Detta anges i ett skript- eller modulmanifest. För moduler som har utformats för att användas med PowerShell 5.0 och lägre styrs detta med hjälp av taggar. För Desktop använder du taggen PSEdition_Desktop och för core använder du taggen PSEdition_Core. För moduler som endast ska användas i PowerShell 5.1 och högre finns nyckeln CompatiblePSEditions i huvudmanifestet. Mer information finns i PS Edition-funktionen i PowerShell Hämta dokumentation. | Ja | Ja |
| Beroenden | Beroenden är modulerna i PowerShell-galleriet som antingen deklareras i modulen som RequiredModules eller i skriptmanifestet som #Requires –Module (namn). | Ja | Ja |
| Lägsta PowerShell-version | Detta kan anges i ett modulmanifest som PowerShellVersion | Ja | Inga |
| Versionshistorik | Versionshistoriken visar de uppdateringar som gjorts av en modul i PowerShell-galleriet. Om en version av ett paket döljs med funktionen Ta bort visas den inte i versionshistoriken, förutom för paketägarna. | Inga | Inga |
| Project Webbplats | Projektplatsen tillhandahålls för moduler i avsnittet Privatedata\PSData i modulmanifestet genom att ange en ProjectURI. I skriptmanifestet styrs det genom att ange . PROJECTURI. | Ja | Ja |
| Licens | En licenslänk tillhandahålls för moduler i avsnittet Privatedata\PSData i modulmanifestet genom att ange en LicenseURI. I skriptmanifestet styrs det genom att ange . LICENSEURI. Det är viktigt att observera att om en licens inte tillhandahålls via LicenseURI, eller inom en modul, anger användningsvillkoren för PowerShell-galleriet användningsvillkoren för paketet. Mer information finns i användningsvillkoren. | Ja | Ja |
| Ikon | En ikon kan anges för alla paket i PowerShell-galleriet genom att ange IconURI-flaggan i skriptmanifestet eller i Privatedata-PSData i modulmanifestet. IconURI bör peka på en 85 x 85-bild med genomskinlig bakgrund. URI:n måste vara en direkt bild-URL och får inte gå till en webbsida som innehåller bilden eller en fil i PowerShell-galleriet-paketet. | Ja | Ja |
Redigera paketinformation
På PowerShell-galleriet Redigera paket kan utgivare ändra flera av fälten som visas för ett paket, särskilt:
- Rubrik
- Beskrivning
- Sammanfattning
- Ikon-URL
- Project url för startsidan
- Författare
- Copyright
- Taggar
- Viktig information
- Kräv licens
Den här metoden rekommenderas vanligtvis inte, förutom när det behövs för att korrigera vad som visas för en äldre version av en modul. Användare som hämtar modulen ser att metadata inte matchar det som visas i PowerShell-galleriet, vilket ger upphov till problem med paketet. Detta leder ofta till frågor till paketägare för att bekräfta ändringen. Vi rekommenderar starkt att en ny version av paketet publiceras med samma ändringar varje gång den här metoden används.
Tagginformation
Taggar är enkla strängar som konsumenter använder för att hitta paket. Taggar är mest värdefulla när de används konsekvent i många paket som är relaterade till samma ämne. Att använda flera varianter av samma ord (till exempel databas och databaser, eller testning) ger vanligtvis få fördelar. Taggar är okänsliga strängar med enkla ord och får inte innehålla blanksteg. Om det finns en fras som du tror att användarna kommer att söka efter lägger du till den i paketbeskrivningen så hittar du den i sökresultaten. Använd Pascal-hölje, bindestreck, understreck eller punkt om du försöker förbättra läsbarheten. Var försiktig med att skapa långa, komplexa och ovanliga taggar, eftersom de ofta är felstavade.
Det finns taggar som är viktiga att notera eftersom de PowerShell-galleriet PowerShellGet-cmdletarna behandlar dem unikt. PSEdition_Desktop och PSEdition_Core är de specifika exemplen och beskrivs ovan.
Som nämnts ovan ger taggar mest värde när de är specifika och används konsekvent i många paket. Som utgivare som försöker hitta de bästa taggarna är det enklast att söka i PowerShell-galleriet efter taggar som du överväger. Helst returneras många paket, och paketbeskrivningarna överensstämmer med din användning av det nyckelordet.
Här är några vanliga taggar från och med 2017-12-14. I vissa fall finns det liknande men kanske mindre idealiska alternativ bredvid taggen. Det är bästa praxis att använda önskad tagg, eftersom det leder till mindre brus och bättre sökresultat för konsumenter.
| Önskad tagg | Alternativ och kommentarer |
|---|---|
| Azure | |
| DSC | DesiredStateConfiguration är mindre önskvärt, det är för långt |
| ResourceManager | "Arm" används för att beskriva en grupp processorer och ska inte användas för Azure Resource Manager |
| DSCResourceKit | |
| SQL | |
| AWS | |
| DSCResource | |
| Automation | |
| REST | |
| ActiveDirectory | AD används för närvarande inte av sig självt |
| Sqlserver | |
| DBA | |
| Säkerhet | Skydd är mindre exakt |
| Databas | Databaser (plural) är mindre önskvärda |
| DevOps | |
| Windows | |
| Skapa | |
| Distribution | Distribution används lite mindre ofta |
| Moln | |
| GIT | |
| Testa | Testning är mindre önskvärt |
| Versioncontrol | Versionen är mindre exakt, även om den används oftare |
| Loggning | Prioriterad användning av loggning som en åtgärd |
| Loggas | Prioriterad användning av Log som en sak |
| Backup | |
| IaaS | |
| Linux | |
| IIS | |
| AzureAutomation | |
| Storage | |
| GitHub | |
| Json | |
| Exchange | |
| Nätverk | Nätverk är liknande, används mindre ofta |
| SharePoint | |
| Rapportering | Rapportering är en åtgärd, rapporten är en sak |
| Rapport | Rapporten är något |
| WinRM | |
| Övervakning | |
| VSTS | |
| Excel | |
| Färg | |
| DNS | |
| Office365 | Det är Office att stava ut. O365 används mindre ofta, även om den är kortare |
| Gitlab | |
| Tjata | |
| AzureAD | |
| HTML | |
| Hyper-V | HyperV är mindre vanligt som en tagg |
| Konfiguration | |
| ChatOps | |
| PackageManagement | |
| WMI | |
| Brandvägg | |
| Docker | |
| Appveyor | |
| AzureRm | Används främst för AzureRM-modulerna |
| Zip | |
| MSI | |
| MacOS | |
| PoshBot |