Processo de atualização dos Suplementos do SharePoint

Você precisará atualizar o Suplemento do SharePoint se você adicionar uma funcionalidade, corrigir um erro ou fizer uma atualização de segurança. As atualizações de suplementos são implantadas em Pacotes de Suplementos do SharePoint da mesma maneira que a primeira versão do suplemento é implantada. O processo de atualização de Suplemento do SharePoint garante que os dados de um suplemento sejam preservados se a atualização falhar por qualquer motivo.

Importante

Não é possível alterar o tipo de suplemento usando o sistema de atualização. Por exemplo, você não pode usar uma atualização para alterar um suplemento de hospedado pelo Microsoft Office SharePoint Online para hospedado pelo provedor. Para fazer uma alteração de tipo, é necessário migrar de um suplemento antigo para um novo. Em particular, devido ao encerramento do programa de visualização para suplementos de hospedagem automática, você deverá estar ciente de que não é possível atualizar um suplemento de hospedagem automática para um suplemento hospedado pelo provedor. Você deve converter o suplemento, conforme explicado em Converter um suplemento de hospedagem automática do Microsoft Office SharePoint Online em um suplemento hospedado pelo provedor.

Processo de atualização para um Suplemento do SharePoint

Para uma atualização, use a mesma ID de produto no manifesto do suplemento usada para a versão original. O número da versão no manifesto do suplemento deve ser maior que o número da versão do suplemento original ou da atualização mais recente.

Dentro de 24 horas após o carregamento da atualização no catálogo de suplementos de uma organização, e dentro de uma semana após o carregamento na Office Store, uma indicação de que uma atualização está disponível aparecerá ao lado da lista do suplemento na página Conteúdo do Site de todos os sites em que ela está instalada. Os usuários podem clicar em um link para atualizar o suplemento, como mostra a Figura 1. As atualizações disponíveis também são expostas na interface do usuário de gerenciamento de locatário.

Figura 1. Suplemento para o processo de atualização do SharePoint

As etapas na interface do usuário para atualização de um aplicativo

Dica

Ao desenvolver uma atualização, você não deseja esperar 24 horas toda vez que carregar uma nova versão no seu catálogo de Suplementos do SharePoint de teste. Para obter informações sobre como atualizar um suplemento imediatamente, confira Atualizar um suplemento sem esperar 24 horas.

Por padrão, o Microsoft Office SharePoint Online verifica a cada 24 horas se há atualizações nos suplementos instalados. Um administrador de farm pode definir essa configuração para outro valor usando o seguinte comando do Shell de Gerenciamento do Microsoft Office SharePoint Online, em que n é o número de horas entre as verificações:

Set-SPInternalAppStateUpdateInterval -AppStateSyncHours n

Se o valor estiver definido como 0, a verificação será feita sempre que o trabalho do timer interno Atualização de Estado de Suplemento Interno for executado, que por padrão é a cada hora. Os administradores do farm podem usar a Administração Central para alterar a frequência do trabalho do timer ou executá-lo imediatamente.

O Microsoft Office SharePoint Online fará o seguinte quando um usuário instalar uma atualização em um Suplemento do SharePoint. Esses eventos não ocorrem necessariamente exatamente nessa ordem e alguns deles podem ocorrer em paralelo. Além disso, se uma atualização falhar, haverá uma reversão completa.

  • O Microsoft Office SharePoint Online solicita que o usuário aprove as permissões solicitadas pelo suplemento.

  • O SharePoint torna o suplemento temporariamente indisponível para os usuários.

  • Se o suplemento contiver um pacote de solução do Microsoft Office SharePoint Online (.wsp), e o conteúdo do pacote de solução tiver sido alterado de qualquer forma, o Microsoft Office SharePoint Online fará o seguinte:

    • Faz um backup da Web do suplemento (mas, no Microsoft Office SharePoint Online e no SharePoint local 2016 e posterior, os dados reais nas listas do SharePoint são copiados para backup apenas se a atualização estiver alterando o esquema da lista).

    • Testará a atualização do backup.

    • Se o teste for bem-sucedido, atualiza a Web do suplemento original. Observe que o novo arquivo .wsp no pacote de suplemento é usado para atualizar os Recursos e outros elementos na Web do suplemento (as partes de atualização do esquema de Recursos foram expandidas no Microsoft Office SharePoint Online).

  • O Microsoft Office SharePoint Online executa o serviço Web UpgradedEventEndpoint, se houver algum registrado no manifesto do suplemento.

    Observação

    Se o suplemento for hospedado pelo provedor, você fornecerá a lógica de atualização para todos os componentes não do Microsoft Office SharePoint Online do suplemento. Na maioria das vezes, você atualiza esses componentes separadamente da atualização do Suplemento do SharePoint em si, assim como instalou esses componentes separadamente da instalação do suplemento. No entanto, poderá haver algumas alterações que só deverão acontecer quando um usuário estiver atualizando o Suplemento do SharePoint. Essa lógica pode ser usada em um serviço Web UpgradedEventEndpoint ou na lógica da primeira execução após a atualização do próprio suplemento.

  • O Microsoft Office SharePoint Online torna o suplemento e seus componentes novamente disponíveis.

