[FOLIO-1105] Run local code (module) and allow debugging it against a local VM (folio env) Created: 06/Mar/18  Updated: 10/Jan/19

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

Type: Task Priority: P3
Reporter: shale99 Assignee: Wayne Schneider
Resolution: Unresolved Votes: 0
Labels: ci, sprint33, sprint48
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original estimate: Not Specified

Issue links:
Relates
relates to FOLIO-1110 Mod-diku-admin, and other test data l... Open
Sprint:
Development Team: Core: Platform

 Description   

1. run ansible with a selected set of modules - for example - if you are developing mod-circ , you may have 7-8 modules that should be running in the vm
2. allow compiling and starting up (by the okapi in the vm) of the developed local code (module)
3. allow debugging via ide the running compiled module.

preferable:
developed code is already in a specific directory. would be nice to be able to tell the box to use it and compile it and start it up (and deploy it) - and allow to undeploy / recompile / deploy when changes are made

comments welcomed....



 Comments   
Comment by shale99 [ 07/Mar/18 ]

once the module being tested is deployed it should also be activated for a predefined tenant

Comment by shale99 [ 07/Mar/18 ]

with the ability to easily post the needed permissions <- major pain point in a local environment built from scratch (users + perms for an env)

Comment by Heikki Levanto [ 07/Mar/18 ]

Personally, I have never liked the black box approach. I understand it is necessary for the front end developers to get a well known back end installation to work against, but for a back end developer like myself, it has always seemed like a clumsy way to get things up.

I always try to develop directly on my workstation. I admit that it can be a hassle to set up. I would like to see it working this way:

  • I tell Okapi to pull all released ModuleDescriptors from our central repo (or maybe a local cache)
  • I post my ModuleDescriptor to Okapi, if the one in the repository isn't new enough for my work
  • I tell Okapi to install my module, and some test-data modules for my test tenant
  • Okapi starts all those modules up in the right order. The test-data modules load in some data I need for testing.
  • The system is up, running my locally developed modules and all its dependencies.
  • If I need to work against bleeding edge versions of some modules, I just clone their source (master or a specific branch), compile them, post their MDs to Okapi, and tell Okapi to upgrade all modules for my tenant.

We have (almost?) all machinery in place already. Okapi can pull MDs, resolve dependencies, and enable or upgrade a bunch of modules, thanks to Adam's install call. The missing piece is the test data modules. There is no technical reason why we could not have such, nobody has written one yet. Instead, most modules come with various different scripts to load their test data in, and to set things up.

The test data modules could also install permissions for well-known users, and initialize anything else we may need in the system

Comment by shale99 [ 07/Mar/18 ]

that is ok with me, it doesnt have to be in the vm as long as everything can be installed and deployed properly automatically and allows deploy / redeploy easily

Comment by Heikki Levanto [ 07/Mar/18 ]

I wrote a bit more about my idea in FOLIO-1110 Open . Comments welcome

Comment by Wayne Schneider [ 04/Oct/18 ]

Something worth considering: https://www.virtualbox.org/manual/ch06.html#network_internal

Could we simply set up the VM using internal networking and address the local module from within Okapi?

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