Configuración del motor de aprovisionamiento PnP

A veces no desea extraer todos los artefactos de un sitio, ni siquiera una lista específica. Para eso, el motor de aprovisionamiento PnP usa un archivo de configuración con formato JSON que le ofrece un control detallado sobre el proceso.

Configuración de extracción

Hay un esquema de JSON disponible en https://aka.ms/sppnp-extract-configuration-schema. Se actualizará automáticamente el esquema al que hace referencia esa dirección URL a una versión posterior si hay una nueva funcionalidad disponible.

Si crea un archivo JSON, use un editor moderno, como Visual Studio Code, y hace referencia a este esquema, habrá IntelliSense y descripciones de todas las propiedades que puede establecer.

Echemos un vistazo a la siguiente configuración de ejemplo.

{
  "$schema":"https://aka.ms/sppnp-extract-configuration-schema",
  "handlers": [
    "Lists",
    "WebSettings",
    "Pages"
  ]
}

Esto le indicará al motor que solo extraiga las listas, la configuración web (que incluye el título, el logotipo, etc.) y la página principal.

Para algunos de los controladores podemos especificar más opciones de configuración de detalle:

{
  "$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
  }
}

Con el uso de la configuración anterior limitamos la extracción de listas para incluir solo la lista denominada "Mi lista de pruebas". Le estamos diciendo al motor que queremos exportar elementos de lista a la plantilla (se mostrarán como elementos DataRow) y le indicamos que también debe incluir los datos adjuntos si están presentes. Sin embargo, el motor no descargará los datos adjuntos, salvo que establezca la propiedad persistAssetFiles en true.

Una vez que tenga un archivo de configuración en su sitio, puede usarlo así, como se describe en la documentación de Get-PnPSiteTemplate:

Get-PnPSiteTemplate -Configuration "config.json" -Out "template.xml"

Observe que puede especificar más opciones de configuración para las listas y le aconsejamos que explore el esquema más a fondo.

De forma predeterminada, el motor solo exporta la página principal si especifica el controlador de Pages. Si desea incluir todas las páginas, establezca la propiedad includeAllClientSidePages en la sección pages en true.

Consulte también