Configuração de um devfile para um Ambiente de Desenvolvimento
Um devfile é um padrão aberto que ajuda você a personalizar seus ambientes de desenvolvimento em toda a sua equipe. Um devfile é um arquivo YAML que codifica as ferramentas de desenvolvimento necessárias. Ao configurar um devfile, você pode pré-determinar as ferramentas de projeto e as bibliotecas de aplicações de que precisa e o Amazon CodeCatalyst as instala em seu Ambiente de Desenvolvimento. O devfile é específico do repositório para o qual foi criado, e você pode criar um devfile separado para cada repositório. Seu Ambiente de Desenvolvimento oferece suporte a comandos e eventos e fornece uma imagem padrão de devfile universal.
Se você criar um projeto usando o esquema vazio, poderá criar um devfile manualmente. Se você criar um projeto usando um esquema diferente, o CodeCatalyst criará um devfile automaticamente. O diretório /projects
de um Ambiente de Desenvolvimento armazena os arquivos que são extraídos do repositório de origem e do devfile. O diretório /home
, que está vazio quando você cria um Ambiente de Desenvolvimento pela primeira vez, armazena os arquivos criados enquanto usa o Ambiente de Desenvolvimento. Tudo nos diretórios /projects
e /home
de um Ambiente de Desenvolvimento é armazenado de forma persistente.
nota
A pasta /home
só será alterada se você alterar o nome do devfile ou o nome do componente devfile. Se você alterar o nome do devfile ou do componente devfile, o conteúdo do diretório /home
será substituído e os dados do diretório /home
anterior não poderão ser recuperados.
Se você criar um Ambiente de Desenvolvimento com um repositório de origem que não contenha um devfile na raiz ou criar um Ambiente de Desenvolvimento sem um repositório de origem, um devfile universal padrão será aplicado automaticamente ao repositório de origem. A mesma imagem padrão de devfile universal é usada para todos os IDEs. O CodeCatalyst atualmente é compatível com o devfile versão 2.0.0. Para ter mais informações sobre o devfile, consulte Esquema Devfile - Versão 2.0.0
nota
Você só pode incluir imagens de contêiner público em seu devfile.
Os ambientes de desenvolvimento conectados à VPC oferecem suporte apenas às seguintes imagens de devfile:
-
Imagem universal
-
Imagens privadas do Amazon ECR, se o repositório estiver na mesma região da VPC
Tópicos
- Edição do repositório devfile para um Ambiente de Desenvolvimento
- Recursos do devfile aceitos pelo CodeCatalyst
- Exemplo de um devfile para um Ambiente de Desenvolvimento
- Solução de problemas de um repositório devfile usando o modo de recuperação
- Especificar imagens de devfile universais para um Ambiente de Desenvolvimento
- Comandos Devfile
- Eventos do Devfile
- Componentes do Devfile
Recursos do devfile aceitos pelo CodeCatalyst
O CodeCatalyst aceita os recursos a seguir na versão 2.0.0 do devfile. Para ter mais informações sobre o devfile, consulte Esquema Devfile - Versão 2.0.0
Atributo | Tipo |
---|---|
|
Comando |
|
Evento |
|
Componente |
|
Propriedades do componente |
|
Propriedades do componente |
|
Propriedades do componente |
|
Propriedades do componente |
Exemplo de um devfile para um Ambiente de Desenvolvimento
Veja a seguir um exemplo de um devfile simples.
schemaVersion: 2.0.0
metadata:
name: al2
components:
- name: test
container:
image: public.ecr.aws/amazonlinux/amazonlinux:2
mountSources: true
command: ['sleep', 'infinity']
- name: dockerstore
commands:
- id: setupscript
exec:
component: test
commandLine: "chmod +x script.sh"
workingDir: /projects/devfiles
- id: executescript
exec:
component: test
commandLine: "/projects/devfiles/script.sh"
- id: yumupdate
exec:
component: test
commandLine: "yum -y update --security"
events:
postStart:
- setupscript
- executescript
- yumupdate
Os logs de inicialização, comandos e eventos do devfile são capturados e armazenados em /aws/mde/logs
. Para depurar o comportamento do devfile, inicie seu Ambiente de Desenvolvimento usando um devfile ativo e acesse os logs.
Solução de problemas de um repositório devfile usando o modo de recuperação
Se houver algum problema ao iniciar seu devfile, ele entrará no modo de recuperação para que você ainda possa se conectar ao ambiente e corrigir o devfile. No modo de recuperação, a execução de /aws/mde/mde status
não conterá a localização do devfile.
{
"status": "STABLE"
}
Você pode verificar o erro nos logs em /aws/mde/logs
, corrigir o devfile e tentar executar /aws/mde/mde start
novamente.