3 users online. Create an account or sign in to join them.Users
This is an open discussion with 8 replies, filed under Installation.
I received an invitation to the private beta for a new PHP deployment platform called Pagoda Box. Things didn't work right out of the box at first, as I was trying to test the ability to deploy a Symphony CMS site, and Symphony requires some very specific Apache rewrite rules. However, Pagoda Box is not a LAMP stack and it's not a development platform. The goal is to simplify the process of deploying an application and scaling the application.
But the nice folks at Pagoda Box have been very accommodating, going so far as to use Symphony as an example of how to rewrite Symphony's Apache rewrite rules to the format used by the Pagoda Box configuration file.
Deploying applications is managed through GitHub. Files in writable directories are shared across the cloud and cannot be executable. This represents a challenge for Symphony, since there are executable files in the workspace directory, including events and data sources.
All files that need to be executable must be part of the repository. So what about the Symphony configuration file? It is an executable PHP file. The database credentials would be wide open for everyone to see if the configuration file is pushed to a public GitHub repository.
Pagoda Box uses an additional level of security which ensures that only owners or specified collaborators are able to connect to the database through a database tunnel. So, the database configuration settings can be added to the repository as part of the config.php.
Symphony requires that certain directories need to be writable, such as manifest/cache, manifest/logs and manifest/tmp. There may also be directories in the workspace folder for uploaded files. These files can be accessed through SSH or SFTP, but must be specified in the .box file.
The workflow will require developing locally to create data sources, events and XSLT template files. These are then added to the repository and pushed to GitHub and deployed. This then presents a problem. How do you sync the database? It will definitely be necessary to use the Database Synchroniser extension to track changes locally and to apply the SQL to migrate the changes when deploying the site.
Because the install process requires writable directories, it will not be possible to install in the usual fashion on Pagoda Box. To install Symphony, install locally, export the database, then open a tunnel and import the database to the Pagoda Box database. As an example of a working install of Symphony using the default theme, I have created a GitHub repository with the .box file configuration settings required for Symphony's PHP extensions, rewrite rules, shared writable directories and uploads directory.
I have 10 invites available for anyone who would like to participate in the Pagoda Box Private Beta. If you'd like to try out Symphony on Pagoda Box, reply to this discussion.
You can view this article and the working Symphony install based on this GitHub repository at sym.pagodabox.com
I would be interested.
Hey Brian. Invite sent! 9 invites left. (Brian will probably get 10 more.)
Yeah I think there are a bunch of us with invites, so ask away!
It sounds like a great service. I'd like an invite to test it.
@angelo, send me an email at bauhouse at gmail dot com and I'll send an invite to your email address.
I just sent it to you…
Invite sent :-)
I have invites as well if Stephen runs out
Create an account or sign in to comment.
Contact the team
Symphony • Open Source XSLT CMS