Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Sinopse
Define como obter o estado atual de cada instância para um Recurso DSC.
Metadados
SchemaDialect: https://json-schema.org/draft/2020-12/schema
SchemaID: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/v3.1.0/resource/manifest.export.json
Type: object
Description
Um Recurso DSC baseado em comandos que possa enumerar cada instância de si mesmo com um único comando deve definir a export propriedade no respetivo manifesto. Esta propriedade define como o DSC pode obter o estado atual para cada instância de recurso. Quando esta propriedade é definida, os utilizadores podem:
- Especifique uma instância do recurso na configuração de entrada para o comando de exportação de configuração dsc para gerar um documento de configuração utilizável.
- Especifique o recurso com o comando de exportação de recursos dsc para gerar um documento de configuração que defina todas as instâncias do recurso.
- Especifique o recurso com o comando dsc resource get e a opção --all para devolver o estado atual para cada instância do recurso.
Quando o DSC chama o comando definido por esta propriedade, o recurso tem de devolver o estado atual de cada instância como linhas JSON. Cada Linha JSON deve ser um objeto que represente a instância e validar em relação ao esquema de instância de recurso definido.
O DSC envia dados para este comando de três formas:
- Quando
inputéstdin, o DSC envia os dados como uma cadeia que representa os dados como um objeto JSON comprimido sem espaços ou linhas novas entre as propriedades do objeto. - Quando
inputéenv, o DSC envia os dados como variáveis de ambiente. Cria uma variável de ambiente para cada propriedade no objeto de dados de entrada, utilizando o nome e o valor da propriedade. - Quando a
argsmatriz inclui uma definição de argumento de entrada JSON, o DSC envia os dados como uma cadeia que representa os dados como um objeto JSON comprimido para o argumento especificado.
Se não definir a input propriedade e não definir um argumento de entrada JSON, o DSC não pode transmitir o JSON de entrada para o recurso. Só pode definir um argumento de entrada JSON para um comando.
Tem de definir a input propriedade, um argumento de entrada JSON na matriz de args propriedades ou ambos.
Propriedades Necessárias
A export definição tem de incluir estas propriedades:
Propriedades
executável
A executable propriedade define o nome do comando a executar. O valor tem de ser o nome de um comando detetável na variável de ambiente do PATH sistema ou o caminho completo para o comando. Uma extensão de ficheiro só é necessária quando o comando não é reconhecível pelo sistema operativo como executável.
Type: string
Required: true
args
A args propriedade define a lista de argumentos a transmitir para o comando. Os argumentos podem ser qualquer número de cadeias. Se quiser passar o objeto JSON que representa o saco de propriedades do recurso para um argumento, pode definir um único item na matriz como um [objeto JSON], indicando o nome do argumento com a jsonInputArg propriedade de cadeia e se o argumento é obrigatório para o comando com a mandatory propriedade booleana.
Type: array
Required: false
Default: []
Type: [string, object(JSON Input Argument)]
Argumentos de cadeia
Qualquer item na matriz de argumentos pode ser uma cadeia que representa um argumento estático para passar para o comando, como config ou --format.
Type: string
Argumento de entrada JSON
Define um argumento para o comando que aceita o objeto de entrada JSON como uma cadeia. O DSC transmite a entrada JSON para o argumento nomeado quando disponível. Um argumento de entrada JSON é definido como um objeto JSON com as seguintes propriedades:
-
jsonInputArg(obrigatório) – o argumento para transmitir os dados JSON para o comando, como--input. -
mandatory(opcional) - Indique se o DSC deve transmitir sempre o argumento para o comando, mesmo quando não existe nenhuma entrada JSON para o comando. Nesse caso, o DSC transmite uma cadeia vazia para o argumento de entrada JSON.
Só pode definir um argumento de entrada JSON por matriz de argumentos.
Se definir um argumento de entrada JSON e um input tipo para um comando, o DSC envia os dados JSON de ambas as formas:
- Se definir
inputcomoenve um argumento de entrada JSON, o DSC define uma variável de ambiente para cada propriedade na entrada JSON e transmite o objeto de entrada JSON como uma cadeia para o argumento definido. - Se definir
inputcomostdine um argumento de entrada JSON, o DSC transmite a entrada JSON sobre stdin e como uma cadeia para o argumento definido. - Se definir um argumento de entrada JSON sem definir a propriedade, o
inputDSC só transmite a entrada JSON como uma cadeia para o argumento definido.
Se não definir a input propriedade e não definir um argumento de entrada JSON, o DSC não pode transmitir o JSON de entrada para o recurso. Isto torna o manifesto inválido. Tem de definir a input propriedade, um argumento de entrada JSON na matriz de args propriedades ou ambos.
Type: object
RequiredProperties: [jsonInputArg]
entrada
A input propriedade define como transmitir entrada para o recurso. Se esta propriedade não estiver definida e a definição não definir um argumento de entrada JSON, o DSC não envia nenhuma entrada para o recurso ao invocar a export operação.
O valor desta propriedade tem de ser uma das seguintes cadeias:
env- Indica que o recurso espera que as propriedades de uma instância sejam especificadas como variáveis de ambiente com os mesmos nomes e invólucro.Esta opção suporta apenas os seguintes tipos de dados para propriedades de instância:
booleanintegernumberstring-
arraydeintegervalores -
arraydenumbervalores -
arraydestringvalores
Para valores que não sejam de matriz, o DSC define a variável de ambiente para o valor especificado tal como está. Quando o tipo de dados é uma matriz de valores, o DSC define a variável de ambiente como uma cadeia delimitada por vírgulas. Por exemplo, a propriedade
foocom um valor de[1, 2, 3]é guardada na variável defooambiente como"1,2,3".Se o recurso precisar de suportar propriedades complexas com um
objectvalor ou matrizes de vários tipos, defina-o comostdinem alternativa.stdin- Indica que o recurso espera um blob JSON que representa uma instância destdin. O JSON tem de cumprir o esquema de instância do recurso.
Type: string
Required: false
ValidValues: [env, stdin]