New Charm: IBM HTTP Server

Bug #1612535 reported by Shruthima
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Juju Charms Collection
Triaged
Undecided
Unassigned

Bug Description

Hi All,
Here is a new charm IBM HTTP for review.

To test this charm we need a principle charm like ibm-was-base/ibm-was-nd as ibm-http is subordinate.

Deployable ibm-http layer charm can be found in the below repository.

Deployable Charm Repo : https://code.launchpad.net/~ibmcharmers/charms/trusty/ibm-http/trunk

And, its source code can be found in the below repository.

Source Code Repo : https://code.launchpad.net/~ibmcharmers/charms/trusty/layer-ibm-http/trunk

IBM-HTTP charm has been pushed into charm store branch : cs:~ibmcharmers/trusty/ibm-http-3
link: https://jujucharms.com/u/ibmcharmers/ibm-http/trusty/3

IBM-HTTP used interface-was-ihs. Here is the source code link:
https://code.launchpad.net/~ibmcharmers/interface-ibm-was-ihs/trunk

Thanks

Revision history for this message
Pen Gale (pengale) wrote :

Hello,

Thank you for the work on this charm.

The big data team had some trouble tracking down the "WAS_V8.5.5_SUPPL_1_OF_N.zip" files in order to test this charm. Are you certain that you uploaded them to us?

(Now that I look at it a second time, I see some files with a similar name, but missing the string "SUPPL" -- are those the correct files?)

Revision history for this message
Shruthima (salmavar) wrote :

Hi Pete,

Sorry we missed to upload the files before.Today we uploaded all files under ibm-http and ibm-http-ppc64le.

Shruthima (salmavar)
description: updated
Revision history for this message
Pen Gale (pengale) wrote :

Hi There,

I spent some time reviewing this charm today. Thank you for slinging the files over to me, and thank you for your work in general on the charm!

I ran into a few issues:

1) Layer-ibm-im and interface:was-ihs missing from registry interfaces.juju.solutions so we could not build the ibm-http layer. We saw the following errors from the charm build process:
build: Unable to locate layer:ibm-im. Do you need to set LAYER_PATH?
build: Unable to locate interface:was-ihs. Do you need to set INTERFACE_PATH?

@kwmonroe fixed this for you, but you can upload these layers yourself (without a review) by going to http://interfaces.juju.solutions/ logging in with your LaunchPad (LP) credentials. Click on the + sign for interfaces and fill in the fields. The key field is the “repo” which is a URL to the layer repository in launchpad.

Do the same procedure to add an interface.

2) The README.md was unclear on which files to provide as resources. In addition to the files mentioned in the README, you need to grab the ibm-im installer, and pass it as the first resource. I figured it out with the help of someone experienced with deploying similar charms, but someone reading through the README, with no outside assistance, is likely to get stuck.

3) The list of licenses to agree to in the README is outdated.

I'm currently working on getting this charm deployed for testing alongside ibm-was. It would be useful to have a link to the docs on setting up ibm-was in the README.

Revision history for this message
Pen Gale (pengale) wrote :

Just a quick update: I was able to get the charm to deploy successfully, and related to ibm-was-base, using juju 2.0, in a local LXD container.

The test coverage doesn't extend beyond a successful deployment -- what do you recommend doing to validate that I have a working charm?

Revision history for this message
Shruthima (salmavar) wrote :

Hi Pete,
Thank you for reviewing the charm.
We have done with all changes you have suggested in README. Pushed the was-ihs interface to
http://interfaces.juju.solutions.

Validation:
After establishing relation between IBM WAS Base and IBM Http Server charm, you can verify by accessing the sample servlet available in WAS Base using IHS URL and IHS running port 80:

http://ihs-host-name:80/snoop

Here ihs-host-name represents the public ip address of your machine, where WAS Base and IHS deployed. 'snoop' is the sample servlet on WAS Base server to test the connection between WAS Base and IHS.

Revision history for this message
Konstantinos Tsakalozos (kos.tsakalozos) wrote :

Hi,

Thank you for your time and effort you spent.

While trying to deploy the charm I run into a couple of issues that might need your attention.

- I built the layer from bzr+ssh://bazaar.launchpad.net/~ibmcharmers/charms/trusty/layer-ibm-http/trunk/ with no problems. There was only one warning saying you should add a `repo` key to your layer.yaml.

- It seems there is a large number of style warnings. You can see them by typing "make lint" inside the charm build output directory.

- The README suggests we should have a resource named "ibm_im_installer" but I cannot see it in the metadata.yaml. Could it be that the README needs to be updated?

- When looking at the amulet test I see that you wait for a status message to appear. Although I did not run the test I am not sure how the status message will be printed since this is a subordinate charm. Am I missing something?

Thank you again for this charm.

Cheers,
konstantinos

Changed in charms:
status: New → Incomplete
Revision history for this message
Shruthima (salmavar) wrote :

Hi,

Thank you for reviewing the charm.

- We have add that 'repo' key to layer.yaml and resolved that warning.

- We have resolved all the lint errors.

