Concerns: Is Commcare really open source?

192 views
Skip to first unread message

ian.l...@gmail.com

unread,
Oct 28, 2016, 9:43:16 AM10/28/16
to commcare-users
Apologies for double posting to both groups

Dear all,

I sending this as a very concerned member of the community. I have tried my hands at commcare as I needed a demo unit for a proof of concept. I have tried installing directly and ran into problems. I went the docker route and it is problems plagued.  

Now I am trying ansible/vagrant route and same thing. Each time, I have run into problems related to misleading/poor documentation. I am now wondering if these problems are genuine errors or deliberate attempts to force users to buy a subscription.

Considering the high quality of the commercial offering, these errors are simply too amateurish to be "errors". Is this a deliberate attempt to force users to subscribe? Has anyone successfully followed the instructions and got the server running and reporting data correctly?

If you have successfully done this, kindly share. thanks.

Ian

Cory Zue

unread,
Oct 28, 2016, 3:38:25 PM10/28/16
to commcar...@googlegroups.com, commcare-developers
Hi Ian,

I am sorry to hear that you’ve been having trouble setting up CommCare HQ. We are fully supportive of our open source users who want to set up and support the software on their own. However, it is an extremely complicated piece of technology, and here at Dimagi we have a team of about 15 developers working full time on the platform including 2-3 engineers fully dedicated to keeping our production environments online, up to date, and bug-free. 

As the complexity of the platform has grown so too has the complexity of setting it up and maintaining it. While we do our best to keep our documentation and tooling as up-to-date as possible, there are sometimes gaps in that documentation. I can assure you that this is not a strategy, it is simply a result of our team not having encountered the issues before, not realizing the institutional knowledge missing from the documentation, or not having the organizational capacity to resolve and address known gaps. We would like very much for CommCare to be easier to set up, but it can be hard to allocate our limited resources towards this over supporting our production environment.

Fundamentally, we provide free and open access to our software to assure our customers that their work can outlive ours. We also believe that for the overwhelming majority of our users we will always be able to provide greater value with our commercial offering over a self-hosted solution. It is one of our core values to ensure that if our users can’t (or simply don’t wish) to be working with Dimagi that they have the capacity to use or extend the platform without our involvement, but that is not our primary objective.

In short, we're sorry that you have found it to be a challenge to get up and running; that is the unfortunate reality of the complexity in the platform and something that people who self-host CommCare HQ do need to overcome. If you have specific issues you have encountered that you would like help with please feel free to reach out to our developer list and we will try to help you get up and running.  As you can see from the discussion list, our team does our best to be responsive to challenges as they come up.  

Best,
Cory

--
You received this message because you are subscribed to the Google Groups "commcare-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to commcare-users+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

Ian Loo

unread,
Oct 29, 2016, 7:40:28 PM10/29/16
to CommCare Developers, commcar...@googlegroups.com
Thanks Cory for the re-assurances. I want Commcare to grow and dominate and I am sure we all want same. I was frustrated by the bottlenecks.Apologies about my venting. I feel better and I was re-invigorated to try again and made great progress.

Kindly assist on this latest error for the ansible deployment and what are the next steps? How do I check that the environment is healthy? How do I access the apps? I have learnt a lot, just frustrating to uncover and learn rather than focus on known documentations on what to do which will save time and effort. You guys have created a game changing platform and we the community appreciate this.

My control machine can't connect to virtual machines so I deployed from the host:

ansible-playbook -u vagrant -i inventories/development --private-key=~/.vagrant.d/insecure_private_key -e "@vars/dev.yml" deploy_stack.yml

here is the latest error:

failed: [192.168.33.16] => (item=curl -X PUT "http://192.168.33.16/commcarehq") => {"changed": true, "cmd": "curl -X PUT \"http://192.168.33.16/commcarehq\"", "delta": "0:00:00.183039", "end": "2016-10-29 23:16:16.774284", "failed": true, "invocation": {"module_args": {"_raw_params": "curl -X PUT \"http://192.168.33.16/commcarehq\"", "_uses_shell": true, "chdir": null, "creates": null, "executable": null, "removes": null, "warn": true}, "module_name": "command"}, "item": "curl -X PUT \"http://192.168.33.16/commcarehq\"", "rc": 7, "start": "2016-10-29 23:16:16.591245", "stderr": "  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current\n                                 Dload  Upload   Total   Spent    Left  Speed\n\r  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) couldn't connect to host", "stdout": "", "stdout_lines": [], "warnings": ["Consider using get_url module rather than running curl"]}
 [WARNING]: Consider using get_url module rather than running curl

failed: [192.168.33.16] => (item=curl -X PUT "http://192.168.33.16/_config/admins/commcarehq" -d '"commcarehq"') => {"changed": true, "cmd": "curl -X PUT \"http://192.168.33.16/_config/admins/commcarehq\" -d '\"commcarehq\"'", "delta": "0:00:00.030544", "end": "2016-10-29 23:16:17.142850", "failed": true, "invocation": {"module_args": {"_raw_params": "curl -X PUT \"http://192.168.33.16/_config/admins/commcarehq\" -d '\"commcarehq\"'", "_uses_shell": true, "chdir": null, "creates": null, "executable": null, "removes": null, "warn": true}, "module_name": "command"}, "item": "curl -X PUT \"http://192.168.33.16/_config/admins/commcarehq\" -d '\"commcarehq\"'", "rc": 7, "start": "2016-10-29 23:16:17.112306", "stderr": "  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current\n                                 Dload  Upload   Total   Spent    Left  Speed\n\r  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) couldn't connect to host", "stdout": "", "stdout_lines": [], "warnings": ["Consider using get_url module rather than running curl"]}

PLAY RECAP *********************************************************************
192.168.33.15              : ok=51   changed=37   unreachable=0    failed=0
192.168.33.16              : ok=88   changed=23   unreachable=0    failed=1
192.168.33.17              : ok=57   changed=30   unreachable=0    failed=0

devops1@vagrant01:~/commcarehq-ansible/ansible$

Kindly assist, my goal is to setup an internal testbed to create awareness and once internal customers see the value, we will certainly procure a commercial offering. At this point, I can't procure until I have strong buy-in. thanks.

Ian.
To unsubscribe from this group and stop receiving emails from it, send an email to commcare-user...@googlegroups.com.

Simon Kelly

unread,
Oct 31, 2016, 3:32:13 AM10/31/16
to CommCare Developers
(bcc'ing off commcare-users group)

Hi Ian

It looks like your control machine can't connect to CouchDB host (192.168.33.16) or else CouchDB isn't running on that host yet. I'd check to make sure your control machine can connect and also that CouchDB is running.

As a side note I notice that your ansible command is possibly incorrect (I assume you just copied it from the README which was also wrong but I've updated it now). The correct command uses 2 vars files (dev_private.yml and dev_public.yml).

ansible-playbook -u vagrant -i inventories/development --private-key=~/.vagrant.d/insecure_private_key -e '@vars/dev/dev_private.yml' -e '@vars/dev/dev_public.yml' deploy_stack.yml

Obviously if you've combined those into a single 'dev.yml' then your command is correct.

--

---
You received this message because you are subscribed to the Google Groups "CommCare Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to commcare-developers+unsub...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.



--
Simon Kelly
Senior Engineer | Dimagi South Africa
Reply all
Reply to author
Forward
0 new messages