Develop using a Vagrant Box
Install the following prerequisite applications:
2. Clone the repository
Use either the GitHub Desktop Application, or the command line to get the ChurchCRM code onto your development machine:
git clone https://github.com/ChurchCRM/CRM.git
3. Start Vagrant
Vagrant takes care of building a VM with the proper prerequisutes and other configuration as specified by the ChurchCRM Project maintainers. Specifically, we use Scotch box to provide a a quick LAMP stack in the Vagrant environment.
Vagrant creates a mapped directory from the source code (locally on your computer) to the virtualized web server.
This means that you can edit files directly on your machine, and the changes are live as soon as you reload the page.
Access the Project at http://192.168.33.10
See https://github.com/scotch-io/scotch-box#database-access for connection info
CRM DB info
Vagrant Database Access
- You can use a MySQL development platform, or your favorite IDE to access the ChurchCRM databases.
- As part of the vagrant development environment, MySQL is configured to listen on all interfaces, and the churchcrm user is allowed to login from any host.
NetBeans 8.1 PHP Database Connector Setup
- Navigate to the "Services" Node from the "Window" menu
- Right Click "Databases, " and select "New Connection"
- Choose the "MySQL" Connector.
- Enter "192.168.33.10" as the Database Host.
- Enter churchcrm for Database Name, Useranme, and Password. Your connection string should be as follows:
- Click "Test Connection"
- You should now be able to browse the database schema and execute queries from the NetBeans IDE.
- All outbound email from ChurchCRM should be directed at the local instance of MailCatcher.
- MailCatcher prevents messages from actually being delivered over the Internet, but still allows you (as a developer) to see all of the headers and content of the messages
- The SMTP service listens on 127.0.0.1, port 1025 (You must manually configure your development instance of ChurchCRM to send mail to this address.)
- The Vagrant bootstrap.sh script will automatically start MailCatcher on all IP addresses owned by the Vagrant VM.
- You can view (in real time) the messages sent by ChurchCRM by opening http://192.168.33.10:1080 on the machine hosting the Vagrant environment
Propel Model update
- Make changes to propel/schema.xml
- change dir to the project root or in vagrant /vagrant
- npm run orm-gen