- [The README suggests we should have a resource named "ibm_im_installer" but I cannot see it in the metadata.yaml. Could it be that the README needs to be updated?]

 ibm_im_installer is a part of ibm-im layer. so, once you done with 'charm build' you can find ibm_im_installer in the metadata.yaml of ibm-http(deployable charm).

- As ibm-http charm is subordinate, in amulet i have changed the code for deploying one principle charm(ibm-was-base) and adding relation part for ibm-was-base and ibm-http. So, that ibm-http charm gets deployed. But, We are unable to test the amulet code as we have a known issue https://github.com/juju/amulet/issues/141 which needs to be resolved.

Thanks,
Shruthima

Changed in charms:
status: Incomplete → Fix Committed
Revision history for this message
Konstantinos Tsakalozos (kos.tsakalozos) wrote :

Hi,

Thank you for your work on this charm. Here are a couple of things that need your attention.

- After building the charm and deploying it under ibm-was-base I hit this exception:

2016-11-03 15:34:16 INFO juju-log IBM HTTP: fetching the ibm_http_installer3 resource
2016-11-03 15:34:39 INFO juju-log IBM HTTP: dir exist already.
2016-11-03 15:34:39 INFO install architecture is x86_64
2016-11-03 15:34:39 INFO install ('/var/lib/juju/agents/unit-ibm-http-0/resources/ibm_http_installer1/ibm_http.installer1.zip', '/var/lib/juju/agents/unit-ibm-http-0/resourc
es/ibm_http_installer2/ibm_http.installer2.zip', '/var/lib/juju/agents/unit-ibm-http-0/resources/ibm_http_installer3/ibm_http.installer3.zip')
2016-11-03 15:34:39 INFO install Traceback (most recent call last):
2016-11-03 15:34:39 INFO install File "/var/lib/juju/agents/unit-ibm-http-0/charm/hooks/install", line 19, in <module>
2016-11-03 15:34:39 INFO install main()
2016-11-03 15:34:39 INFO install File "/usr/local/lib/python3.4/dist-packages/charms/reactive/__init__.py", line 78, in main
2016-11-03 15:34:39 INFO install bus.dispatch()
2016-11-03 15:34:39 INFO install File "/usr/local/lib/python3.4/dist-packages/charms/reactive/bus.py", line 434, in dispatch
2016-11-03 15:34:39 INFO install _invoke(other_handlers)
2016-11-03 15:34:39 INFO install File "/usr/local/lib/python3.4/dist-packages/charms/reactive/bus.py", line 417, in _invoke
2016-11-03 15:34:39 INFO install handler.invoke()
2016-11-03 15:34:39 INFO install File "/usr/local/lib/python3.4/dist-packages/charms/reactive/bus.py", line 291, in invoke
2016-11-03 15:34:39 INFO install self._action(*args)
2016-11-03 15:34:39 INFO install File "/var/lib/juju/agents/unit-ibm-http-0/charm/reactive/ibm_http.py", line 94, in install_ibm_http
2016-11-03 15:34:39 INFO install if ((os.path.exists(charmpath+"/disk1") and
2016-11-03 15:34:39 INFO install UnboundLocalError: local variable 'charmpath' referenced before assignment
2016-11-03 15:34:39 ERROR juju.worker.uniter.operation runhook.go:107 hook "install" failed: exit status 1
2016-11-03 15:34:49 INFO juju-log Reactive main running for hook install

- There are some issues with getting the amulet test to run from bundletester. The cs:~ibmcharmers/* charms are not accessible (this is a known issue) so I replaced any references with local builds of the same charms. However, the status message ended up to be "missing required ibm_im_installer resource". This message comes from the ibm-im layer and it shadows the expected "ibm_http_installer resource" missing. I am not aware of a good strategy for testing charms with resources, but for sure what is right now in the 01-deploy.py does not pass the tests.

Thank you for your time and effort,
Konstantinos

Changed in charms:
status: Fix Committed → In Progress
Revision history for this message
Shruthima (salmavar) wrote :

Hi,

Thank you for reviewing the charm.

- We have resolved that exception.

- As per kevin/matt suggestions our testing is ended up in showing the proper message to the user. Once the amulet issue gets resolved, will be able to test the complete code and resolve if any issues with 01-deploy.py.

Thank you
Shruthima

Changed in charms:
status: In Progress → Fix Committed
Revision history for this message
Kevin W Monroe (kwmonroe) wrote :

Thanks for the updates Shruthima! We've moved this review to the new review queue:

https://review.jujucharms.com/reviews/33

The latest charm has been imported and will be reviewed shortly.

Changed in charms:
status: Fix Committed → Triaged
Revision history for this message
Review Queue (review-queue) wrote : AWS Test Results: New Charm: IBM HTTP Server

This item has failed automated testing! Results available here http://juju-ci.vapour.ws/job/charm-bundle-test-aws/5221/

Revision history for this message
Review Queue (review-queue) wrote : LXC Test Results: New Charm: IBM HTTP Server

This item has failed automated testing! Results available here http://juju-ci.vapour.ws/job/charm-bundle-test-lxc/5074/

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.