google / appengine-symfony-starter-project
A Symfony hello world for App Engine
Installs: 1 266
Dependents: 0
Suggesters: 0
Security: 0
Stars: 41
Watchers: 13
Forks: 13
Type:project
Requires
- php: >=5.5.9
- doctrine/annotations: ^1.2
- sensio/distribution-bundle: ^5.0
- sensio/framework-extra-bundle: ^3.0
- symfony/console: ^3.2
- symfony/monolog-bundle: ^3.1
- symfony/symfony: 3.3.0
This package is auto-updated.
Last update: 2024-04-29 22:52:00 UTC
README
This project is no longer actively developed or maintained.
Please check out Running Symfony on App Engine for PHP 7.2 instead.
Symfony for Google App Engine
This repository contains a Symfony app for Google App Engine, based off the Symfony Standard Edition.
See How to Run Symfony Hello World on App Engine Standard Environment for the full tutorial.
Installation
Install this via composer. Follow the installation instructions if you do not already have composer installed.
Once composer is installed, execute the following command to create this project:
composer create-project google/appengine-symfony-starter-project
Set Up
To run the starter app, be sure to authorize gcloud for your project.
gcloud auth login
Run Locally
composer run-script server --timeout=0
Now browse to http://localhost:8080
in your browser to view your running
application. This builds the cache for the "dev" environment and runs the
dev_appserver.py
script, which will be available if you've installed the
Google App Engine Launcher. The command for this is
defined in scripts/deploy.php
.
Deployment
Deploy to your App Engine instance by running the following command:
composer run-script deploy --timeout=0
This builds the cache for the "prod" environment and runs gcloud app deploy
,
which will be available if you've installed the
Google Cloud SDK. The command for this is defined in
scripts/deploy.php
.
See also the Symfony Hello World tutorial
Using Twig
It should be noted this example application uses a subclass of Twig_Environment
,
defined in src/Twig/Environment.php
and configured in app/config/services.yml
.
The reason for this subclass is to customize the getOptionsHash
method. Without
this, the cache cannot be warmed up outside of the PHP version being used in App
Engine.
Troubleshooting
-
If Composer fails to download the dependencies, make sure that your local PHP installation satisfies Composer's system requirements. Specifically, cURL support is required.
-
If you see errors about missing the default Cloud Storage bucket, follow the cloud integration instructions to create a default bucket for your project.
Contributing
Have a patch that will benefit this project? Awesome! Follow these steps to have it accepted.
- Please sign our Contributor License Agreement.
- Fork this Git repository and make your changes.
- Create a Pull Request
- Incorporate review feedback to your changes.
- Accepted!
License
All files in this repository are under the MIT License unless noted otherwise.