Jump to:

17452 Posts in 4473 Topics by 1971 members


SilverStripe Forums » Archive » Environments

Our old forums are still available as a read-only archive.

Moderators: martimiz, Sean, biapar, Willr, Ingo, simon_w

Page: 1
Go to End
Author Topic: 1478 Views
  • Ingo
    Forum Moderator
    801 Posts

    Environments Link to this post

    hey guys,

    i've just started using SS on my local machine, and have some problems how to write my _config.php. currently, we do some custom code for switching between configs, based on path, e.g. "if dir==/ischommer".

    - switches for my local environment shouldn't appear in _config.php (might collide with other local dev-environments)
    - not everybody wants their local database-passwords flying around in svn
    - you still might want some code shared between configs
    - in more complicated scenarios, we might need more than one _config.php (e.g. for NZCT I had two different _config.php for the server at their offices and manu)

    has anybody already put some thought into formalizing this - or has come up with some best-practices? while most of the stuff can be achieved by custom if/switch-statements in the _config.php, it would be nice to have some kind of "environment-switcher" that is able to handle different configurations, triggered by flags which are not under SVN.

  • Sam
    679 Posts

    Re: Environments Link to this post

    I haven't done anything myself, but here's an idea:

    If you have a folder ~/Sites, with subfolders for each of your projects.

    Make ~/Sites/_env_config.php:


    $databaseConfig['username'] = 'XXX';
    $databaseConfig['password'] = 'XXX';


    // etc


    Then, in your application's _config.php you could have something like:

    if(file_exists("../../_env_config.php")) include("../../_env_config.php");

    Put it in after databaseConfig is defined, so that the u/p can be overridden properly.

Page: 1
Go to Top

Want to know more about the company that brought you SilverStripe? Then check out SilverStripe.com

Comments on this website? Please give feedback.