opennebula / addon-appmarket Goto Github PK
View Code? Open in Web Editor NEWAppMarket builds a centralized catalog of cloud applications
Home Page: http://opennebula.org/addons:addons
License: Apache License 2.0
AppMarket builds a centralized catalog of cloud applications
Home Page: http://opennebula.org/addons:addons
License: Apache License 2.0
Hi,
We have been using the appmarket for a while now in our production environment, however we noticed that the appmarket daemon tends to grow with ~ 400MB of memory per day which eventually leads to the OOM killer to kick in.
If there is any interest from the developers i can provide atop logs.
i am trying to update an appliance's metadata stored in a JSON file but somehow it does not work, see below:
$ appmarket update debian7.json -u username -p password
/usr/lib/one/ruby/oneapps/market/appmarket_client.rb:105:in `update_appliance': wrong number of arguments (1 for 2) (ArgumentError)
from /usr/bin/appmarket:251:in `block (2 levels) in <main>'
from /var/lib/gems/1.9.1/gems/opennebula-cli-4.4.0/lib/command_parser.rb:449:in `call'
from /var/lib/gems/1.9.1/gems/opennebula-cli-4.4.0/lib/command_parser.rb:449:in `run'
from /var/lib/gems/1.9.1/gems/opennebula-cli-4.4.0/lib/command_parser.rb:76:in `initialize'
from /usr/bin/appmarket:101:in `new'
from /usr/bin/appmarket:101:in `<main>'
CentOS 6.5 & ruby 1.8.7
/usr/lib/ruby/gems/1.8/gems/haml-4.0.5/lib/haml/parser.rb:86: warning: regexp has invalid interval
(DELEGATE):2:in settings': stack level too deep (SystemStackError) from (__DELEGATE__):2:in
send'
from (DELEGATE):2:in settings' from (__DELEGATE__):2:in
send'
from (DELEGATE):2:in settings' from (__DELEGATE__):2:in
send'
from (DELEGATE):2:in settings' from (__DELEGATE__):2:in
send'
from (DELEGATE):2:in settings' ... 2027 levels... from /usr/lib/ruby/gems/1.8/gems/sinatra-1.0/lib/sinatra/base.rb:929:in
configure'
from (DELEGATE):2:in send' from (__DELEGATE__):2:in
configure'
Solution is to change appmarket-server.rb from:
if settings.respond_to? :public_folder
set :public_folder, File.join(File.dirname(FILE), '..', 'public')
else
set :public, File.join(File.dirname(FILE), '..', 'public')
to
set :public_folder, File.join(File.dirname(FILE), '..', 'public')
Currently these operations are only available as admin
Instead, an error shows up because the appliance doesn't exist anymore.
Marketplace cannot parse OVF files bundled in VirtualBox OVAs
While this issue is not resolved, there should be a temporary fix:
http://dev.opennebula.org/issues/3016
appmarket: Appmarket service
appmarket-sunstone: required sunstone modifications to connect to AppMarket
This will allow us to configure multiple Sunstone server, just intalling the appmarket-sunstone package
When attempting to update the users password, a dialog is presented with the following:
KEY: 'password' must be a String; SCHEMA: typestringrequiredtrue
The cli should parse the error and give something more friendly that this:
$ appmarket create ima.json -u default -p default
{
"message": "KEY: publisher not allowed; SCHEMA: typeobjectpropertiesvisitstypenulldefault0statustypestringenuminitreadyconvertingdownloadingpublishingerrordefaultinitnametypestringrequiredtruesource_typetypestringenumovadescriptiontypestringrequiredtrueos-archtypestringdefaultx86_64opennebula_templatetypestringsourcetypestringformaturishort_descriptiontypestringrequiredtrueformattypestringenumrawvmdkqcow2vdidefaultrawos-idtypestringdefaultlogotypestringformaturidefault/img/logos/default.pngfilestypearrayitemstypeobjectpropertiesnametypestringtypetypestringenumOSCDROMDATABLOCKdefaultOSos-archtypestringdefaultx86_64formattypestringenumrawvmdkqcow2vdidefaultrawurltypestringformaturios-idtypestringdefaulthypervisortypestringenumVMWAREXENKVMalldefaultallsizetypestringrequiredtrueos-releasetypestringdefaultmd5typestringdev_prefixtypestringcompressiontypestringenumbz2gzipnonedefaultnonesha1typestringdrivertypestringos-releasetypestringdefaulthypervisortypestringenumVMWAREXENKVMalldefaultalltagstypearraydefaultitemstypestringversiontypestringdefault1.0downloadstypenulldefault0opennebula_versiontypestringdefaultallcatalogtypestringdefaultcommunity"
}
If AppMarket is installed in the same machine running Sunstone the configuration is done automatically.
Set AppMarket endpoint:
https://github.com/OpenNebula/addon-appmarket/blob/master/src/sunstone/etc/sunstone-appmarket.conf
Sunstone views/routes configuration:
https://github.com/OpenNebula/addon-appmarket/blob/master/postinstall#L81
When authenticating with the server it does not give error when listing, it just uses the anonymous user. This can be misleading sometimes.
Appmarket the does not use appmarket_url as "LINK" / "download_ref" but instead uses "/appliance/$id" as request URI. In Sunstone the "URL" parameter uses localhost:port instead of appmarket_url.
trying to update any fields (Organization, Firstname, etc) of the admin user through the web interface does not work. as soon as i click on the "Update User" button I get displayed some HTML code, i have pasted here part of it which i think might help for debugging the issue:
<div id="wrap">
<div id="header">
<img src="/__sinatra__/500.png" alt="application error" height="161" width="313" />
<div id="summary">
<h1><strong>TypeError</strong> at <strong>/user/530e1f546e9552200b000001
</strong></h1>
<h2>can't convert String into Integer</h2>
<ul>
<li class="first"><strong>file:</strong> <code>
user.rb</code></li>
<li><strong>location:</strong> <code>[]
</code></li>
<li class="last"><strong>line:
</strong> 148</li>
</ul>
</div>
<div class="clear"></div>
</div>
let me know if you need more details
Installed the appmarket and appmarket-worker v1.9.80 official OpenNebula packages on Debian 7 as per the instructions, the appmarket web interface works fine but the appmarket command line does not work, here is what happens when I try to run it:
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- command_parser (LoadError)
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /usr/bin/appmarket:34:in `<main>'
I have installed the ruby1.9.1, ruby1.9.1-dev and libruby1.9.1 Debian packages. Am I missing anything here?
Right now the errors are not very friendly, for example:
KEY: 'size' is required; SCHEMA: typestringrequiredtrue
Some gems need to be fixed to a version in 1.8.7, for example:
gem 'mime-types', '<2.0'
It would be nice to have a wizard to add template to the appliances
If a template is supplied and it's not in the appropiate format, the error message is not useful.
The validator or URLs relies on URI.parse, however it breaks if the URL contains chars like '[]~@'
Hello,
As asked on the mailing-list, the support of OneFlow service could be very interesting.
Regards.
Centos 6.5 and ruby 1.8.7 --> bundle install complains about ruby not being >= 1.9.3
Better option would be to define gemspec files per ruby version
bson_ext gem is not needed but makes the connection with mongo faster. It can be added to the gemfile or to the documentation.
Moved from http://dev.opennebula.org/issues/4174
The marketplace template evaluates the libvirt XML raw data instead of displaying it. As a result the raw part of the template does not render on the website.
Hello,
As ask on the mailing-list, exporting directly from OpenNebula to AppMarket could be a great feature.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.