Skip to content

MeKeyCool/presta-deploy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

presta-deploy is a dev deployment environment for Prestashop project

This project is used to encapsulate prestashop in a convenient environment.

Thanks to it, it should be easy to deploy a dev, demo, test, ... environment and to use it.

Thereby, presta-deploy manages environment, setup and dependencies questions for Prestashop purpose.

Requirements

In order to use this project on your environment, you need

Deployment

Local first install

  1. For first install, pre-configure your environment
    1. cp infra/env/deploy.env.template infra/env/deploy.env
    2. Edit deploy.env values.
    3. make env-init
    4. Edit all required infra/env/data/${DEPLOY_ENV}/*.env values and customize what you want.
  2. Then initialize your environment : infra-init

☝️ Connect to your install (take PROXY_BASE_HOSTNAME from PROXY_BASE_HOSTNAME_LIST):

  • auto-setup : https://{PROXY_BASE_HOSTNAME}/install-dev/index.php
  • front-office : https://{PROXY_BASE_HOSTNAME}/index.php
  • back-office : https://{PROXY_BASE_HOSTNAME}/admin-dev/index.php

☝️ Take a look to Makefile commands. Usefull to understand Prestashop install/deployment.

☝️ Please notice that presta-deploy uses git submodules.

☝️ If you configured custom host with PROXY_BASE_HOSTNAME_LIST, you may want to edit your hosts file.

Emailing configuration

If you need to test Prestashop emailing, you can configure a local SMTP server with make psh-dev-configure-smtp command.

Then you can access it over http://localhost:8080/#/.

☝️ Your ${DOCKER_COMPOSE} variable requires to integrate SMTP service configuration (ie. -f ${INFRA_DOCKER_PATH}/smtp.docker-compose.yaml)

You can use another SMTP server. This example helps you to configure a Gmail SMTP server : Example of Gmail smtp server configuration :

  1. Generate an app password in Gmail

    Useful documentation :

  2. Edit your SMTP configuration (${INFRA_ENV_PATH}/smtp.env) :
  • SMTP server : smtp.gmail.com
  • SMTP username : {your gmail email}
  • SMTP password : {app password you previously generated}
  • SMTP encryption : tls or ssl
  • SMTP port : 587 (for tls) or 465 (for ssl)
  1. re run make psh-dev-configure-smtp command

⚠️ It looks that encryption value may suffer some cache problem if you set it with makefile command.

Reset your full environment (including Docker)

  1. make env-reset
  2. cd src/prestashop {change your prestashop version, exemple : git checkout 1.7.8.x}
  3. make infra-init

☝️ This won't change your *.env configurations

Reset your shop data

  1. psh-dev-reinstall

Reset your shop data after a major version change (requires to rebuild assets et clean modules)

  1. make psh-dev-reinstall-with-assets

Docker usage

TODO

  • build / login / deploy
  • environment variables
  • Docker registry

Development

Contributing

If you want to use this project for Prestashop organization projects contribution, please start reading official guidelines :

Once you are aware about Prestashop expectations, you may want to adapt your git configuration to push your local modifications to your own forks. Please take a look at Development setup

Usefull documentation

☝️ Please notice that you can find some internal documentation under doc/ directory of this repository.

Dev and stack documentation

Contribute to a Prestashop module

The command make psh-dev-reinstall-with-sources is made to load modules keeping .git then you can work and test modules inside Prestashop directly.

⚠️ Be attentive to remote configuration to sync with your fork.

Todo

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published