de-swebhosting / oxideshop-surf-deployment
Surf deployment for OXID eShop
Requires
- php: >=7.4 <8.2
- typo3/surf: ^3.0
Requires (Dev)
Suggests
- de-swebhosting/typo3-surf-hardlink-release: If package is loaded hardlinks will be used in the release process
This package is auto-updated.
Last update: 2024-12-14 22:04:46 UTC
README
This library contains an application that allows the deployment of Oxid eShops with TYPO3 Surf.
How to use it
Simply add it as a composer dependency to your Surf project:
composer require de-swebhosting/oxideshop-surf-deployment
Then create a deployment using the OxidEshop
application:
$application = new De\SWebhosting\OxidSurf\Application\OxidEshop(); $deployment->addApplication($application); $application->setOption('branch', 'develop'); $application->setOption('repositoryUrl', 'git@myhoster.tld:my/oxid-project-repo.git'); $application->setDeploymentPath('/var/www/my-oxid-shop'); $node = new Node('myhost'); $node->setHostname('user@my-ssh-host'); $application->addNode($node);
Prepare your project
This deployment assumes that your project is based on the
oxid-esales/oxideshop-project
Composer package as described
here
This deployment assumes, that you included an override config
with your database and path configurations. Put this at the end of the
source/config.inc.php
file:
if (file_exists(__DIR__ . '/config.inc.override.php')) { include __DIR__ . '/config.inc.override.php'; }
Prepare your environment
On the server you deploy to create a config.inc.override.php
at
<deployment_root>/shared/source/config.inc.override.php
configuring the database connection and the paths of the instance:
$this->dbHost = 'localhost'; $this->dbName = '<db_name>'; $this->dbUser = '<db_user>'; $this->dbPwd = '<db_pass>'; $this->sShopURL = 'https://my-shop-url.tld'; $this->sSSLShopURL = 'https://my-shop-url.tld'; $this->sShopDir = '/<deployment_root>/releases/current/source/'; $this->sCompileDir = '/<deployment_root>/releases/current/source/tmp/';
You also need to create shared directories for files that should be persisted during deployments:
mkdir -p <deployment_root>/shared/out/contents mkdir <deployment_root>/shared/out/downloads mkdir <deployment_root>/shared/out/pictures
Enjoy
I hope this package works for you.
Feel free to open an issue to report errors or request features.