FOLIO "stable" and FOLIO "testing" demos


#1

We’ve made some significant changes to the folio-ansible project on GitHub to move us towards automated builds of FOLIO systems for demonstration and for testing. In particular:

  • Instead of a “backend” and a “demo” system build, we have defined a target for a “testing” system (containing the latest commits for every component) and a target for “stable” system (containing tested and released components known to work together). Both systems contain both front- and back-end components – Okapi, back-end modules, and Stripes.

  • Going forward, we will no longer release the “folio/folio-backend-auth” and “folio/folio-demo” Vagrant boxes on Atlas. Instead, we will be making regular releases of two new Vagrant boxes, “folio/stable” and “folio/testing”, built from the Ansible playbook in the folio-ansible project.

The goal for the near future is to automate the build and release of these Vagrant boxes nightly (in the case of folio/testing) or on demand (for folio/stable), so that you can always get a demonstration system with the most recent code – even if, in the case of folio/testing, it’s not guaranteed to work flawlessly.

Check out our Vagrant boxes on Atlas at https://atlas.hashicorp.com/folio – to try them out, make a new directory, cd into it, and then try:

$ vagrant init folio/stable --minimal
$ vagrant up

You should get a FOLIO system with Okapi running on http://localhost:9130 and Stripes running on http://localhost:3000, both ports forwarded to the host system.

For more information about how these boxes are built, see the folio-ansible project on GitHub.

For more information about Vagrant, see the Vagrant home page.


#2

Is there a tutorial on how to run this demo ?


#3

To run the demo, you must install Vagrant. Once Vagrant is installed, you create an empty directory, cd into it, and initialize it with the command vagrant init --minimal folio/demo. This will create a Vagrantfile in the directory. The command vagrant up should then create and start up a VM based on the demo image. The FOLIO UI (stripes) should be accessible to the host machine at http://localhost:3000. The FOLIO backend (Okapi) should be accessible at http://localhost:9130. The credentials for logging in to the UI are username diku_admin with password admin.

I hope this helps. Feel free to contact me directly on the FOLIO Slack channel (@wayne) if you continue to have problems.


#4

Do we need to install virtualbox too? Actually, after vagrrant up command I’m getting this:

<No usable default provider could be found for your system.
Vagrant relies on interactions with 3rd party systems, known as
"providers", to provide Vagrant with resources to run development
environments. Examples are VirtualBox, VMware, Hyper-V.
The easiest solution to this message is to install VirtualBox, which
is available for free on all major platforms.
If you believe you already have a provider available, make sure it
is properly installed and configured. You can see more details about
why a particular provider isn’t working by forcing usage with
vagrant up --provider=PROVIDER, which should give you a more specific
error message for that particular provider.>


#5

Yes, sorry that wasn’t clear – VirtualBox is also required, as it is
the only provider for which we produce images.


#6

Thanks. Will bounce back after the set up.


#7

It seems it is working now…

mkdir myfolio
psm@psm-Vostro-1014:~$ cd myfolio/
psm@psm-Vostro-1014:~/myfolio$ mkdir stable
psm@psm-Vostro-1014:~/myfolio$ cd stable/
psm@psm-Vostro-1014:~/myfolio/stable$ vagrant init folio/stable --minimal
A Vagrantfile has been placed in this directory. You are now
ready to vagrant up your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
vagrantup.com for more information on using Vagrant.
psm@psm-Vostro-1014:~/myfolio/stable$ ls
Vagrantfile
psm@psm-Vostro-1014:~/myfolio/stable$ vagrant up
Bringing machine ‘default’ up with ‘virtualbox’ provider…
==> default: Box ‘folio/stable’ could not be found. Attempting to find and install…
default: Box Provider: virtualbox
default: Box Version: >= 0
==> default: Loading metadata for box 'folio/stable’
default: URL: https://vagrantcloud.com/folio/stable
==> default: Adding box ‘folio/stable’ (v4.1.0) for provider: virtualbox
default: Downloading: https://vagrantcloud.com/folio/boxes/stable/versions/4.1.0/providers/virtualbox.box
default: Progress: 6% (Rate: 55667/s, Estimated time remaining: 6:05:19)

my question is that after loading the image …

1> Am I to repeat vagrant up everytime (worried for this message Estimated time remaining: 6:05:19)?

2> What should be the shutdown process… a) Shutdown VM first b) shutdown ubuntu next?

3> Will Folio stable be available after reboot?


#8

It is giving now error in the middle:

An error occurred while downloading the remote file. The error
message, if any, is reproduced below. Please fix this error and try
again.

OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 104

A tentative google search shows we need to add --insecure to avoid open_ssl read error.

Where to add --insecure in the lines below?
Vagrant.configure(“2”) do |config|
config.vm.box = "folio/stable"
end

As vagrant init folio/stable --minimal --insecure producing error:
An invalid option was specified. The help for this command
is available below.


#9

Do ‘vagrant halt’ to stop the VM. That is all.

Next time you want to use it, do ‘vagrant up’. If the box is able to be updated (i.e. because a new one is available) then it will advise you. If you do want to update, then follow its instructions, otherwise remain with your current version.

There are some other notes at folio-ansible/doc/


#10

Mine does take a long time too. Not 6 hours though. I got a fresh “folio/stable” in about 60 minutes.

