Charles edited this page Aug 21, 2018 · 11 revisions

1. Create an account

If you don't have an account please create one via https://c9.io/signup. A CC might be required but we will be using the free version so no charges will be put on your CC.

2. Link your Github account to Cloud9

Since our repo is storied in github, this is the best way to login to your Cloud9 account.

3. Create a workspace

  • Workspace name: churchcrm
  • Hosted WorkSpace:
  • Private (you get 1 free private workspace)
  • git URL: git@github.com:ChurchCRM/CRM.git
  • template: PHP

4. Setup Apache

Using the bash tab on the bottom type the following commands to backup the old Apache config and copy new config file that update the root to src and changes the php log file location:

sudo mv /etc/apache2/sites-enabled/001-cloud9.conf  /etc/apache2/sites-enabled/001-cloud9.conf.old
sudo cp ./cloud9/001-cloud9.conf /etc/apache2/sites-enabled/001-cloud9.con

5. Upgrade PHP

  • upgrade PHP packages:
chmod +x ./cloud9/upgradePhp7.sh
./cloud9/upgradePhp7.sh
  • verify php version to be 7+ php --version
  • upload_max_file needs to be increased in /etc/php/7.0/apache2/php.ini if you are testing large image uploads:
sudo sed -i 's/^upload_max_filesize.*$/upload_max_filesize = 2G/g' /etc/php/7.0/apache2/php.ini
sudo sed -i 's/^post_max_size.*$/post_max_size = 2G/g' /etc/php/7.0/apache2/php.ini
sudo sed -i 's/^memory_limit.*$/memory_limit = 2G/g' /etc/php/7.0/apache2/php.ini
sudo sed -i 's/^memory_limit.*$/memory_limit = 2G/g' /etc/php/7.0/cli/php.ini

6. Setup DB / tools

Cloud9 by default shuts down mysql unless un start the project. Cloud9 also ships with an old version of Node/NPM, so this switches to 8LTS.

  • click the run project button
  • run bootstrap script
    • chmod +x ./cloud9/bootstrap.sh
    • ./cloud9/bootstrap.sh

7. Download and gen project files.

  • copy your own config files cp BuildConfig.json.example BuildConfig.json
  • update the json file with your own API keys from github and POEditor.com

8. Setup app

  • visit the url in the apache run tab
  • ChurchCRM File Integrity Check will be marked as failed. This seems to be expected as we are building new files.
  • keep urls as the defaults
  • db connections are
    • localhost for server
    • churchcrm for user/password/db

9 Setup email SMTP Server

  • gem install mailcatcher
  • mailcatcher --http-ip $IP --http-port 8081

In the setting update the following values in the Settings:

  • sSMTPHost: "127.0.0.1:1025"
  • bSMTPAuth: "False"

9b use mailtrap.io

  • signup for an account on mailtrap.io

In the setting update the following values in the Settings:

  • sSMTPHost: "XXXX"
  • bSMTPAuth: "XXX"
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.