app / etc / config.php no VCS ou não

15

Eu tenho uma pergunta relacionada ao arquivo app/etc/config.php.

Este arquivo descrito aqui e definido:

Magento base dir/app/etc/config.php, que contém a lista de módulos, temas e pacotes de idiomas instalados.

É como app/etc/modules/*no Magento 1 (normalmente eu tenho esses arquivos no VCS).

Mas no Magento 2 é recomendado não compartilhar no VCS (Official .gitignore ).

Tenho alguma dúvida ou casos de uso para compartilhar no VCS, mas quero Entender porque não é recomendável adicionar no VCS

  1. Ambiente de produção (com sistema de implantação Capistrano/Deployer, etc)
    • Você faz uma nova implantação ... e precisa ativar o / s novo módulo / s php bin/magento module:enable VendorName_NewModuleantessetup:upgrade
      • Como você gerencia essa situação?
    • Você faz uma nova implantação e precisa desativar (para qualquer situação) o (s) novo (s) módulo (s) php bin/magento module:disable VendorName_NewModuleantessetup:upgrade
      • Como você gerencia essa situação?
  2. Ambiente Local

    • Se você não deseja que sua equipe tenha um módulo específico ativado / desativado
      • Como você gerencia essa situação?
  3. Ambiente de armazenamento temporário

    • Como você pode obter a mesma configuração de módulos ativados / desativados de produção, se você não compartilha app/etc/config.php
      • Como você gerencia essa situação? Você precisa fazer manualmente?

Qual é o seu ponto de vista ou como você gerencia essas situações?

obrigado

* VCS: Sistema de Controle de Versão, por exemplo: git, svn, etc

osrecio
fonte

Respostas:

13

Não há nada de errado em incluir config.phpno VCS se suas necessidades se basearem na configuração em vários ambientes, especialmente nos estados de ativação / desativação de seus módulos. O efeito colateral de fazer isso é a limitação que você impõe a si mesmo em termos de ter os mesmos temas, pacotes de idiomas etc. em cada um deles.

Para o Magento 2.2, faremos algumas melhorias para adicionar mais flexibilidade ao gerenciamento de configurações para suportar vários fluxos de trabalho de implantação. Você terá um arquivo que deve conter toda a configuração compartilhada app/etc/config.php(destinado à configuração que provavelmente será a mesma em todos os ambientes e mantida no VCS). Você terá outro arquivo que deve conter configuração específica do sistema app/etc/env.php(destinado a conter configurações que provavelmente serão diferentes nos sistemas de desenvolvimento, preparo e produção).

Enquanto isso, selecionamos algumas abordagens de implantação da comunidade que você pode encontrar nesta página , caso isso ajude.

mkotov
fonte
Você tem data oficial para o lançamento do 2.2 ?, sobre seu comentário, você tem alguma referência no github para aprofundar um pouco com essas configurações para fluxos de trabalho de implantação?
Osrecio 19/04
2.2 ainda está em andamento, mas deve sair no terceiro trimestre. Eu não estou ciente de qualquer coisa no github para brincar ...
mkotov