I am working on a Symfony 2 WebApp. The WebApp has been online for about two years, now I would like to update the design. This work should be outsourced to a 3rd party designer.
The designer should be able to work an a live version of the WebApp (= actually running on my server instead of just plain files) so that design changes become visible instantly when refreshing the browser. Thus the designer needs to be able to change/add files directly on the server and to refresh the cache, assets and styles (using SASS + Compass) when ever needed.
At the same time, the designer should not have general access to neither the WebApp code nor the server itself.
Giving access to the design files only is already solved: I have moved all necessary files/folders from the Symfony installation to a separate folder that is accessible by FTP by the designer. Within the Symfony installation the files/folders have been replaced by symlinks (see my question here).
This works great. Only problem is, currently cache/asset/style refresh can currently only be triggered by direct access via SSH:
$ php app/console cache:clear --env=prod --no-debug
$ php app/console assetic:dump --env=prod --no-debug
$ compass compile --output-style compressed --force
Is it somehow possible to expose these commands via HTTP(S)? Of course the designer will be working on a dedicated Symfony installation. Thus changes will not have any effect on the live version.
Problem is, that app/console...
is outside the domain root of the WebApp. Of course I could set another domain to point to app/console...
But this way all other files and folders below this dir would be accessible as well.
Additionally I am not sure, if compass compile...
can be run from HTTP at all. How can this be done?
I am aware, that refreshing cache and assets is not absolutely necessary when using the dev front controller (.../app_dev.php/...
) but without able to refresh / re-compile the Compass and SASS files, style changes will not become visible.
So: Can this be done by HTTP? Maybe using some proxy-script that is called by PHP?