Intégration du serveur Magento2 CI pour la production

11

Quelles sont les étapes, les directives et les flux à suivre pour réussir un workflow d'intégration continue Magento2?

Atish Goswami
la source

Réponses:

1

Nous travaillons actuellement sur l'amélioration de notre processus de déploiement dans Magento 2. Je serais heureux de recevoir vos commentaires - veuillez me cingler sur Twitter ou par e-mail.

En ce moment sur M2, vous feriez ce qui suit (dans votre environnement)

  • Obtenir ou mettre à jour le code (git / etc ...)
  • installation du compositeur
  • configuration bin / magento: mise à niveau (ou configuration: installation)
  • ensemble bin / magento: production de mode

Pour info: la production de mode fait

  • configuration bin / magento: di: compile
  • configuration bin / magento: contenu statique: déployer

Il existe d'autres approches que vous pouvez utiliser maintenant pour vous rapprocher d'un processus de construction et de déploiement en 2 étapes, mais elles sont plutôt complexes.

Mandrin
la source
Chuck, pourriez-vous expliquer davantage les processus de déploiement plus complexes?
Tjitse
Il est en cours de développement - nous allons l'écrire et le publier dans le cadre de la prochaine version (2.2). Découvrez quelques-unes des nouvelles commandes CLI que nous avons ajoutées dans la ligne principale: app: config: dump, app: config: import, config: sensitive: set, config: set, config: show, setup: db: status. L'idée est d'installer Magento sur votre machine de développement, de configurer comme vous le souhaitez sur le panneau d'administration. faire une application: config: dump (se retrouver avec un config.php, env.php), compiler et déployer des actifs statiques. Ensuite, vous copiez votre code (y compris les actifs) dans l'environnement de production (copiez à la main votre fichier env.php, le cas échéant), puis configurez: mise à niveau sur prod.
Chuck
Fondamentalement, une opération de déploiement en 2 passes. Le premier passage est sur votre machine de développement (c.-à-d. Pas de temps d'arrêt de production), le deuxième passage est en production (copie de code + temps d'arrêt potentiel (configuration: mise à niveau) si vous avez un changement de schéma). L'objectif est un temps d'arrêt de production <1 min avec changement de schéma.
Chuck
Suggestion: ne lancez pas "installer le compositeur" dans Production! Cela devrait être fait dans une étape de pré-déploiement dans le processus CI, pour éviter des problèmes graves si Packagist ou repo.magento.com sont en panne. Vous pouvez même exécuter les autres commandes magento avant le déploiement: si vous déployez un artefact précompilé (package) à la place, vous n'aurez pas à exécuter autre chose que "magento setup: upgrade" pour la DB + éventuellement un vidage du cache une fois que le code est en production. Minimiser les temps d'arrêt à seulement quelques millisecondes (ou quelques secondes) même avec des modifications de schéma.
Gabriel Somoza