[FOLIO-374] Build VirtualBox appliance for black-box deployment Created: 03/Nov/16  Updated: 12/Nov/18  Resolved: 16/Dec/16

Status: Closed
Project: FOLIO
Components: None
Affects versions: None
Fix versions: None

Type: New Feature Priority: P3
Reporter: Wayne Schneider Assignee: Wayne Schneider
Resolution: Done Votes: 0
Labels: sprint2, sprint3, sprint4
Σ Remaining Estimate: Not Specified Remaining Estimate: Not Specified
Σ Time Spent: 1 week, 7 hours, 45 minutes Time Spent: 1 week, 5 hours
Σ Original Estimate: Not Specified Original estimate: Not Specified

Issue links:
Blocks
blocks FOLIO-384 Integrate image build into CI workflow Closed
Sub-tasks:
Key
Summary
Type
Status
Assignee
FOLIO-380 Write Docker Compose script to orches... Sub-task Closed Wayne Schneider  
FOLIO-390 Add high-level documentation for foli... Sub-task Closed Wayne Schneider  
FOLIO-402 Set up hosting for Vagrant box images Sub-task Closed Wayne Schneider  
Sprint:

 Description   

Back-end blackbox for frontend developers and partial demo system. Creates a Vagrant box using the folio-ansible project.



 Comments   
Comment by Jakub Skoczen [ 02/Dec/16 ]

Wayne Schneider How is this doing?

Comment by Wayne Schneider [ 09/Dec/16 ]

Vagrant/Ansible setup and documentation is done, work is in FOLIO-374 Closed branch of https://github.com/folio-org/folio-ansible. Tested by David Crossley, charles is also doing testing. Waiting for resolution of FOLIO-402 Closed to merge into master and close issue.

Comment by charles [ 12/Dec/16 ]

I tested "vagrant up" this morning and there were no errors-- even the users loaded! I haven't spent much time playing with it but it looks pretty nice so far.

Comment by charles [ 12/Dec/16 ]

Ok-- I get this error when trying to run the demo:

Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'mod-users-demo' could not be found. Attempting to find and install...
    default: Box Provider: virtualbox
    default: Box Version: >= 0
==> default: Box file was not detected as metadata. Adding it directly...
==> default: Adding box 'mod-users-demo' (v0) for provider: virtualbox
    default: Downloading: ftp://tekka.indexdata.com/pub/folio-vagrant/mod-users-demo.box
An error occurred while downloading the remote file. The error
message, if any, is reproduced below. Please fix this error and try
again.

Timeout was reached
Comment by Wayne Schneider [ 13/Dec/16 ]

Rats, that was because I forgot to add your IP to the tekka hosts.allow file. I've added it now - try again and see what you get.

Thanks for testing this out!

Comment by charles [ 13/Dec/16 ]

Today when I re-provisioned the non-demo box, the first three users did not load:

TASK [mod-users-data : Load users] *********************************************
failed: [dev] (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User000.json) => {"changed": false, "connection": "close", "content": "connect url http://localhost:9131: Connection reset by peer", "content_length": "59", "content_type": "text/plain", "failed": true, "item": "/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User000.json", "msg": "Status code was not [201]: HTTP Error 500: Internal Server Error", "redirected": false, "status": 500, "url": "http://localhost:9130/users"}
failed: [dev] (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User001.json) => {"changed": false, "connection": "close", "content": "connect url http://localhost:9131: Connection was closed", "content_length": "56", "content_type": "text/plain", "failed": true, "item": "/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User001.json", "msg": "Status code was not [201]: HTTP Error 500: Internal Server Error", "redirected": false, "status": 500, "url": "http://localhost:9130/users"}
failed: [dev] (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User002.json) => {"changed": false, "connection": "close", "content": "connect url http://localhost:9131: Connection was closed", "content_length": "56", "content_type": "text/plain", "failed": true, "item": "/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User002.json", "msg": "Status code was not [201]: HTTP Error 500: Internal Server Error", "redirected": false, "status": 500, "url": "http://localhost:9130/users"}
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User003.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User004.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User005.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User006.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User007.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User008.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User009.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User010.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User011.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User012.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User013.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User014.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User015.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User016.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User017.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User018.json)
changed: [dev] => (item=/Users/cledvina/Folio/folio-ansible/roles/mod-users-data/files/User019.json)

Perhaps the mod-users needs more time to spin up?

The other records are there and are returned nicely with the following command:

curl -w '\n' -H 'X-Okapi-Tenant:diku' -D- http://localhost:9130/users

Actually, at closer look, only 10 records were returned. Is there a limit set on the above request?

Now I will try to load the demo box...

Comment by charles [ 13/Dec/16 ]

The demo box loads and runs quickly-- this is a nice feature. However mod-users is not loaded. I get the following error when trying to list users.

$ curl -w '\n' -H 'X-Okapi-Tenant:diku' -D- http://localhost:9130/users
HTTP/1.1 404 Not Found
Content-Type: text/plain
Content-Length: 46

No running module instance found for mod-users

I don't know if this is intended or not. I was kind of expecting it to "just work."

Comment by Wayne Schneider [ 13/Dec/16 ]

This is a known issue, I've been unable to replicate it. I think there are some timing things that crop up around trying to register mod-users before okapi is completely spun up, see https://github.com/folio-org/folio-ansible/blob/FOLIO-374/doc/index.md#no-running-module-instance-found-for-mod-users-on-backend-or-demo-box

Comment by Wayne Schneider [ 16/Dec/16 ]

folio-ansible branch FOLIO-374 Closed merged and deleted. Working dev, backend, and demo boxes with okapi and mod-users

Generated at Thu Feb 08 23:05:17 UTC 2024 using Jira 1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d.