Install openmrs-config-haiti-master in my bahmni fresh installation

Dears,

Can someone help me install these config GitHub - mekomsolutions/openmrs-config-haiti: openmrs-module-initializer configuration for the Bahmni distribution for Haiti to my bahmni installation? i am new and want some help.

With Regards,

Thanks.

1 Like

Hi @christophe.chris2007,

Why don’t you start from the distro itself? :point_right: GitHub - mekomsolutions/bahmni-distro-haiti: Base Bahmni distribution for Haiti implementations

Bro ! please guide me, I am new in all this. few text should help on how to start.

thanks

The distribution that I pointed you to is ready to work with our Docker Compose setup for Bahmni.

In a nutshell you would have to build the distribution and then use the output of the build with our Bahmni Docker Compose.

  1. You’d need to read this first: Bahmni Docker Compose

  2. And then this: The Bahmni Haiti Distribution

I got this error : [ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:3.2.0:get (default-cli) on project standalone-pom: Couldn’t download artifact: Could not find artifact net.mekomsolutions:bahmni-distro-haiti:zip:1.2.0-SNAPSHOT in temp (https://nexus.mekomsolutions.net/repository/maven-public) → [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] MojoExecutionException - Apache Maven - Apache Software Foundation

Uploading: Capture d’écran 2024-07-04 123716.png…

@kdaud / @ruhanga – any pointers? :point_up:

Hello @christophe.chris2007, thank you for bringing this to our attention. The bahmni-distro-haiti 1.2.0-SNAPSHOT artifact is outdated and no longer available, as SNAPSHOT versions are temporary development artifacts. As a temporary solution, please update the line that contains:

export DISTRO_VERSION="1.2.0-SNAPSHOT" &&

to:

export DISTRO_VERSION="2.7.0" &&

…before pasting it into the terminal where you are executing the commands.

I have submitted a follow-up PR to address this issue and prevent it from occurring in the future.

Hello !

Another error occured,

as below

[INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 14:10 min [INFO] Finished at: 2024-07-04T15:29:04Z [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:3.2.0:get (default-cli) on project standalone-pom: Couldn’t download artifact: Could not transfer artifact net.mekomsolutions:bahmni-distro-haiti:zip:2.7.0 from/to temp (https://nexus.mekomsolutions.net/repository/maven-public): GET request of: net/mekomsolutions/bahmni-distro-haiti/2.7.0/bahmni-distro-haiti-2.7.0.zip from temp failed: Premature end of Content-Length delimited message body (expected: 185 999 793; received: 72 975 559) → [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] MojoExecutionException - Apache Maven - Apache Software Foundation

Hi @christophe.chris2007, ensure your network connection is stable and try again.

Yes, I changed the network, the installation started till it halted at this error :

ERROR: for mysql Cannot start service mysql: driver failed programming external connectivity on endpoint haiti_mysql_1 (75bc8a4e558792b60ec55e81d18b993cae341cba38c7ca028fef52d4fe5a0015): failed to bind port 0.0.0.0:3306/tcp: Error starting userland proxy: listen tcp4 0.0.0.0:3306: bind: address already in use ERROR: Encountered errors while bringing up the project.

root@groupekazam:~/bahmni/bahmni-docker-compose-2.9.0-SNAPSHOT# cd $BAHMNI_DIR/bahmni-docker-compose-$VERSION && docker-compose -p $DISTRO_GROUP up WARNING: The PROXY_TLS variable is not set. Defaulting to a blank string. haiti_proxy_1 is up-to-date Starting haiti_mysql_1 … haiti_implementer-interface_1 is up-to-date haiti_appointments_1 is up-to-date haiti_bahmni-config_1 is up-to-date haiti_metabase_1 is up-to-date haiti_bahmniapps_1 is up-to-date haiti_postgresql_1 is up-to-date haiti_odoo_1 is up-to-date haiti_openelis_1 is up-to-date Starting haiti_mysql_1 … error

ERROR: for haiti_mysql_1 Cannot start service mysql: driver failed programming external connectivity on endpoint haiti_mysql_1 (75bc8a4e558792b60ec55e81d18b993cae341cba38c7ca028fef52d4fe5a0015): failed to bind port 0.0.0.0:3306/tcp: Error starting userland proxy: listen tcp4 0.0.0.0:3306: bind: address already in use

ERROR: for mysql Cannot start service mysql: driver failed programming external connectivity on endpoint haiti_mysql_1 (75bc8a4e558792b60ec55e81d18b993cae341cba38c7ca028fef52d4fe5a0015): failed to bind port 0.0.0.0:3306/tcp: Error starting userland proxy: listen tcp4 0.0.0.0:3306: bind: address already in use ERROR: Encountered errors while bringing up the project.

I removed an old mariadb package, its working.

it seems taking too much time at this stage :

openmrs_1 | at org.bahmni.webclients.OpenElisAuthenticator.refreshRequestDetails(OpenElisAuthenticator.java:67) openmrs_1 | … 15 more openmrs_1 | ERROR - TimerSchedulerTask.run(50) |2024-07-04 22:32:11,070| FATAL ERROR: Task [class org.openmrs.scheduler.tasks.TaskThreadedInitializationWrapper] failed due to exception [java.lang.RuntimeException] openmrs_1 | java.lang.RuntimeException: org.bahmni.webclients.WebClientsException: org.bahmni.webclients.WebClientsException: Authentication with OpenELIS failed openmrs_1 | at org.bahmni.module.elisatomfeedclient.api.client.impl.OpenElisPatientFailedEventsFeedClientImpl.processFailedEvents(OpenElisPatientFailedEventsFeedClientImpl.java:80) openmrs_1 | at sun.reflect.GeneratedMethodAccessor613.invoke(Unknown Source) openmrs_1 | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) openmrs_1 | at java.lang.reflect.Method.invoke(Method.java:498) openmrs_1 | at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) openmrs_1 | at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:201) openmrs_1 | at com.sun.proxy.$Proxy254.processFailedEvents(Unknown Source) openmrs_1 | at org.bahmni.module.elisatomfeedclient.api.task.OpenElisPatientFeedFailedEventsTask.execute(OpenElisPatientFeedFailedEventsTask.java:13) openmrs_1 | at org.openmrs.scheduler.tasks.TaskThreadedInitializationWrapper.execute(TaskThreadedInitializationWrapper.java:67) openmrs_1 | at org.openmrs.scheduler.timer.TimerSchedulerTask.execute(TimerSchedulerTask.java:94) openmrs_1 | at org.openmrs.api.context.Daemon$2.run(Daemon.java:135) openmrs_1 | Caused by: org.bahmni.webclients.WebClientsException: org.bahmni.webclients.WebClientsException: Authentication with OpenELIS failed openmrs_1 | at org.bahmni.webclients.OpenElisAuthenticator.refreshRequestDetails(OpenElisAuthenticator.java:83) openmrs_1 | at org.bahmni.webclients.OpenElisAuthenticator.getRequestDetails(OpenElisAuthenticator.java:37) openmrs_1 | at org.bahmni.webclients.HttpClient.getCookies(HttpClient.java:39) openmrs_1 | at org.bahmni.module.elisatomfeedclient.api.client.OpenElisFeedClient.createAtomFeedClient(OpenElisFeedClient.java:58) openmrs_1 | at org.bahmni.module.elisatomfeedclient.api.client.OpenElisFeedClient.getAtomFeedClient(OpenElisFeedClient.java:49) openmrs_1 | at org.bahmni.module.elisatomfeedclient.api.client.impl.OpenElisPatientFailedEventsFeedClientImpl.processFailedEvents(OpenElisPatientFailedEventsFeedClientImpl.java:69) openmrs_1 | … 10 more openmrs_1 | Caused by: org.bahmni.webclients.WebClientsException: Authentication with OpenELIS failed openmrs_1 | at org.bahmni.webclients.OpenElisAuthenticator.refreshRequestDetails(OpenElisAuthenticator.java:67) openmrs_1 | … 15 more

IS THIS NORMAL PROCESS OR SOMTHING IS HANGING ?

Something is hanging… Could you share the output of the command mvn -v ?

The output looks fine. Could you try building the project as a non-root user and let me know how it goes?

christophe@groupekazam:~$ cd $BAHMNI_DIR/bahmni-docker-compose-$VERSION &&
docker-compose -p $DISTRO_GROUP up WARNING: The PROXY_TLS variable is not set. Defaulting to a blank string. Traceback (most recent call last): File “/usr/lib/python3/dist-packages/urllib3/connectionpool.py”, line 700, in urlopen httplib_response = self._make_request( File “/usr/lib/python3/dist-packages/urllib3/connectionpool.py”, line 395, in _make_request conn.request(method, url, **httplib_request_kw) File “/usr/lib/python3.10/http/client.py”, line 1283, in request self._send_request(method, url, body, headers, encode_chunked) File “/usr/lib/python3.10/http/client.py”, line 1329, in _send_request self.endheaders(body, encode_chunked=encode_chunked) File “/usr/lib/python3.10/http/client.py”, line 1278, in endheaders self._send_output(message_body, encode_chunked=encode_chunked) File “/usr/lib/python3.10/http/client.py”, line 1038, in _send_output self.send(msg) File “/usr/lib/python3.10/http/client.py”, line 976, in send self.connect() File “/usr/lib/python3/dist-packages/docker/transport/unixconn.py”, line 30, in connect sock.connect(self.unix_socket) PermissionError: [Errno 13] Permission denied

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File “/usr/lib/python3/dist-packages/requests/adapters.py”, line 439, in send resp = conn.urlopen( File “/usr/lib/python3/dist-packages/urllib3/connectionpool.py”, line 756, in urlopen retries = retries.increment( File “/usr/lib/python3/dist-packages/urllib3/util/retry.py”, line 532, in increment raise six.reraise(type(error), error, _stacktrace) File “/usr/lib/python3/dist-packages/six.py”, line 718, in reraise raise value.with_traceback(tb) File “/usr/lib/python3/dist-packages/urllib3/connectionpool.py”, line 700, in urlopen httplib_response = self._make_request( File “/usr/lib/python3/dist-packages/urllib3/connectionpool.py”, line 395, in _make_request conn.request(method, url, **httplib_request_kw) File “/usr/lib/python3.10/http/client.py”, line 1283, in request self._send_request(method, url, body, headers, encode_chunked) File “/usr/lib/python3.10/http/client.py”, line 1329, in _send_request self.endheaders(body, encode_chunked=encode_chunked) File “/usr/lib/python3.10/http/client.py”, line 1278, in endheaders self._send_output(message_body, encode_chunked=encode_chunked) File “/usr/lib/python3.10/http/client.py”, line 1038, in _send_output self.send(msg) File “/usr/lib/python3.10/http/client.py”, line 976, in send self.connect() File “/usr/lib/python3/dist-packages/docker/transport/unixconn.py”, line 30, in connect sock.connect(self.unix_socket) urllib3.exceptions.ProtocolError: (‘Connection aborted.’, PermissionError(13, ‘Permission denied’))

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File “/usr/lib/python3/dist-packages/docker/api/client.py”, line 214, in _retrieve_server_version return self.version(api_version=False)[“ApiVersion”] File “/usr/lib/python3/dist-packages/docker/api/daemon.py”, line 181, in version return self._result(self._get(url), json=True) File “/usr/lib/python3/dist-packages/docker/utils/decorators.py”, line 46, in inner return f(self, *args, **kwargs) File “/usr/lib/python3/dist-packages/docker/api/client.py”, line 237, in _get return self.get(url, **self._set_request_timeout(kwargs)) File “/usr/lib/python3/dist-packages/requests/sessions.py”, line 557, in get return self.request(‘GET’, url, **kwargs) File “/usr/lib/python3/dist-packages/requests/sessions.py”, line 544, in request resp = self.send(prep, **send_kwargs) File “/usr/lib/python3/dist-packages/requests/sessions.py”, line 657, in send r = adapter.send(request, **kwargs) File “/usr/lib/python3/dist-packages/requests/adapters.py”, line 498, in send raise ConnectionError(err, request=request) requests.exceptions.ConnectionError: (‘Connection aborted.’, PermissionError(13, ‘Permission denied’))

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File “/usr/bin/docker-compose”, line 33, in sys.exit(load_entry_point(‘docker-compose==1.29.2’, ‘console_scripts’, ‘docker-compose’)()) File “/usr/lib/python3/dist-packages/compose/cli/main.py”, line 81, in main command_func() File “/usr/lib/python3/dist-packages/compose/cli/main.py”, line 200, in perform_command project = project_from_options(‘.’, options) File “/usr/lib/python3/dist-packages/compose/cli/command.py”, line 60, in project_from_options return get_project( File “/usr/lib/python3/dist-packages/compose/cli/command.py”, line 152, in get_project client = get_client( File “/usr/lib/python3/dist-packages/compose/cli/docker_client.py”, line 41, in get_client client = docker_client( File “/usr/lib/python3/dist-packages/compose/cli/docker_client.py”, line 170, in docker_client client = APIClient(use_ssh_client=not use_paramiko_ssh, **kwargs) File “/usr/lib/python3/dist-packages/docker/api/client.py”, line 197, in init self._version = self._retrieve_server_version() File “/usr/lib/python3/dist-packages/docker/api/client.py”, line 221, in _retrieve_server_version raise DockerException( docker.errors.DockerException: Error while fetching server API version: (‘Connection aborted.’, PermissionError(13, ‘Permission denied’)) christophe@groupekazam:~/bahmni/bahmni-docker-compose-2.9.0-SNAPSHOT$

now on root this new error :

root@groupekazam:/bahmni-docker-compose-2.9.0-SNAPSHOT# cd $BAHMNI_DIR/bahmni-docker-compose-$VERSION && docker-compose -p $DISTRO_GROUP up WARNING: The PROXY_TLS variable is not set. Defaulting to a blank string. Recreating 6c80527c47a7_haiti_bahmniapps_1 … Recreating f01e5e4ab100_haiti_metabase_1 … haiti_appointments_1 is up-to-date Recreating 81846a4554ca_haiti_proxy_1 … Recreating 05d19277f73b_haiti_bahmni-config_1 … Recreating 57fe10482882_haiti_mysql_1 … Recreating 56958c53c2b3_haiti_postgresql_1 … haiti_implementer-interface_1 is up-to-date

ERROR: for f01e5e4ab100_haiti_metabase_1 ‘ContainerConfig’

ERROR: for 6c80527c47a7_haiti_bahmniapps_1 ‘ContainerConfig’

ERROR: for 81846a4554ca_haiti_proxy_1 ‘ContainerConfig’

ERROR: for 57fe10482882_haiti_mysql_1 ‘ContainerConfig’

ERROR: for 56958c53c2b3_haiti_postgresql_1 ‘ContainerConfig’

ERROR: for 05d19277f73b_haiti_bahmni-config_1 ‘ContainerConfig’

ERROR: for metabase ‘ContainerConfig’

ERROR: for bahmniapps ‘ContainerConfig’

ERROR: for proxy ‘ContainerConfig’

ERROR: for mysql ‘ContainerConfig’

ERROR: for postgresql ‘ContainerConfig’

ERROR: for bahmni-config ‘ContainerConfig’ Traceback (most recent call last): File “/usr/bin/docker-compose”, line 33, in sys.exit(load_entry_point(‘docker-compose==1.29.2’, ‘console_scripts’, ‘docker-compose’)()) File “/usr/lib/python3/dist-packages/compose/cli/main.py”, line 81, in main command_func() File “/usr/lib/python3/dist-packages/compose/cli/main.py”, line 203, in perform_command handler(command, command_options) File “/usr/lib/python3/dist-packages/compose/metrics/decorator.py”, line 18, in wrapper result = fn(*args, **kwargs) File “/usr/lib/python3/dist-packages/compose/cli/main.py”, line 1186, in up to_attach = up(False) File “/usr/lib/python3/dist-packages/compose/cli/main.py”, line 1166, in up return self.project.up( File “/usr/lib/python3/dist-packages/compose/project.py”, line 697, in up results, errors = parallel.parallel_execute( File “/usr/lib/python3/dist-packages/compose/parallel.py”, line 108, in parallel_execute raise error_to_reraise File “/usr/lib/python3/dist-packages/compose/parallel.py”, line 206, in producer result = func(obj) File “/usr/lib/python3/dist-packages/compose/project.py”, line 679, in do return service.execute_convergence_plan( File “/usr/lib/python3/dist-packages/compose/service.py”, line 579, in execute_convergence_plan return self._execute_convergence_recreate( File “/usr/lib/python3/dist-packages/compose/service.py”, line 499, in _execute_convergence_recreate containers, errors = parallel_execute( File “/usr/lib/python3/dist-packages/compose/parallel.py”, line 108, in parallel_execute raise error_to_reraise File “/usr/lib/python3/dist-packages/compose/parallel.py”, line 206, in producer result = func(obj) File “/usr/lib/python3/dist-packages/compose/service.py”, line 494, in recreate return self.recreate_container( File “/usr/lib/python3/dist-packages/compose/service.py”, line 612, in recreate_container new_container = self.create_container( File “/usr/lib/python3/dist-packages/compose/service.py”, line 330, in create_container container_options = self._get_container_create_options( File “/usr/lib/python3/dist-packages/compose/service.py”, line 921, in _get_container_create_options container_options, override_options = self._build_container_volume_options( File “/usr/lib/python3/dist-packages/compose/service.py”, line 960, in _build_container_volume_options binds, affinity = merge_volume_bindings( File “/usr/lib/python3/dist-packages/compose/service.py”, line 1548, in merge_volume_bindings old_volumes, old_mounts = get_container_data_volumes( File “/usr/lib/python3/dist-packages/compose/service.py”, line 1579, in get_container_data_volumes container.image_config[‘ContainerConfig’].get(‘Volumes’) or {} KeyError: ‘ContainerConfig’ root@groupekazam:/bahmni-docker-compose-2.9.0-SNAPSHOT#

I just tried it again today, it seems there is a new installer, but it is hanging at openmrs.