teknoo / east-paas
Universal package, following the #East programming philosophy, build on Teknoo/East-Foundation (and Teknoo/Recipe) to implement a custom PaaS manager like platform.sh, compatible with Docker and Kubernetes
Fund package maintenance!
Patreon
TeknooSoftware
Installs: 4 961
Dependents: 1
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/teknoo/east-paas
Requires
- php: ^8.4
- ext-dom: *
- ext-json: *
- ext-libxml: *
- php-di/php-di: ^7.1.1
- psr/http-client: ^1.0.3
- teknoo/east-common: ^4
- teknoo/east-foundation: ^9
- teknoo/immutable: ^3.0.21
- teknoo/recipe: ^7.1
- teknoo/states: ^7
Requires (Dev)
- behat/behat: ^3.23
- doctrine/common: ^3.5
- doctrine/mongodb-odm: ^2.11.3
- doctrine/mongodb-odm-bundle: ^5.3.1
- doctrine/persistence: ^4.1
- guzzlehttp/guzzle: ^7.10
- guzzlehttp/promises: ^2.3
- guzzlehttp/psr7: ^2.7.1
- laminas/laminas-diactoros: ^3.8
- league/flysystem: ^3.30
- league/flysystem-local: ^3.30
- league/mime-type-detection: ^1.16
- nikic/php-parser: ^5.6.1
- php-http/discovery: ^1.20
- php-http/mock-client: ^1.6.1
- phpseclib/phpseclib: ^3.0.46
- phpstan/extension-installer: ^1.4.3
- phpstan/phpstan: ^2.1.31
- phpunit/phpunit: ^12.3.7
- roave/security-advisories: dev-latest
- squizlabs/php_codesniffer: ^4
- symfony/cache: ^6.4.24||^7.3
- symfony/cache-contracts: ^3.6
- symfony/config: ^6.4.24||^7.3
- symfony/console: ^6.4.24||^7.3
- symfony/dependency-injection: ^6.4.24||^7.3
- symfony/error-handler: ^6.4.24||^7.3
- symfony/event-dispatcher: ^6.4.24||^7.3
- symfony/event-dispatcher-contracts: ^3.6
- symfony/filesystem: ^6.4.24||^7.3
- symfony/finder: ^6.4.24||^7.3
- symfony/form: ^6.4.24||^7.3
- symfony/framework-bundle: ^6.4.24||^7.3
- symfony/http-client: ^6.4.24||^7.3
- symfony/http-kernel: ^6.4.24||^7.3
- symfony/messenger: ^6.4.24||^7.3
- symfony/options-resolver: ^6.4.24||^7.3
- symfony/password-hasher: ^6.4.24||^7.3
- symfony/process: ^6.4.24||^7.3
- symfony/property-access: ^6.4.24||^7.3
- symfony/property-info: ^6.4.24||^7.3
- symfony/psr-http-message-bridge: ^6.4.24||^7.3
- symfony/routing: ^6.4.24||^7.3
- symfony/security-bundle: ^6.4.24||^7.3
- symfony/security-core: ^6.4.24||^7.3
- symfony/security-http: ^6.4.24||^7.3
- symfony/serializer: ^6.4.24||^7.3
- symfony/string: ^6.4.24||^7.3
- symfony/translation: ^6.4.24||^7.3
- symfony/translation-contracts: ^3.6
- symfony/validator: ^6.4.24||^7.3
- symfony/var-exporter: ^6.4.24||^7.3
- symfony/yaml: ^6.4.24||^7.3
- teknoo/bridge-phpdi-symfony: ^7.1
- teknoo/kubernetes-client: ^2
- dev-master
- 5.0.4
- 5.0.3
- 5.0.2
- 5.0.1
- 5.0.0
- 4.4.0
- 4.3.2
- 4.3.1
- 4.3.0
- 4.3.0-beta4
- 4.3.0-beta3
- 4.3.0-beta2
- 4.3.0-beta1
- 4.2.6
- 4.2.5
- 4.2.4
- 4.2.3
- 4.2.2
- 4.2.1
- 4.2.0
- 4.1.0
- 4.0.0
- 3.4.5
- 3.4.4
- 3.4.3
- 3.4.2
- 3.4.1
- 3.4.0
- 3.3.7
- 3.3.6
- 3.3.5
- 3.3.4
- 3.3.3
- 3.3.2
- 3.3.1
- 3.3.0
- 3.2.0
- 3.1.1
- 3.1.0
- 3.0.1
- 3.0.0
- 2.8.2
- 2.8.1
- 2.8.0
- 2.7.1
- 2.7.0
- 2.6.0
- 2.5.3
- 2.5.2
- 2.5.1
- 2.5.0
- 2.4.9
- 2.4.8
- 2.4.7
- 2.4.6
- 2.4.5
- 2.4.4
- 2.4.3
- 2.4.2
- 2.4.1
- 2.4.0
- 2.3.0
- 2.3.0-beta1
- 2.2.9
- 2.2.8
- 2.2.7
- 2.2.6
- 2.2.5
- 2.2.4
- 2.2.3
- 2.2.2
- 2.2.1
- 2.2.0
- 2.2.0-beta3
- 2.2.0-beta2
- 2.2.0-beta1
- 2.1.1
- 2.1.0
- 2.0.4
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 2.0.0-beta1
- 1.8.2
- 1.8.1
- 1.8.0
- 1.7.1
- 1.7.0
- 1.6.1
- 1.6.0
- 1.5.4
- 1.5.3
- 1.5.2
- 1.5.1
- 1.5.0
- 1.4.1
- 1.4.0
- 1.3.1
- 1.3.0
- 1.2.0
- 1.1.0
- 1.0.0
- 0.0.136
- 0.0.135
- 0.0.134
- 0.0.133
- 0.0.132
- 0.0.131
- 0.0.130
- 0.0.129
- 0.0.128
- 0.0.127
- 0.0.126
- 0.0.124
- 0.0.123
- 0.0.122
- 0.0.119
- 0.0.118
- 0.0.117
- 0.0.116
- 0.0.115
- 0.0.114
- 0.0.113
- 0.0.112
- 0.0.111
- 0.0.110
- 0.0.109
- 0.0.108
- 0.0.107
- 0.0.106
- 0.0.105
- 0.0.104
- 0.0.103
- 0.0.102
- 0.0.101
- 0.0.100
- 0.0.99
- 0.0.98
- 0.0.97
- 0.0.96
- 0.0.95
- 0.0.94
- 0.0.93
- 0.0.92
- 0.0.91
- 0.0.90
- 0.0.89
- 0.0.88
- 0.0.87
- 0.0.86
- 0.0.85
- 0.0.84
- 0.0.83
- 0.0.81
- 0.0.80
- 0.0.79
- 0.0.78
- 0.0.77
- 0.0.76
- 0.0.75
- 0.0.74
- 0.0.73
- 0.0.72
- 0.0.71
- 0.0.70
- 0.0.68
- 0.0.67
- 0.0.66
- 0.0.65
- 0.0.64
- 0.0.63
- 0.0.62
- 0.0.61
- 0.0.60
- 0.0.59
- 0.0.58
- 0.0.57
- 0.0.56
- 0.0.55
- 0.0.54
- 0.0.53
- 0.0.52
- 0.0.51
- 0.0.50
- 0.0.49
- 0.0.48
- 0.0.47
- 0.0.46
- 0.0.45
- 0.0.44
- 0.0.43
- 0.0.42
- 0.0.41
- 0.0.40
- 0.0.39
- 0.0.38
- 0.0.37
- 0.0.36
- 0.0.35
- 0.0.34
- 0.0.33
- 0.0.32
- 0.0.31
- 0.0.30
- 0.0.29
- 0.0.28
- 0.0.27
- 0.0.26
- 0.0.25
- 0.0.24
- 0.0.23
- 0.0.22
- 0.0.21
- 0.0.20
- 0.0.19
- 0.0.18
- 0.0.17
- 0.0.16
- 0.0.15
- 0.0.14
- 0.0.13
- 0.0.12
- 0.0.11
- 0.0.10
- 0.0.9
- 0.0.8
- 0.0.7
- 0.0.6
- 0.0.5
- 0.0.4
- 0.0.3
- 0.0.2
- 0.0.1
- dev-release/v5
- dev-release/v4
This package is auto-updated.
Last update: 2025-10-14 13:45:34 UTC
README
East PaaS is a universal package, following the #East programming philosophy, build on
Teknoo East Foundation and
Recipe to implement a custom
PaaS manager like Platform.sh.
This library is able to fetch a project on a source repository (like Git) in a temporary folder, reads a deployment
file (by default, called .paas.yaml) run some hooks to install vendors (with composer, npm, pip, etc..),
compiles (make, symfony console), warmup cache, creates OCI image (with buildah or docker build) and deploy the
project them in a cluster (kubernetes, but with non bundled driver, Docker Swarm).
The deployment on Kubernetes includes :
NamespaceReplicaSetsorDeployments(withPods)ConfigMapandSecretsServiceandIngressQuota
Teknoo East PaaS is compatible with Docker or any OCI implementation (like BuildAh) and Kubernetes.
Implementation of other cluster orchestration like Docker Swarm can be added.
Teknoo East PaaS is bundled with a default implementation with Symfony 6.4 or newer and Doctrine ODM MongoDB to
persist data.
Documentation
The documentation, about the architecture of this library and its behavior is available here
Example with Symfony
An example of integration with Symfony file is available here
Example of .paas.yaml configuration file present into git repository to deploy
An example of the .paas.yaml file in v1.1 is available here
An example of the .paas.yaml file in v1.0 is available here
Support this project
This project is free and will remain free. It is fully supported by the activities of the EIRL. If you like it and help me maintain it and evolve it, don't hesitate to support me on Patreon or Github.
Thanks :) Richard.
Credits
EIRL Richard Déloge - https://deloge.io - Lead developer. SASU Teknoo Software - https://teknoo.software
About Teknoo Software
Teknoo Software is a PHP software editor, founded by Richard Déloge, as part of EIRL Richard Déloge. Teknoo Software's goals : Provide to our partners and to the community a set of high quality services or software, sharing knowledge and skills.
License
Space is licensed under the 3-Clause BSD License - see the licenses folder for details.
Installation & Requirements
To install this library with composer, run this command :
composer require teknoo/east-paas
This library requires :
* PHP 8.2+
* A PHP autoloader (Composer is recommended)
* Teknoo/Immutable.
* Teknoo/States.
* Teknoo/Recipe.
* Teknoo/East-Foundation.
* Optional: Symfony 6.4+ (for administration)
Contribute :)
You are welcome to contribute to this project. Fork it on Github