Islandora-Collaboration-Group / ISLE

Islandora Enterprise (ISLE) is a community project that addresses two of the most significant pain-points in Islandora: installation and maintenance.
https://Islandora-Collaboration-Group.github.io/ISLE/
GNU General Public License v3.0
32 stars 34 forks source link

Solution Pack objects not installed #84

Closed McFateM closed 6 years ago

McFateM commented 6 years ago

I'm creating a new ISLE build on my MacBook using the instructions at https://islandora-collaboration-group.github.io/ISLE/1_system_process_overview/1_4_testing/alpha_quickstart/ and all appears to be OK until running the ./install_site.sh script. There I'm getting lots of errors, one for every content model I believe, like this one...

islandora_web_archive: Did not install any objects. Could not connect to the repository. Please check the settings on the Islandora configuration page and install the required objects manually on the Solution Pack admin page.   [error]

I'm not sure what might be wrong here, but I believe I've seen the effect of this before. In a previous build, not sure where anymore, we found that many metadata forms were not present, almost as though some of the solution pack objects had not been installed.

I will continue on with this build, but am wondering if we need to insert a step into the build process to ensure that the repository is working BEFORE the solution packs are installed? If others agree, how might we implement such a check?

McFateM commented 6 years ago

Could this be our race condition in play? Since this was not the first time starting the containers I just did a 'docker-compose up -d' rather than starting them in the prescribed order.

g7morris commented 6 years ago

@McFateM This feels like a race condition for sure. Having recently rebuilt and tested on Friday, I did not encounter this as I didn't use docker-compose up -d instead launching each container individually.

g7morris commented 6 years ago

I don't know why this matters as most of the solution packs are installed later AFTER the containers spin up.

McFateM commented 6 years ago

Once the ./install_site.sh script finished (takes between 90-120 minutes on my MacBook Air) I checked Islandora’s configuration and found Fedora configured as http://fedora:8080/fedora. Is that correct? If yes, will a simple entry in /etc/hosts pointing ‘fedora’ to 127.0.0.1 suffice?

So I just did a ‘docker-compose stop’ and restarted the process using individual ‘docker-compose up –d ’ commands, but when I get to ./install_site.sh it once again says 'islandora: Did not install any objects. Could not connect to the repository.'

So I’m not sure what to do at this point. Can we insert some command/test into the build process between ./make_site.sh and ./install_site.sh to verify that the Fedora repository is working? If yes, what would that command be?

In any case, as soon as I return from lunch I’m going to switch to my Mac Mini where I successfully built ISLE over the weekend. I’ll take a look at the build process used there and try to catch and report any differences.

Thanks.

-Mark M.

