CiviCRM Community Forums (archive)

*

News:

Have a question about CiviCRM?
Get it answered quickly at the new
CiviCRM Stack Exchange Q+A site

This forum was archived on 25 November 2017. Learn more.
How to get involved.
What to do if you think you've found a bug.



  • CiviCRM Community Forums (archive) »
  • Old sections (read-only, deprecated) »
  • Developer Discussion (Moderator: Donald Lobo) »
  • What are best practices for deploying changes?
Pages: [1]

Author Topic: What are best practices for deploying changes?  (Read 575 times)

rcross

  • I’m new here
  • *
  • Posts: 4
  • Karma: 0
  • CiviCRM version: Various sorts
  • CMS version: Drupal (usually v7 these days)
  • MySQL version: 5.5
  • PHP version: 5.3
What are best practices for deploying changes?
August 05, 2015, 07:43:49 pm
I'm looking to set up best practices for a development workflow (i.e. dev > staging > production)

In Drupal there is features, which allows you to export your configuration into code and then deploy it.

What are other people using when doing this in CiviCRM?

Erik Hommel

  • Forum Godess / God
  • I live on this forum
  • *****
  • Posts: 1773
  • Karma: 59
    • EE-atWork
  • CiviCRM version: all sorts
  • CMS version: Drupal
  • MySQL version: Ubuntu's latest LTS version
  • PHP version: Ubuntu's latest LTS version
Re: What are best practices for deploying changes?
August 05, 2015, 11:31:11 pm
With bigger projects we tend to put all configuration stuff into a generic config extension?
Consultant/project manager at EEatWork and CiviCooP (http://www.civicoop.org/)

rcross

  • I’m new here
  • *
  • Posts: 4
  • Karma: 0
  • CiviCRM version: Various sorts
  • CMS version: Drupal (usually v7 these days)
  • MySQL version: 5.5
  • PHP version: 5.3
Re: What are best practices for deploying changes?
August 06, 2015, 09:44:36 pm
Can you expand a little more on that? what is the workflow like?

How do I put config into an extension and then have it be updated?

Erik Hommel

  • Forum Godess / God
  • I live on this forum
  • *****
  • Posts: 1773
  • Karma: 59
    • EE-atWork
  • CiviCRM version: all sorts
  • CMS version: Drupal
  • MySQL version: Ubuntu's latest LTS version
  • PHP version: Ubuntu's latest LTS version
Re: What are best practices for deploying changes?
August 10, 2015, 12:15:38 am
This is during development, once the environment is live each change is dealt with individually.

You develop an extension where contact sub types, activity types, groups, custom groups etc. are generated (based on json files). Whenever a configuration item on the development sandbox is promoted, it is added to the json files. In the target environment(s) you initially install the extension and then install changes with a clearcache?
Consultant/project manager at EEatWork and CiviCooP (http://www.civicoop.org/)

JohnFF

  • I post frequently
  • ***
  • Posts: 235
  • Karma: 6
  • CiviCRM version: 4.4.13
  • CMS version: Drupal 7.28
  • MySQL version: 5.5.31-1
  • PHP version: 5.3.27
Re: What are best practices for deploying changes?
August 24, 2015, 05:19:30 am
Features are great. Another approach, particularly when changing data structures is to create in live and then sync down to your local system (and then scramble your contacts' data, obviously). That way your IDs stay the same. A third approach is to make extensions/modules that create the data structure upon install.
If you like empowering charities in a free and open way, then you're going to love Civi.

Email Amender: https://civicrm.org/extensions/email-amender
UK Phone Validator: https://civicrm.org/extensions/uk-phone-number-validator
http://civifirst.com
https://twitter.com/civifirst

rcross

  • I’m new here
  • *
  • Posts: 4
  • Karma: 0
  • CiviCRM version: Various sorts
  • CMS version: Drupal (usually v7 these days)
  • MySQL version: 5.5
  • PHP version: 5.3
Re: What are best practices for deploying changes?
August 24, 2015, 07:23:25 am
Perhaps I'm being pedantic, but how do you deal with changes in a live site?

@Erik Hommel: I like the idea of having a json file that installs or updates different configuration objects. Is there any where I could see an example of that? 

@JohnFF: I've considered that approach too, but I'd really prefer not to be shuffling DB's back and forth. It also really only allows for a single branch of development, which is part of the issue I'm trying to handle.

Erik Hommel

  • Forum Godess / God
  • I live on this forum
  • *****
  • Posts: 1773
  • Karma: 59
    • EE-atWork
  • CiviCRM version: all sorts
  • CMS version: Drupal
  • MySQL version: Ubuntu's latest LTS version
  • PHP version: Ubuntu's latest LTS version
Re: What are best practices for deploying changes?
August 24, 2015, 07:43:54 am
There is an example here:
https://github.com/CiviCooP/be.aivl.streetimport

Check the resources folder for the json files and the CRM_Streetimport_Config for the creation
Consultant/project manager at EEatWork and CiviCooP (http://www.civicoop.org/)

Pages: [1]
  • CiviCRM Community Forums (archive) »
  • Old sections (read-only, deprecated) »
  • Developer Discussion (Moderator: Donald Lobo) »
  • What are best practices for deploying changes?

This forum was archived on 2017-11-26.