Legado - Dicas de implantação de produção
Quando você desenvolve personalizações para aplicações no ServiceNow®, você os implanta por meio do repositório de aplicações em uma instância de produção. Este tópico examina e fornece cuidados para as compensações entre a instalação de uma aplicação do repositório de aplicações versus o repositório Git com controle de origem.
Tente criar e editar apps na versão atual de ServiceNow Studioem vez disso. Para obter mais informações, consulte ServiceNow Studio.
Visão geral ou implantação na produção
Tecnicamente, você ainda pode "implantar" uma aplicação de um repositório Git para uma instância de produção usando o controle de código-fonte. Isso pode ter consequências indesejadas.
Glossário de termos
| Termo | Definição |
|---|---|
| Arquivos de metadados ou aplicações | Os registros sys_metadata que definem a configuração em ServiceNowe são empacotados em uma aplicação. Esses registros alteram o comportamento da instância, mas não contêm dados como registros de incidente ou CMDB. (Consulte a Observação abaixo) |
| Aplicações com escopo | Aplicações da ServiceNow que restringem a permissão somente de atualizações e operações dentro do limite do escopo. Este mecanismo é usado para a maioria dos novos desenvolvimentos. |
| Aplicações globais | As aplicações globais são desenvolvidas no escopo global legado. Muitas vezes, o trabalho é feito nesse escopo para personalizar as aplicações ServiceNow existentes, como a Gestão de serviços de TI (ITSM). |
| Repositório de aplicações | As aplicações geralmente são publicadas aqui para implantação em instâncias de produção. Embora o repositório de aplicações tenha regras de direito separadas, ele opera de forma semelhante à ServiceNow Store. |
| ServiceNow Store | Repositório para aplicações de terceiros (fornecedor), bem como aplicações publicadas da ServiceNow. A maioria dos clientes não publica na Loja, mas geralmente instala aplicações a partir dela. |
| Conjuntos de atualizações | Método padrão de personalizações de empacotamento para implantação em cada instância sucessiva. Eles contêm a coleção incremental de inserções, atualizações e exclusões. |
| Legado - Carregamento delta | O método mais eficiente de carregamento porque muda somente do controle de código-fonte, em vez de métodos anteriores de desinstalação/reinstalação. |
| Esquema | Definição de tabelas e colunas nas tabelas. |
| Reverter | Os administradores podem reverter a última instalação de uma aplicação selecionada. Uma reversão remove todas as atualizações de código, tabela e arquivo da instalação inicial. |
Local de instalação
Quando você instala o controle de código-fonte, ele facilita o desenvolvimento contínuo de uma aplicação personalizada. Portanto, a aplicação é gerenciada como uma aplicação "em desenvolvimento" na tabela Aplicação personalizada [sys_app] em vez de como uma aplicação "instalada" na tabela da aplicação da loja [sys_store_app]. Ambas as tabelas são extensões do sys_scope, portanto ambas fornecem as mesmas proteções e restrições que o escopo. Portanto, quando você pesquisar a instalação de uma aplicação implantada de controle de origem, consulte a tabela da aplicação do sistema [sys_app] e a. em desenvolvimento Da página Gerenciador de aplicações.Você não pode ter um registro sys_app na instância ao implantar essa mesma aplicação da ServiceNow Store ou repositório de aplicações. Os dois modelos de implantação são mutuamente exclusivos. Se, em algum momento, o modelo de implantação mudar, o registro sys_app deverá ser convertido em um registro sys_store_app primeiro. Você pode entrar em contato com o Suporte da ServiceNow para obter ajuda com a execução dessa operação.
Delta carregando
Antes de ServiceNowVersão Paris, instalação de aplicações a partir do controle de origem sempre removeu e reinstalou a aplicação inteira quando acionada, incluindo a função Aplicar mudanças remotas. Com Legado - Carregamento delta, agora apenas as mudanças se atualizam, simplificando consideravelmente o processo.
| Tipo de aplicação | Instalar origem | Esquema presente no pacote | O esquema contém dados | Sinistro por outro app (global) | Resultado esperado para dados e esquema |
|---|---|---|---|---|---|
| Com escopo | Repositório de aplicações ou armazenamento | Sim | Sim/Não | N/D | Preservado |
| Com escopo | Repositório de aplicações ou armazenamento | Não | Sim/Não | N/D | Preservado |
| Com escopo | Controle de código-fonte | Sim | Sim/Não | N/D | Preservado |
| Com escopo | Controle de código-fonte | Não | Sim/Não | N/D | Removido |
| Global | Controle de origem, repositório de aplicações ou armazenamento | Sim | Sim/Não | Sim/Não | Preservado |
| Não | Sim | Não | Em conserva (1) | ||
| Não | Não | Sim | Em conserva (2) | ||
| Controle de código-fonte | Não | Não | Não | Removido (3) | |
| Repositório de aplicações | Não | Não | Não | Preservado |
- Enquanto o esquema do banco de dados e os dados são preservados, eles serão movidos para a aplicação global padrão.
- Enquanto o esquema do banco de dados e os dados são preservados, eles serão movidos para a aplicação global que anteriormente tinha a declaração para esses arquivos, se instalada. Caso contrário, eles serão movidos para a aplicação global padrão.
- Aplicável somente em colunas personalizadas com prefixo u_ . As colunas criadas pela plataforma ServiceNow não são descartadas.
Ao alternar ramificações no controle de origem para uma aplicação com escopo, tenha extremo cuidado em um ambiente de produção. Se a ramificação de destino não tiver elementos de esquema encontrados na ramificação atual, o esquema relacionado será descartado, destruindo todos os dados que ele contém. (As aplicações globais não descartam o esquema quando os dados estão presentes.)
Assim como com os conjuntos de atualizações, somente um subconjunto das mudanças incrementais precisa ser aplicado com o carregamento Delta. Ao contrário dos conjuntos de atualizações, o pacote da aplicação representa a aplicação completa. Os arquivos ausentes no novo pacote serão excluídos. Isso pode alterar a funcionalidade e excluir dados. Conjuntos de atualizações e aplicações atualizados do repositório de aplicações ou ServiceNowA loja deve ter um explícito EXCLUIR carga para remover um arquivo ou descartar um esquema.
As edições diretas no repositório, especialmente para remover arquivos, podem ter ramificações significativas, incluindo perda de dados e exclusões em cascata. Execute esta ação com cuidado.