At some stages it moved at a snail’s pace. Then there was zero movement for a while, and then it conked out with that same error message as yours.

Trying again did continue, and eventaully downloaded.


#11

Thanks a lot. I got it.


#12

Could you pl help to resolve these issues given below?

  1. vagrant up is now working.

  2. Opening localhost:9130 gives
    Missing Tenant

  3. the command <curl -i -w ‘\n’ -X GET http://localhost:9130/_/proxy/modules> shows;


HTTP/1.1 200 OK
Content-Type: application/json
X-Okapi-Trace: GET okapi-1.10.0 /_/proxy/modules : 200 1286us
Content-Length: 1783

[ {
“id” : “permissions-module-4.0.4”,
“name” : “permissions”
}, {
“id” : “okapi-1.10.0”,
“name” : “okapi-1.10.0”
}, {
“id” : “mod-users-bl-2.0.2”,
“name” : “users business logic”
}, {
“id” : “mod-users-14.2.0”,
“name” : “users”
}, {
“id” : “mod-notify-0.1.1”,
“name” : “Notify”
}, {
“id” : “mod-notes-0.2.0”,
“name” : “Notes”
}, {
“id” : “login-module-3.1.0”,
“name” : “login”
}, {
“id” : “inventory-storage-5.1.0”,
“name” : “Inventory Storage Module”
}, {
“id” : “inventory-5.1.1”,
“name” : “Inventory Module”
}, {
“id” : “folio_users-2.10.1”,
“name” : “User management”
}, {
“id” : “folio_trivial-1.0.0”,
“name” : “A trivial Stripes module.”
}, {
“id” : “folio_stripes-core-2.7.0”,
“name” : “The starting point for Stripes applications”
}, {
“id” : “folio_plugin-markdown-editor-0.2.0”,
“name” : “Mike’s Markdown editor plugin for Stripes”
}, {
“id” : “folio_plugin-markdown-better-0.2.0”,
“name” : “Better Markdown editor plugin for Stripes”
}, {
“id” : “folio_plugin-find-user-1.1.0”,
“name” : “User-finder for Stripes”
}, {
“id” : “folio_organization-2.2.0”,
“name” : “Organization settings”
}, {
“id” : “folio_items-1.11.0”,
“name” : “Items management”
}, {
“id” : “folio_developer-1.3.0”,
“name” : “Developer settings”
}, {
“id” : “folio_circulation-1.1.1”,
“name” : “Circulation manager”
}, {
“id” : “folio_checkout-1.1.2”,
“name” : “Item Check-out”
}, {
“id” : “folio_checkin-1.1.1”,
“name” : “Item Check-in”
}, {
“id” : “configuration-2.0.0”,
“name” : “Configuration”
}, {
“id” : “circulation-storage-3.2.0”,
“name” : “Circulation Storage Module”
}, {
“id” : “circulation-4.4.0”,
“name” : “Circulation Module”
}, {
“id” : “authtoken-module-0.6.1”,
“name” : “authtoken”
} ]

  1. the command <curl -i -w ‘\n’ -X GET http://localhost:9130/_/proxy/tenants> shows:

HTTP/1.1 200 OK
Content-Type: application/json
X-Okapi-Trace: GET okapi-1.10.0 /_/proxy/tenants : 200 726us
Content-Length: 229

[ {
“id” : “diku”,
“name” : “Datalogisk Institut”,
“description” : “Danish Library Technology Institute”
}, {
“id” : “okapi.supertenant”,
“name” : “okapi.supertenant”,
“description” : “Okapi built-in super tenant”
} ]

  1. localhost:3000
    shows login screen but the credential diku_admin /admin
    answers like this

Sorry, the information entered does not match our records!


#13

Sorry, I was out of the office last week.

Requests to any module (any endpoint other than the Okapi endpoints
//proxy, //deployment, /_/discovery, etc.) require an X-Okapi-Tenant
header. Okapi is designed as a multi-tenant webservices proxy, and it
needs to know which tenant is targeted for any request. Please see the
Okapi Guide for more information and examples
(https://github.com/folio-org/okapi/blob/master/doc/guide.md).


#14

Thanks. Trying hard to up and run FOLIO. Will report the issues, if any. Regards.


#15

Has login details changed as ‘diku_admin’ & ‘admin’ is not working for me?


#16

The folio-testing works for me with those credentials.


#17

I am trying the folio-stable with those credentials and it is not working for me.


#18

I tried the “folio/stable” VM today and yes i can log in as described.


#19

It seems that folio/stable is not available now.
I’ll try again a few days later.


Here is the message:

$ vagrant up

Bringing machine ‘default’ up with ‘virtualbox’ provider…
==> default: Box ‘folio/stable’ could not be found. Attempting to find and install…
default: Box Provider: virtualbox
default: Box Version: >= 0

The box ‘folio/stable’ could not be found or could not be accessed in the remote catalog.
If this is a private box on HashiCorp’s Atlas, please verify you’re logged in via ‘vagrant login’.
Also, please double-check the name.

The expanded URL and error message are shown below:
URL: [“https://atlas.hashicorp.com/folio/stable”]
Error: The requested URL returned error: 404 Not Found


#20

That is an issue with restarting an old one. The location was changed. We have a “troubleshooting” note here.
github.com/folio-org/folio-ansible/blob/master/doc/index.md#404-error-on-vagrant-box-update