Submitted vdbench initial charm for review
Bug #1065666 reported by
Ameet Paranjape
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Juju Charms Collection |
Fix Released
|
Wishlist
|
Ameet Paranjape |
Bug Description
Related branches
To post a comment you must log in.
Hi Ameet!
Thanks for submitting this charm for inclusion in the charm store.
Please make sure to review the full charm store inclusion policy so we are on the same page.
https:/ /juju.ubuntu. com/docs/ policy. html
##
The following points are blockers for official inclusion:
##
1.
On running charm proof in your charm root, I see this:
E: Charms need a maintainer (See RFC2822) - Name <email>
I: relation website has no hooks
The E: line is a problem, as it means that the charm has an error preventing its inclusion in the charm store. With maintainers, we expect charm authors to be responsive to bug reports and generally continue to update the charm as the software and their own usage of the charm grows. Please add yourself as 'maintainer: ...'
##
2.
The README file is just a copy of the old boilerplate README.ex. Please either remove it, or fill it with content explaining some examples of how to use the charm. Metadata says what vdbench does, but it doesn't really tell us how we can use the charm itself.
##
3.
hooks/install does a wget from downloads. sourceforge. net without any kind of cryptographic verification. This is vulnerable to a DNS cache poison / Man In The Middle Attack. Its not quite enough to just change http: to https in your wget btw, because sourceforge will just redirect you to an insecure mirror. I would recommend that you just distribute the tar in the charm, and upgrade it using the upgrade-charm hook whenever a new version is out. More info on this subject is available here:
https:/ /juju.ubuntu. com/Cryptograph icSourceVerific ation
##
4.
hooks/stop is just a boiler plate commented out hook. Remove it or, better, make it stop the things started in start. Also start still has the boilerplate comments at the top.
##
5.
you define a provides: website {interface: http}, but you haven't implemented the appropriate 'joined' hook for this, so it won't actually provide the http interface. Remove the relation or implement the hook, which is usually
as easy as:
#!/bin/sh
relation-set hostname=$(unit-get private-address) port=80
##
The rest of these are not blockers to inclusion, just suggestions:
##
6.
hooks/start - this is not idempotent. Assuming ./vdbench -t will fail if it is already running. You most likely need to have pid files and/or init scripts. An upstart job may be as easy as 4 or 5 lines, and would solve your stop hook problem fairly easily.
##
7.
To future proof the charm, just install default- jre-headless in hooks/install
##