Publicando Diretrizes
Para criar modelos, pilhas, imagens e listagens para o Oracle Cloud Infrastructure Marketplace, certifique-se de cumprir todas as diretrizes relevantes.
O Portal do Parceiro será migrado para o Oracle Cloud Console. Para obter mais informações, consulte Migração do Portal do Parceiro para a Console do Oracle Cloud.
Sobre as Diretrizes do Editor do Marketplace
A OCI permite que os parceiros da Oracle distribuam suas soluções para clientes da OCI por meio do Oracle Cloud Marketplace. Os clientes da Oracle confiam que essas soluções são criadas e mantidas de forma a garantir que sua segurança e privacidade sejam a principal prioridade.
Os clientes também esperam que as soluções sejam entregues conforme prometido, incluam excelente documentação e forneçam uma experiência de suporte eficaz e com baixo atrito. Este documento descreve a barra mínima necessária dos parceiros da Oracle para inclusão no Oracle Cloud Marketplace. Você é encorajado a exceder essas especificações, sempre que possível. As soluções que incluem exceções a esses padrões devem ser analisadas e aprovadas pela Oracle.
Palavras-chave
Este documento usa palavras-chave conforme definido pelo IETF RFC 2119. Para obter mais informações, consulte https://www.ietf.org/rfc/rfc2119.txt.
- Deve - Esta palavra, ou os termos "Obrigatório" ou "Deve", significa que a definição é um requisito absoluto da especificação.
- Não deve - Esta frase, ou a frase "Não deve", significa que a definição é uma proibição absoluta da especificação.
- Deve - Esta palavra, ou o adjetivo "Recomendado", significa que pode haver razões válidas em circunstâncias particulares para ignorar um determinado item, mas as implicações completas devem ser compreendidas e cuidadosamente ponderadas antes de escolher um curso diferente.
- Não deve - Esta frase, ou a frase "Não recomendado" significa que pode haver razões válidas em circunstâncias particulares quando o comportamento particular é aceitável ou mesmo útil, mas as implicações completas devem ser entendidas e o caso cuidadosamente ponderado antes de implementar qualquer comportamento descrito com este rótulo.
- Pode - Esta palavra, ou o adjetivo "opcional", significa que um item é realmente opcional. Um fornecedor pode optar por incluir o item porque um determinado mercado o exige ou porque o fornecedor sente que ele aprimora o produto, enquanto outro fornecedor pode omitir o mesmo item. Uma implementação que não inclua uma opção específica deve estar preparada para interoperar com outra implementação que inclua a opção, embora talvez com funcionalidade reduzida. Na mesma linha, uma implementação que inclua uma opção específica deve estar preparada para interoperar com outra implementação que não inclua a opção (exceto, é claro, para o recurso que a opção oferece).
Níveis de Severidade de Vulnerabilidade
Onde há qualquer referência à vulnerabilidade de segurança nesta seção, a referência é ao sistema de classificação Common Vulnerability Scoring System (CVSS) v3.0. Para obter mais informações sobre o CVSS v3.0, consulte https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator.
Segurança
A visão geral da segurança do Oracle Cloud Infrastructure afirma que:
We [Oracle] believe that a dynamic security-first culture is vital to building a successful security-minded organization. We have cultivated a holistic approach to security culture in which all our team members internalize the role that security plays in our business and are actively engaged in managing and improving our products' security posture. We have also implemented mechanisms that assist us in creating and maintaining a security-aware culture.
Você deve ler e entender toda a abordagem de segurança da Oracle Cloud Infrastructure. Consulte o Oracle Cloud Infrastructure Security Guide na documentação do Oracle Cloud Infrastructure.
Você deve manter uma cultura de segurança em primeiro lugar que entenda e valorize a confiança de nossos clientes mútuos.
Controles
- Você deve manter a conscientização sobre alertas de segurança e recomendações que tenham impacto em suas soluções. Aqui estão algumas fontes comuns de alertas de segurança:
- O SecurityFocus mantém recomendações recentes para muitos produtos comerciais e de código aberto. https://www.securityfocus.com/
- O Banco de Dados de Vulnerabilidade Nacional. https://nvd.nist.gov/vuln
- A US-CERT e a Industrial Control Systems CERT (ICS-CERT) publicam resumos atualizados regularmente dos incidentes de segurança mais frequentes e de alto impacto. https://www.us-cert.gov/ics
- A Divulgação Completa em SecLists.org é um fórum de alto volume, público e neutro do fornecedor para discussão detalhada de vulnerabilidades e técnicas de exploração. https://seclists.org/fulldisclosure/
- O Computer Emergency Readiness Team Coordination Center (CERT/CC) tem informações de vulnerabilidade atualizadas para os produtos mais populares. https://www.cert.org
- Você deve observar as atualizações da plataforma Oracle Cloud Infrastructure que podem ter um impacto nas imagens que você publicou.
- Você deve notificar a OCI em até 3 dias úteis sobre quaisquer vulnerabilidades recém-descobertas que afetem suas soluções com uma classificação CVSS de 9.0 ou superior.
- Você deve notificar o Oracle Cloud Infrastructure em até 5 dias úteis sobre quaisquer vulnerabilidades recém-descobertas que afetem suas soluções com uma classificação CVSS entre 7.0 e 8.9.
- Você deve notificar a OCI em até 20 dias úteis sobre quaisquer vulnerabilidades recém-descobertas que afetem suas soluções com uma classificação CVSS entre 4.0 e 6.9.
- Você deve publicar soluções atualizadas que mitiguem vulnerabilidades recém-descobertas em tempo hábil.
- Você deve permitir que os clientes mantenham suas soluções atualizadas para se proteger contra vulnerabilidades recém-descobertas. Alguns padrões comuns são:
- Aplicação automática de atualizações de segurança.
- Permitir que um cliente execute um comando para aplicar atualizações de segurança.
- Fornecer um processo que permita que um cliente substitua qualquer implantação atual por uma versão atualizada. Esse processo deve ser suficientemente baixo para que um cliente não seja desencorajado de realizar o trabalho necessário.
- Você deve publicar soluções atualizadas com atualizações gerais de segurança trimestralmente.
- Se você puder exigir a execução de um acordo de confidencialidade antes de divulgar uma vulnerabilidade à Oracle, você deverá ter firmado um Contrato de Confidencialidade da Oracle (CDA) antes da publicação da sua primeira imagem. Sua equipe do Oracle Partner ajudará nesse processo.
Diretrizes para Listagens
Ao criar suas listagens de aplicativos, certifique-se de estar familiarizado e estar em conformidade com as diretrizes relevantes.
Diretrizes Obrigatórias
As diretrizes a seguir são obrigatórias para listagens de aplicativos no Oracle Cloud Infrastructure Marketplace. Cada diretriz deve ser seguida. Antes de serem aprovados, cada listagem de aplicativos é validada em relação a cada uma dessas diretrizes.
- O Nome do Aplicativo deve ter no máximo 80 caracteres. Deve ter 36 caracteres ou menos para uma visualização ideal.
- O Nome do Aplicativo deve ser claro, conciso e livre de erros de ortografia e gramática. Não deve ter quebras de linha.
- O título deve indicar claramente a finalidade do aplicativo. Deve ser descrito em duas linhas ou menos e estar livre de erros ortográficos e gramaticais.
- Fonte/Espaço na listagem deve ser consistente.
- Todo o texto deve estar livre de erros ortográficos ou gramaticais.
- A Descrição deve ser abrangente e capturar o público-alvo/tipo de usuário e apresentar por que a Listagem é valiosa.
- Todos os links devem apontar para os locais corretos e abrir em uma nova guia ou janela.
- O texto incluído em ícones, banners, capturas de tela ou vídeos deve ser legível.
- As imagens não devem ser desfocadas ou esticadas.
- Os Documentos Relacionados devem fornecer informações consistentes para que os usuários possam:
- Inicie uma instância no Marketplace.
- Conecte-se à instância:
- Configure ou inicie o aplicativo.
- A seção Suporte deve conter detalhes de contato precisos para que o cliente envolva o suporte ao parceiro. Esses detalhes de contato devem conter um número de telefone ou endereço de email preciso.
- Os Requisitos do Sistema devem conter a lista de componentes obrigatórios do Oracle Cloud Infrastructure, incluindo formas de computação, regras de segurança, políticas do IAM, volumes em blocos, VNICs secundárias etc.
- Os Termos de Uso devem ser incluídos no pacote de instalação do aplicativo e estar livres de erros ortográficos ou gramaticais. O nome dos Termos de Uso deve estar em maiúsculas e minúsculas. Os links em Termos de Uso devem apontar para os locais corretos e abrir em uma nova guia ou janela.
- A versão do pacote de instalação do aplicativo deve corresponder à versão especificada em qualquer outra imagem ou texto relacionado para este pacote.
- O usuário deve ser capaz de iniciar, conectar e configurar o aplicativo e a infraestrutura relacionada usando as instruções incluídas nas seções Uso e Documentos Relacionados.
- Cada solução publicada inclui um conjunto de documentação voltada para o cliente. Esta documentação:
- Deve incluir instruções proeminentes e detalhadas para estabelecer conexão com uma instância.
- Deve incluir documentação de uso ou um link para a documentação.
- Deve incluir detalhes de suporte ou um link para esses detalhes.
- É necessário listar formas compatíveis.
- É necessário documentar todas as portas de rede abertas por padrão na instância.
- Confirmação: Você concorda que não publicará nenhuma lista de Editores paga no Oracle Cloud Marketplace se a compra de produtos e serviços e/ou o fornecimento de serviços relacionados ao cliente puder ser financiada, no todo ou em parte, por medicare, medicaid ou qualquer outro programa de saúde financiado pelo governo federal ou estadual.
Diretrizes recomendadas
As diretrizes a seguir podem ser consideradas como melhores práticas que devem ser seguidas sempre que possível.
- As notas de lançamento devem ser especificadas como marcadores com quebras de linha adequadas.
- Os documentos relacionados devem conter informações sobre como comprar uma licença, se necessário.
Diretrizes Gerais
Aqui estão algumas diretrizes genéricas para listagens de todos os tipos. Para obter diretrizes específicas para listagens de aplicativos ou listagens de imagens, consulte a seção relevante.
- Para garantir que o conteúdo da listagem se adapte corretamente ao estilo de plataforma cruzada do Oracle Cloud Marketplace, apenas a formatação básica é permitida nas seções de descrição. Se o conteúdo estiver sendo copiado de outra fonte de rich text (como o Microsoft Word), certifique-se de que qualquer estilo adicional seja removido antes de enviar a listagem para revisão.
- É recomendável colar conteúdo em texto sem formatação para evitar a inclusão de estilos e formatações ocultos. Aderir a essas opções básicas de formatação garantirá que o conteúdo da listagem seja exibido corretamente em vários dispositivos e plataformas.
- O uso de marcas comerciais da Oracle na lista de conteúdo (como nomes de produtos da Oracle) deve estar em conformidade com as Diretrizes de Utilização de Marcas Comerciais da Oracle por Terceiros.
- O uso dos logotipos da Oracle no conteúdo da listagem (como infográficos e capturas de tela) deverá estar em conformidade com as Diretrizes de Utilização de Logotipos da Oracle por Terceiros.
- Para quaisquer imagens, como logotipos, ícones ou banners:
- Certifique-se de que as imagens sejam dimensionadas para corresponder às dimensões especificadas.
- Salve imagens no formato de arquivo especificado com compactação.
- Certifique-se de que o tamanho do arquivo de imagem esteja dentro do tamanho de arquivo especificado.
- Seu banner deve ter 1160 pixels (largura) por 200 pixels (altura), no máximo 10 MB e deve ser um arquivo BMP, GIF, JPEG (JPG) ou PNG.
- O logotipo da sua empresa deve ter 115 pixels por 115 pixels, no máximo 5 MB, e deve ser um arquivo BMP, GIF, JPEG (JPG) ou PNG.
- Seu ícone deve ter 130 pixels por 130 pixels, no máximo 5 MB, e deve ser um arquivo BMP, GIF, JPEG (JPG) ou PNG.
- Os ícones de aplicativos devem ser distintos e exclusivos. Não envie vários aplicativos com o mesmo ícone.
- Não use quaisquer logotipos ou marcas comerciais da Oracle nos ícones do aplicativo. Certifique-se de ter os direitos de uso de quaisquer imagens de terceiros usadas.
- O conteúdo da seção de descrição deve fornecer uma visão geral de alto nível do aplicativo. Ele deve descrever o valor e o benefício para o cliente de executar/hospedar o aplicativo no Oracle Cloud.
- Uma descrição longa deve ser precedida por uma descrição curta. Não repita a descrição curta na seção de descrição longa.
- A descrição não deve destacar ou se referir ao "Oracle Validated Integration". O programa Oracle Validated Integration (OVI) é aplicável apenas a soluções locais e não se aplica ao Oracle Cloud.
- No campo Informações de Uso:
- Inclua um link para um guia de Conceitos Básicos que contenha detalhes completos exigidos pelos usuários para começar.
- Inclua links para qualquer documentação técnica, planilhas de dados, guias do usuário e outros documentos relacionados (incluindo os especificados na seção Documentos Relacionados).
- Liste as portas que devem ser abertas. Adicione um link, como "Como configurar portas abertas", que descreve as etapas para abrir portas usando a Console do Oracle Cloud Infrastructure.
- No campo Capturas de Tela e Vídeos, para capturas de tela:
- Um mínimo de duas capturas de tela é recomendado.
- Ao capturar telas, oculte qualquer barra de ferramentas e menu do navegador. Use o modo de tela inteira do navegador.
- As dimensões recomendadas para capturas de tela são 640 pixels (largura) x 480 pixels (altura). Outros tamanhos adequados incluem 1024x768 e 1200x900. As imagens maiores devem ser cortadas ou redimensionadas.
- Para obter melhores resultados, as imagens devem ser criadas com uma proporção nativa de 4:3. Para quaisquer imagens que não se encaixam na proporção 4:3, como capturas de tela de aplicativos de celular, preencha a imagem com um plano de fundo colorido ou transparente adequado para se ajustar ao tamanho de imagem necessário. Use um editor de imagens para adicionar preenchimento.
- As capturas de tela devem ter no máximo 5 MB e devem ser um arquivo BMP, GIF, JPEG (JPG) ou PNG.
- As imagens carregadas são dimensionadas automaticamente para miniaturas de 240 x 180 pixels na página de listagem principal.
- As imagens carregadas são dimensionadas automaticamente para se ajustarem ao visualizador de mídia de 600 x 450 pixels.
- Inclua um vídeo de demonstração como o primeiro item da lista no campo Capturas de Tela e Vídeos.
- Os vídeos promocionais que estão hospedados em YouTube ou Vimeo podem ser incorporados diretamente na lista de captura de tela e no visualizador de mídia.
- O endereço URL do vídeo deve começar com
http://
ouhttps://
- O vídeo de demonstração principal deve ser curto e direto ao ponto, com foco nos principais recursos do aplicativo e no valor do aplicativo/integração no Oracle Cloud.
- Vídeos mais longos e conteúdo promocional podem ser incluídos como vídeos adicionais.
- No campo Documentos Relacionados:
- A adição de uma planilha de dados específica à integração do Oracle Cloud é um requisito mínimo.
- As planilhas de dados devem ser específicas da versão do aplicativo ativada pelo Oracle Cloud.
- Adicione um documento "Conceitos Básicos do Oracle Cloud Infrastructure" que forneça detalhes completos para os clientes configurarem e configurarem o software.
- No campo Requisitos do sistema:
- Liste todos os serviços PaaS do Oracle Cloud necessários para instalar e executar o aplicativo.
- Liste todos os serviços SaaS do Oracle Cloud com os quais o aplicativo está integrado.
- Liste quaisquer dependências do sistema de terceiros.
- Inclua dependências específicas do navegador ou plataformas móveis suportadas nesta seção.
- Seja específico sobre quaisquer dependências de versão ou edição ou requisitos de dimensionamento (se necessário).
Diretrizes para Imagens
Ao criar uma lista de imagens no Oracle Cloud Infrastructure Marketplace, certifique-se de que as imagens criadas para a listagem estejam em conformidade com as diretrizes relevantes.
Diretrizes Obrigatórias para Imagens do Linux
A tabela a seguir lista as diretrizes de imagem obrigatórias e o código de erro correspondente. Cada diretriz deve ser seguida. Antes de uma imagem ser publicada no Oracle Cloud Infrastructure Marketplace, cada imagem é validada em relação a cada uma das diretrizes obrigatórias a seguir.
Código do Erro | Descrição |
---|---|
S01 | As chaves de host SSH devem ser exclusivas de cada instância. Use o utilitário oci-image-cleanup fornecido pelo pacote oci-utils em GitHub. Isso removerá todas as chaves de host SSH, para que elas sejam geradas novamente na primeira inicialização. |
S08 | As imagens devem ingerir uma chave pública SSH fornecida por um cliente como parte do processo de inicialização da instância. Certifique-se de que a imagem esteja ativada para cloud-init . |
S10 | Qualquer arquivo authorized_keys só deve conter chaves fornecidas pelo usuário quando a instância for iniciada. Use o utilitário oci-image-cleanup fornecido pelo pacote oci-utils em GitHub. |
S14 | O log-in do usuário raiz deve ser desativado. Pelo menos 1 das 3 condições a seguir deve ser atendida:
|
S16 | As imagens não devem ter usuários no nível do sistema operacional configurados com uma senha e NÃO DEVEM ter uma senha vazia. |
G01 | A imagem deve ser inicializada para todas as formas compatíveis. Verifique manualmente iniciando instâncias com sucesso para cada forma compatível. |
G03 | A imagem não deve ter endereços MAC codificados. Esvazie o arquivo /etc/udev/rules.d/70-persistent-net.rules . |
G05 | O DHCP deve ser ativado. Verifique se ele está configurado manualmente. Garantir que você possa usar SSH em uma instância desta imagem confirma que o DHCP está ativado. |
G08 | Certifique-se de que a imagem não use o Serviço de Metadados da Instância v1 (IMDSv1). Se a imagem usar pontos finais IMDSv1, a Oracle recomenda que você desative IMDSv1 e faça upgrade para IMDSv2. Consulte Fazendo Upgrade para o Serviço de Metadados da Instância v2 na documentação do Oracle Cloud Infrastructure. |
Diretrizes Obrigatórias para Imagens do Windows
Código do Erro | Descrição: |
---|---|
W01 | Antes de criar uma imagem do Windows personalizada, generalize a instância do Windows usando o Sysprep. Consulte Criando uma Imagem Generalizada. |
W02 | A conta opc não deve ser preservada ao executar a generalização do Sysprep. Consulte Criando uma Imagem Generalizada. |
G08 | Certifique-se de que a imagem não use o Serviço de Metadados da Instância v1 (IMDSv1). Se a imagem usar pontos finais IMDSv1, a Oracle recomenda que você desative IMDSv1 e faça upgrade para IMDSv2. Consulte Fazendo Upgrade para o Serviço de Metadados da Instância v2 na documentação do Oracle Cloud Infrastructure. |
Diretrizes Recomendadas para Imagens do Linux
As diretrizes a seguir são recomendadas para imagens listadas no Oracle Cloud Infrastructure Marketplace. Cada diretriz é considerada uma prática recomendada que deve ser seguida, se possível.
Código do Erro | Descrição |
---|---|
S02 | O Controle de Acesso Obrigatório (MAC) deve ser ativado. Consulte https://www.linux.com/news/securing-linux-mandatory-access-controls. |
S03 | Um Firewall de Sistema Operacional (OS) deve estar ativado e configurado para bloquear qualquer porta não especificamente necessária, conforme indicado na documentação de listagem. |
S04 | Todos os dados confidenciais, como senhas e chaves privadas, devem ser removidos. Esse tipo de dados geralmente pode ser encontrado em arquivos de log, código-fonte ou artefatos de build. Para remover esses arquivos, use o utilitário oci-image-cleanup fornecido pelo pacote oci-utils em GitHub. |
S07 | Os pacotes cloud-init devem estar disponíveis para uso durante a inicialização da instância. |
S11 | Configure o serviço SSH para impedir o log-in baseado em senha. Configure manualmente as seguintes definições:PasswordAuthentication no ChallengeResponseAuthentication no UsePAM no |
S15 | O software de imagem deve ser atualizado como parte do processo de empacotamento final. |
S17 | As senhas do aplicativo não devem ser codificadas. Todas as senhas devem ser geradas exclusivamente na primeira vez que a instância for iniciada: |
G02 | As imagens devem ser executadas no modo paravirtualizado. As imagens podem ser executadas no modo nativo. As imagens não devem ser executadas no modo emulado. |
G04 | Qualquer gerenciador de rede deve ser interrompido. Consulte https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux_OpenStack_Platform/3/html/Installation_and_Configuration_Guide/Disabling_Network_Manager.html. |
G06 | As imagens devem utilizar o serviço NTP fornecido pelo Oracle Cloud Infrastructure. Consulte Configurando o Serviço Oracle Cloud Infrastructure NTP para uma Instância. |
G07 | As imagens devem ter valores de timeout de iSCSI definidos para conectividade adequada de volume de inicialização. Consulte https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/Online_Storage_Reconfiguration_Guide/iscsi-modifying-link-loss-behavior-root.html. |
Diretrizes para Pilhas
A Oracle recomenda que você adote as melhores práticas gerais do Terraform para criar seu modelo do Terraform. No entanto, existem padrões específicos de pilha do Marketplace a serem seguidos para publicar uma pilha.
Diretrizes Obrigatórias
Veja a seguir as diretrizes obrigatórias para pilhas listadas no Oracle Cloud Infrastructure Marketplace. Cada diretriz deve ser seguida. Antes de ser publicado, cada artefato de pilha é validado em relação a cada uma dessas diretrizes.
- O artefato de pilha deve ser um arquivo zip, incluindo o(s) arquivo(s) de configuração do Terraform e um arquivo de Esquema.
- O zip deve incluir pelo menos um arquivo de configuração
(.tf)
na pasta raiz. - O zip deve incluir o arquivo de Esquema
(.yaml)
na pasta raiz. - O zip não deve incluir um arquivo de estado do Terraform no arquivo zip. Os arquivos de estado são gerenciados pelo Oracle Resource Manager (ORM). Quando os clientes iniciam uma pilha, o ORM cria e gerencia os recursos e o arquivo de estado fica disponível apenas para download.
- O zip não deve incluir a pasta de configuração de runtime do Terraform
(.terraform).
- O zip deve incluir pelo menos um arquivo de configuração
- A configuração do Terraform só deve usar imagens de instância Aprovadas ou Publicadas (Públicas ou Privadas) do Marketplace. Ele deve ter uma assinatura do Marketplace para cada uma dessas imagens. Ele deve ter referências codificadas para estas Imagens do Marketplace. Consulte Amostra de Configuração do Terraform para Uso e Assinatura de Imagem do Marketplace para obter mais detalhes.
- Os binários não devem ser baixados de repositórios externos. Todos os binários e dependências devem ser incorporados na Imagem do Marketplace publicada.
- O provisionador de execução remota do Terraform só deve ser executado no domínio do Oracle Cloud Infrastructure. Ele não deve baixar arquivos em um servidor remoto.
- O download de código ou binários de terceiros não deve ser feito usando
cloud-init.
cloud-init
é um utilitário de configuração de inicialização comumente usado para instâncias de computação em nuvem. Ele aceita a configuração por meio de mecanismos de dados do usuário especificados como parte da definição de metadados no recursooci_core_instance
.- Há vários formatos de dados do usuário suportados por
cloud-init.
Consulte https://cloudinit.readthedocs.io/en/latest/topics/format.html. - Independentemente do formato de dados do usuário,
cloud-init
NÃO DEVE ser usado para baixar qualquer código de terceiros ou binário. Todos os binários necessários durante o processo de inicialização da instância (bootstrap), se não estiverem disponíveis na imagem, deverão ser baixados por um processo (script) criado como parte da distribuição da imagem, não injetado viacloud-init
(por exemplo, aproveitandowget).
- No entanto, você pode ter um modelo
cloud-init
configurado para que os clientes usem em alguns cenários específicos, por exemplo, para importar um arquivo de chave de licença ou para importar um arquivo de configuração. Nesse caso, você deve fornecer uma variável no código do modelo do Terraform para permitir que os clientes insiram alguns dados no bloco de construçãocloud-init
, por exemplo, aproveitando a origem de dadostemplate_file
do Terraform.
- O provedor Terraform deve ser o Oracle Cloud Infrastructure. Outros provedores de nuvem ou provedores de aplicativos de terceiros não são suportados.
- Se um módulo Terraform for usado, ele deverá ser carregado de caminhos relativos locais. Não é possível carregá-lo a partir de um repositório remoto.
- A configuração do Terraform deve usar a autenticação do controlador de instâncias.
-
Especifique as versões mínima e máxima do Terraform suportadas nas quais você testou sua pilha.
- Especifique a versão mínima necessária do Terraform no formato:
~> <major_version>.<minor_version>.<patch_version>
.Onde, o
patch_version
é sempre definido como 0. Quando uma pilha é iniciada, o Resource Manager verifica o<major_version>.<minor_version>
que você definiu em seu código e usa a versão de patch mais recente disponível. É por isso que você deve usar o sinal~>
em vez do sinal=>
ao especificar a versão mínima necessária do Terraform.Por exemplo,
~> 0.14.0
indica que as versões suportadas do Terraform são 0.14.0 ou posteriores. - Especifique a versão máxima necessária do Terraform no formato:
< <major_version>.<minor_version>
.Por exemplo,
< 0.15
indica que as versões do Terraform suportadas são anteriores a 0.15.
O exemplo a seguir mostra como especificar as versões mínima e máxima do Terraform suportadas quando você testou sua pilha apenas no Terraform 0.14.
terraform { required_version = "~> 0.14.0, < 0.15" }
- Especifique a versão mínima necessária do Terraform no formato:
Para obter mais informações sobre o Terraform, incluindo o provedor Oracle Cloud Infrastructure, a autenticação do controlador de instâncias e o provisionador de execução remota, consulte a documentação do Terraform para Configuração do Provedor. Para obter informações sobre as versões suportadas do Terraform, consulte Conceitos Básicos do Provedor Terraform na Documentação do Oracle Cloud Infrastructure.
Diretrizes de Codificação para Configurações do Terraform
As diretrizes a seguir são recomendadas para pilhas listadas no Oracle Cloud Infrastructure Marketplace. Cada diretriz é considerada uma prática recomendada que deve ser seguida, se possível.
- O artefato de pilha deve permitir que os clientes criem todos os recursos de infraestrutura ou aponte para os existentes (rede, armazenamento etc.).
- As convenções de nomenclatura e a formatação devem ser seguidas:
- Invólucro - Use
lower_snake_case
para todos os nomes. Isso se aplica a nomes de variáveis, nomes de recursos, nomes de módulos, nomes de arquivos, nomes de exibição etc. - Especificando o Tipo de Recurso - Não inclua o recurso ou o tipo de origem de dados no nome. No Terraform, os recursos e as origens de dados são sempre referenciados por
<type>.<name>.
Como tal, não há necessidade de incluir o tipo no próprio nome. - ID vs OCID - No Oracle Cloud Infrastructure,
id
geralmente se refere a um campo que recebe um OCID. Dessa forma, as variáveis devem usarid
ao fazer referência a valores de OCID, em vez de usarocid
. - Nomes de Variáveis - Os nomes de variáveis para recursos do Oracle Cloud Infrastructure geralmente devem usar o mesmo nome usado para o recurso Terraform.
- Nomes para Exibição - Os nomes para exibição dos recursos do Oracle Cloud Infrastructure geralmente devem usar o mesmo nome usado para o recurso Terraform.
- Variáveis e saídas do módulo de nomeação - Ao usar um módulo, a nomeação da entrada (variáveis) e as saídas devem ser expostas ao chamador.
terraform fmt
deve ser aplicado a todo o Terraform antes de fazer check-in.
- Invólucro - Use