Observação

Se o esquema de qualquer lista na Web do suplemento estiver sendo alterado, a lista será copiada juntamente com o restante da Web do suplemento. Isso poderá demorar um pouco se houver muitos dados na lista. Se o processo de atualização não puder ser concluído em uma hora, ele será interrompido e a atualização será revertida.

Migração de um suplemento antigo para um novo

Em alguns cenários, convém produzir um suplemento totalmente novo para substituir um antigo, em vez de atualizar o original. O novo suplemento pode ter o mesmo nome amigável que o antigo, mas deve receber uma nova ID de produto no manifesto do suplemento, e ele aparece na Office Store pública e na página Adicionar um Suplemento dos sites do Microsoft Office SharePoint Online como um item distinto da versão original.

Observação

Os itens no catálogo de suplementos de uma organização são diferenciados pelo nome do arquivo do pacote de suplementos, não pela ID de produto ou pelo nome do suplemento. Se o novo suplemento tiver o mesmo nome de arquivo de pacote que o antigo, ele substituirá o antigo no catálogo de suplementos, e o suplemento antigo não aparecerá mais na página Adicionar um Suplemento. Se você ativar o controle de versão no pacote de suplementos ao carregá-lo no catálogo, a versão antiga do arquivo (que é o aplicativo antigo) ainda estará disponível no histórico do item. Você pode baixar o pacote de suplementos antigo ou reverter para ele, mas não há como ter os suplementos antigos e novos como itens separados no catálogo ou na página Adicionar um Suplemento, a menos que eles tenham nomes de arquivo distintos.

Em alguns casos, pode ser necessário migrar dados. Por exemplo, o novo suplemento pode usar um Banco de Dados SQL do Microsoft Azure que tenha um esquema diferente do suplemento antigo. Ou o novo suplemento pode usar um mecanismo de armazenamento de dados diferente; por exemplo, um banco de dados externo em vez de listas do Microsoft Office SharePoint Online. Você deve fornecer o código para a migração de dados.

Se seus dados antigos estiverem em algum lugar que possa ser acessado por um manipulador de eventos remoto, você poderá implementar a lógica de migração em um serviço da Web InstalledEventEndpoint do novo suplemento. Como alternativa, se o novo suplemento tiver acesso aos dados antigos, você poderá incluir a lógica de migração no código que é executado na primeira vez em que um usuário inicia o novo suplemento. Se os dados antigos não puderem ser acessados pelos manipuladores remotos ou pelo novo suplemento, você poderá criar uma atualização do suplemento antigo que adicione um recurso de exportação de dados e uma interface do usuário para o recurso. Os usuários primeiramente atualizam o suplemento antigo, e depois o usam para exportar os dados para um local onde o novo suplemento pode acessá-los. Você inclui o recurso e a interface do usuário para importar dados no novo suplemento.

Em princípio, você pode reutilizar, no novo suplemento, uma fonte de dados externa, componente de computação ou outro componente externo que tenha sido usado no antigo suplemento. Considere, no entanto, que quando um Suplemento do SharePoint é desinstalado, a infraestrutura do Microsoft Office SharePoint Online desinstalará tudo o que foi instalado. Portanto, geralmente é recomendável que um Suplemento do SharePoint dependa apenas dos componentes que ele instalou, ou de componentes externos que não foram instalados pela infraestrutura do Microsoft Office SharePoint Online.

Observação

Recomendamos que, se você implementar um InstalledEventEndpoint ou UpgradedEventEndpoint que instale componentes, também implemente um UninstallingEventEndpoint que desinstale esses mesmos componentes. Fazer isso está de acordo com os princípios de design de que os suplementos devem ser autocontidos e ser desinstalados corretamente. No entanto, os dados que ainda seriam úteis para os usuários após a desinstalação do suplemento não devem ser excluídos. Sites criados por um suplemento, que não sejam a Web do suplemento, geralmente devem ser considerados dados.

Se os suplementos antigos e novos contiverem uma Web de suplemento, considere que uma nova Web de suplemento será criada quando o novo suplemento for instalado. Por esse motivo, você não deve usar a marcação XML relacionada à atualização no esquema de Recurso do Microsoft Office SharePoint Online. Essa marcação não funciona porque você não está atualizando os componentes existentes do Microsoft Office SharePoint Online; você está substituindo um suplemento antigo por um novo.

Confira também