Configurando o Mecanismo de Provisionamento PnP
Às vezes, você não deseja extrair todos os artefatos de um site ou apenas uma lista específica. Para que o mecanismo de provisionamento de PnP use um arquivo de configuração formatada em JSON, o que oferece controle detalhado sobre o processo.
Configuração de extração
Há um esquema JSON disponível na https://aka.ms/sppnp-extract-configuration-schema. Atualizaremos automaticamente o esquema referido por essa URL para uma versão mais recente se a nova funcionalidade estiver disponível.
Se você criar um arquivo JSON, use um editor moderno, como o código do Visual Studio, e referencie esse esquema, haverá o intellisense e as descrições de todas as propriedades que você pode definir.
Vamos observar o exemplo de configuração a seguir
{
"$schema":"https://aka.ms/sppnp-extract-configuration-schema",
"handlers": [
"Lists",
"WebSettings",
"Pages"
]
}
Isso instruirá o mecanismo a extrair apenas listas, as configurações da Web (que inclui o título, logotipo etc.) e a página inicial.
Para alguns dos manipuladores, podemos especificar mais opções de configuração:
{
"$schema":"https://aka.ms/sppnp-extract-configuration-schema",
"persistAssetFiles": true,
"handlers": [
"Lists",
"WebSettings",
"Pages"
],
"lists": {
"lists": [
{
"title": "My Test List",
"includeItems": true,
"query": {
"includeAttachments": true
}
}
]
},
"pages": {
"includeAllClientSidePages": true
}
}
Usando a configuração acima, limitamos a extração de listas para incluir apenas a lista chamada "minha lista de teste". Estamos informando ao mecanismo que queremos exportar os itens da lista para o modelo (eles serão exibidos como elementos DataRow) e dizemos ao mecanismo para incluir todos os anexos, se estiverem presentes. No entanto, o mecanismo não baixará esses anexos, a menos que você defina a propriedade persistAssetFiles
como true
.
Depois de ter um arquivo de configuração no lugar, você pode usá-lo como tal, conforme descrito na documentação para Get-PnPSiteModelo:
Get-PnPSiteTemplate -Configuration "config.json" -Out "template.xml"
Observe que você pode especificar mais opções de configuração para listas, e aconselhamos a explorar ainda mais o esquema.
Por padrão, o mecanismo só exporta a página inicial se você especificar o manipulador de Pages
. Se você quiser incluir todas as páginas, defina a propriedade includeAllClientSidePages
na seção pages
como verdadeira.