Especifique os recursos necessários para um aplicativo¶
Este tópico descreve como usar o arquivo marketplace.yml
para declarar os requisitos de recursos para um Snowflake Native App.
O marketplace.yml
é um arquivo de configuração semelhante ao arquivo manifest.yml
de um aplicativo. O Snowflake usa este arquivo nos seguintes contextos:
Os objetos especificados nas propriedades
required_compute_pools
econnections
aparecem na listagem em Snowsight. Isso permite que o consumidor veja os recursos que o aplicativo pode exigir.Este arquivo pode ajudar a evitar a criação ou o uso de recursos desnecessários, por exemplo, replicando um pacote de aplicativo para regiões onde ele não pode ser instalado por um consumidor. Antes que o consumidor solicite a listagem em uma região remota, a Snowflake garante que o consumidor atenda aos requisitos de recursos declarados no arquivo
marketplace.yml
. Isso ajuda a evitar custos de replicação desnecessários.Antes de instalar e atualizar o aplicativo, o Snowsight garante que os requisitos sejam atendidos, para evitar a instalação de um aplicativo quebrado/inutilizável ou a atualização de um aplicativo funcional para um estado inutilizável.
Este arquivo opcional deve estar no diretório raiz de um aplicativo no mesmo nível do arquivo manifest.yml
. Se este arquivo não estiver presente, nenhuma ação será tomada.
Especifique os pools de computação necessários para um aplicativo¶
O exemplo a seguir mostra como especificar os recursos do pool de computação necessários para uma versão específica de um aplicativo:
required_compute_pools:
- HIGH_MEM_POOL_1:
label: "High memory pool"
description: "A compute pool for computational tasks."
compatible_instance_families:
- HIGHMEM_X64_M
- HIGHMEM_X64_L
Neste exemplo, o required_compute_pools
é um pool de computação denominado HIGH_MEM_POOL_1
.
A propriedade compatible_instance_families
especifica o tipo de máquina a ser provisionada para o pool de computação. Você deve especificar pelo menos um valor declarado para cada pool de computação. Consulte CREATE COMPUTE POOL para obter mais informações.
Nota
Se a propriedade compatible_instance_families
estiver ausente ou os valores forem inválidos, a criação da versão falhará.
Especifique os pontos de extremidade externos necessários para um aplicativo¶
O exemplo a seguir mostra como declarar os pontos de extremidade externos exigidos por um aplicativo:
connections:
- LAUNCH_DARKLY:
label: "Launch Darkly"
description: "Feature flag and configuration"
required: true
endpoints:
- "mobile.launchdarkly.com"
- "stream.launchdarkly.com"
- OPEN_AI:
label: "OpenAPI"
description: "LLM Connection"
required: false
endpoints:
- "openai.com"
Neste exemplo, a propriedade connection
especifica dois pontos de extremidade externos, LAUNCH_DARKLY
e OPEN_AI
. A propriedade required
indica ao consumidor em Snowsight que a conexão é necessária.
Se você especificar o connection
neste arquivo, as propriedades endpoints
e required
são necessárias. Se essas propriedades não estiverem presentes, a criação da versão falhará. A propriedade endpoints
requer pelo menos um URL.