From: Gavin Morris notifications@github.com<mailto:notifications@github.com> Reply-To: Islandora-Collaboration-Group/ISLE reply@reply.github.com<mailto:reply@reply.github.com> Date: Monday, December 18, 2017 at 11:18 AM To: Islandora-Collaboration-Group/ISLE ISLE@noreply.github.com<mailto:ISLE@noreply.github.com> Cc: Mark McFate mcfatem@grinnell.edu<mailto:mcfatem@grinnell.edu>, Mention mention@noreply.github.com<mailto:mention@noreply.github.com> Subject: Re: [Islandora-Collaboration-Group/ISLE] Solution Pack objects not installed (#84)

I don't know why this matters as most of the solution packs are installed later AFTER the containers spin up.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_Islandora-2DCollaboration-2DGroup_ISLE_issues_84-23issuecomment-2D352493665&d=DwMCaQ&c=HUrdOLg_tCr0UMeDjWLBOM9lLDRpsndbROGxEKQRFzk&r=PQglHQe-EzyZqJOuOVcmU0OZ6bg-89msSPuqyNlQr28&m=Qi-p8zWrcyb3jLgYH_aQXN7aGIi5niKTZ9haCQof8ZM&s=7afZVh3ZG_zIetYCKJmvzRsQGPbk24Ny0f3clRzCc50&e=, or mute the threadhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AIFIwcsD6IGogUnsypYYUNwCWxh8qMcUks5tBp5ugaJpZM4RFp5n&d=DwMCaQ&c=HUrdOLg_tCr0UMeDjWLBOM9lLDRpsndbROGxEKQRFzk&r=PQglHQe-EzyZqJOuOVcmU0OZ6bg-89msSPuqyNlQr28&m=Qi-p8zWrcyb3jLgYH_aQXN7aGIi5niKTZ9haCQof8ZM&s=5AqLTHAK6TLhZtuh9DGZbSvGLE6tSCzEmmEumv-QUL4&e=.

g7morris commented 6 years ago

@McFateM I'm not sure how to do that as an automated call as the script would need to poll tomcat and see if the webapp fedora is running? Perhaps some tomcat folks could advise here.

One can check http://fedora:8080/manager/html and restart the fedora service manually in case of this failure.

I can say from experience I"ve encountered random fedora service stops but not on ISLE (yet).

McFateM commented 6 years ago

Thanks Gavin. The http://fedora:8080/manager/html link is precisely what I was looking for, I believe. My intent was not to do anything “automatic”, although that would be nice, but to insert a step into the manual parts of the Islandora site build (before make_site or install_site.sh) just to verify that Fedora works ahead of those steps. The install_site script takes SOOOOOO LOOOONG to run on my MacBook that I just want to know if it is destined to fail before I sit with it for 90 minutes.

On Dec 18, 2017, at 1:56 PM, Gavin Morris notifications@github.com<mailto:notifications@github.com> wrote:

@McFateMhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_mcfatem&d=DwMFaQ&c=HUrdOLg_tCr0UMeDjWLBOM9lLDRpsndbROGxEKQRFzk&r=PQglHQe-EzyZqJOuOVcmU0OZ6bg-89msSPuqyNlQr28&m=0YDbmXHEcY93CjEWdvQ7yOnAvQGuMo5XmIY1rhHzE_k&s=Kx1TIr3l9eyjoGMCmx6_IqQFD9OnuS7956i9gxA62og&e= I'm not sure how to do that as an automated call as the script would need to poll tomcat and see if the webapp fedora is running? Perhaps some tomcat folks could advise here.

One can check http://fedora:8080/manager/htmlhttps://urldefense.proofpoint.com/v2/url?u=http-3A__fedora-3A8080_manager_html&d=DwMFaQ&c=HUrdOLg_tCr0UMeDjWLBOM9lLDRpsndbROGxEKQRFzk&r=PQglHQe-EzyZqJOuOVcmU0OZ6bg-89msSPuqyNlQr28&m=0YDbmXHEcY93CjEWdvQ7yOnAvQGuMo5XmIY1rhHzE_k&s=2QGW7lLwpA8ZxvNJsKjd94FGyPg_hZQVLTzzFFbpeJA&e= and restart the fedora service manually in case of this failure.

I can say from experience I"ve encountered random fedora service stops but not on ISLE (yet).

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_Islandora-2DCollaboration-2DGroup_ISLE_issues_84-23issuecomment-2D352540393&d=DwMFaQ&c=HUrdOLg_tCr0UMeDjWLBOM9lLDRpsndbROGxEKQRFzk&r=PQglHQe-EzyZqJOuOVcmU0OZ6bg-89msSPuqyNlQr28&m=0YDbmXHEcY93CjEWdvQ7yOnAvQGuMo5XmIY1rhHzE_k&s=RQ0rRLfmnOjApC4Ppwn2PyYF0WgGFMf1C8Vg2M5CVrM&e=, or mute the threadhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AIFIwS-2DHQhGSlb6I-2DCpoBQJkuT2DESv3ks5tBsOBgaJpZM4RFp5n&d=DwMFaQ&c=HUrdOLg_tCr0UMeDjWLBOM9lLDRpsndbROGxEKQRFzk&r=PQglHQe-EzyZqJOuOVcmU0OZ6bg-89msSPuqyNlQr28&m=0YDbmXHEcY93CjEWdvQ7yOnAvQGuMo5XmIY1rhHzE_k&s=JxtH-UxOOgY_Y8yR7bBMioQtTBi4_z3IY5R9amvKM8g&e=.

g7morris commented 6 years ago

@McFateM We can include it in the documentation for sure. Will revise this week.

DiegoPino commented 6 years ago

Hi,

My 2cents

I have seen this issue with failed tuque connections/wrong authentication/XACML problems, but not on fresh ISLE deployments.

A simple way to check if Fedora is running (which won't mean always Islandora is able to actually connect to Fedora, there could be even drupal filter authentication issues that hinder the SP object´s to be deployed?) would be to run a bash script like

#/bin/bash
checkifalive_response=$(curl -sL -w "%{http_code}"   "http://fedora:8080/fedora" -o /dev/null --connect-timeout 3 --max-time 10)

if [ "$checkifalive_response" == "200" ] ;
then
   echo "continue"
else
   echo "KABOOM"
fi

To make sure islandora is connecting to fedora, i would prefer a simple PHP script that actually bootstraps Drupal/tuque and uses a real fedora user. Simply to code.

PS: Nothing here is something I invented, mostly copy and pasted from some random forums. I actually like the idea of services being checked instead of only being assumed running.

g7morris commented 6 years ago

Closing ticket as @McFateM 's original request to have plain wording advising the enduser to manually check if the fedora service is running has been added to the alphaquickstartguide.md with this commit Not merged to master yet