# OpenNebula static marketplace addon

**URL:** <https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700>\
**Category:** Integration Support\
**Tags:** marketplace\
**Created:** [December 1, 2018, 12:48am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700 "2018-12-01T00:48:19Z")\
**Posts on this page:** 17\
**Page:** 1

<div class="post-metadata">

**Author:** ![kvaps](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/kvaps/32/4496_2.png) [@kvaps](https://forum.opennebula.io/u/kvaps)\
**Post date:** [December 1, 2018, 12:48am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/1 "2018-12-01T00:48:19Z")

</div>

Hi, I’ve developed new marketplace driver as alternative to official one.  
I like an idea to store appliances configuration in git, so driver have pretty simple architecture:  
All appliances stored as simple manifests, each one in single folder, and have three files:

- `app.conf` - main appliance manifest
- `apptemplate.conf` - variables applicable to images
- `vmtemplate.conf` - virtual machine template (optional)

Appliances can be stored hierarchically. For generate metadata, just run `./generate` script, it will prepare `metadata` file with all your appliances.

Example appliances:  
[https://github.com/kvaps/addon-appmarket-static/tree/master/appliances](https://github.com/kvaps/addon-appmarket-static/tree/master/appliances) _(automatically imported from [marketplace.opennebula.systems](http://marketplace.opennebula.systems/))_

Example metadata file:  
[https://raw.githubusercontent.com/kvaps/addon-appmarket-static/master/metadata](https://raw.githubusercontent.com/kvaps/addon-appmarket-static/master/metadata)

Output metadata file can be placed anywhere, eg. it can be place directly on Github, or same S3-server with images, it should be only accessible via HTTP.

OpenNebula will download this metadata and provide appliances list to user.

---

<div class="post-metadata">

**Author:** ![kvaps](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/kvaps/32/4496_2.png) [@kvaps](https://forum.opennebula.io/u/kvaps)\
**Post date:** [June 29, 2019, 12:47am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/2 "2019-06-29T00:47:54Z")

</div>

Hi, I just wanted to tell that I’ve released new version of static marketplace with new cool features: format of appliances changed to yaml, and now it even have some GUI:

 ![screenshot](https://raw.githubusercontent.com/kvaps/addon-appmarket-static/master/screenshot.png)

You can see full demo [here](https://raw.githack.com/kvaps/addon-appmarket-static/master/exampleSite/public/index.html).

Also I’ve made some investigation to automate image building process, and was sucess with that very well, read [this topic](https://forum.opennebula.io/t/automate-opennebula-images-building/7382) if you interested in that.

Cheers!

---

<div class="post-metadata">

**Author:** ![svega](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/svega/32/5504_2.png) [@svega](https://forum.opennebula.io/u/svega)\
**Post date:** [June 29, 2019, 7:28am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/3 "2019-06-29T07:28:00Z")

</div>

> [@kvaps](#):
>
> ve released new

Hi, this looks great. Unfortunately I can not open your links to GitHub (I’m getting a 404 error). Is it still there?

---

<div class="post-metadata">

**Author:** ![kvaps](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/kvaps/32/4496_2.png) [@kvaps](https://forum.opennebula.io/u/kvaps)\
**Post date:** [June 29, 2019, 9:41am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/4 "2019-06-29T09:41:24Z")

</div>

Hi, thank you for your remark  
Yes, new link is here

> **[kvaps/opennebula-static-marketplace](https://github.com/kvaps/opennebula-static-marketplace)**
>
> OpenNebula Static Marketplace. Contribute to kvaps/opennebula-static-marketplace development by creating an account on GitHub.

_(It would be nice to move this project into OpenNebula namespace on the GitHub)_

---

<div class="post-metadata">

**Author:** ![svega](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/svega/32/5504_2.png) [@svega](https://forum.opennebula.io/u/svega)\
**Post date:** [June 29, 2019, 10:04pm UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/5 "2019-06-29T22:04:06Z")

</div>

Thanks! I think that is a great idea. @tinova, what do you think?

---

<div class="post-metadata">

**Author:** ![tinova](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/tinova/32/25_2.png) [@tinova](https://forum.opennebula.io/u/tinova)\
**Post date:** [July 1, 2019, 9:47am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/6 "2019-07-01T09:47:07Z")

</div>

Hi,

GUI looks good 😉

However, I don’t see what it adds to having an HTTP marketplace offered through Sunstone? I’m probably missing something …

---

<div class="post-metadata">

**Author:** ![kvaps](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/kvaps/32/4496_2.png) [@kvaps](https://forum.opennebula.io/u/kvaps)\
**Post date:** [July 1, 2019, 10:47am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/7 "2019-07-01T10:47:41Z")

</div>

Hi, main idea is that you don’t need any special services on the server to make it working (eg. mongo, ruby, etc.)  
So you can generate all the marketplace statically and upload to any http/s3 hosting, eg even github pages (like now), it will working fine.

You’re right, right now example site is uses the appliances metadata from the official marketplace, but later I’ll replace it with my own images generated automatically using

> **[kvaps/opennebula-images](https://github.com/kvaps/opennebula-images)**
>
> OpenNebula Images Generator. Contribute to kvaps/opennebula-images development by creating an account on GitHub.

This like organization is easy to manage and track versioning using Git

---

<div class="post-metadata">

**Author:** ![kvaps](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/kvaps/32/4496_2.png) [@kvaps](https://forum.opennebula.io/u/kvaps)\
**Post date:** [July 2, 2019, 7:57am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/8 "2019-07-02T07:57:24Z")

</div>

Just published our own marketplace with automatically generated images as I’ve promised:  
[https://marketplace.opennebula.wedos.cloud/](https://marketplace.opennebula.wedos.cloud/)

---

<div class="post-metadata">

**Author:** ![mabdou](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/mabdou/32/6432_2.png) [@mabdou](https://forum.opennebula.io/u/mabdou)\
**Post date:** [July 3, 2019, 9:06am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/9 "2019-07-03T09:06:22Z")

</div>

Awesome kvaps!

This would be a great contribution to the **OpenNebula Add-on Catalog**. I know that you have contributed to our catalog before, but take a look at the steps that we have outlined for Add-on Catalog contribution, ([https://github.com/OpenNebula/one/wiki/How-to-participate-in-Add\_on-Development](https://github.com/OpenNebula/one/wiki/How-to-participate-in-Add_on-Development)). Once you complete the steps 1 through 4, let me know, and we will pick things up at step 5 to get the Add-on published in our Catalog and hosted on our GitHub.

Nice work!  
Michael

---

<div class="post-metadata">

**Author:** ![kvaps](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/kvaps/32/4496_2.png) [@kvaps](https://forum.opennebula.io/u/kvaps)\
**Post date:** [July 3, 2019, 9:18am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/10 "2019-07-03T09:18:38Z")

</div>

@mabdou, what do you mean? All the steps from 1-5 already done:

> **[kvaps/opennebula-static-marketplace](https://github.com/kvaps/opennebula-static-marketplace)**
>
> OpenNebula Static Marketplace. Contribute to kvaps/opennebula-static-marketplace development by creating an account on GitHub.

---

<div class="post-metadata">

**Author:** ![mabdou](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/mabdou/32/6432_2.png) [@mabdou](https://forum.opennebula.io/u/mabdou)\
**Post date:** [July 3, 2019, 9:32am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/11 "2019-07-03T09:32:28Z")

</div>

From the standpoint of an add-on, it should have its own separate GitHub repository. If you have steps 1-4 taken care of, we can create the new repository in the OpenNebula GitHub.

We will move ahead and create it, and we’ll keep this moving forward. Sound good?

---

<div class="post-metadata">

**Author:** ![kvaps](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/kvaps/32/4496_2.png) [@kvaps](https://forum.opennebula.io/u/kvaps)\
**Post date:** [July 3, 2019, 9:38am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/12 "2019-07-03T09:38:20Z")

</div>

> [@mabdou](#):
>
> it should have its own separate GitHub repository

It is, there is own repo for [opennebula-static-marketplace](https://github.com/kvaps/opennebula-static-marketplace), with all steps done

I also have [opennebula-images](https://github.com/kvaps/opennebula-images) - but this is another project

---

<div class="post-metadata">

**Author:** ![mabdou](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/mabdou/32/6432_2.png) [@mabdou](https://forum.opennebula.io/u/mabdou)\
**Post date:** [July 3, 2019, 9:43am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/13 "2019-07-03T09:43:36Z")

</div>

Right now, you created the repository within your own GitHub (“kvaps/opennebula-static-marketplace”). In terms of being part of the “official” OpenNebula Add-on Catalog, is should be created and managed in the OpenNebula GitHub - as “opennebula/static-marketplace”.

Thanks.

---

<div class="post-metadata">

**Author:** ![kvaps](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/kvaps/32/4496_2.png) [@kvaps](https://forum.opennebula.io/u/kvaps)\
**Post date:** [July 3, 2019, 9:47am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/14 "2019-07-03T09:47:22Z")

</div>

But I have no permissions to create repository in [opennebula](https://github.com/opennebula/) namespace on GitHub, usually someone from OpenNebula team is creating repo for me.

---

<div class="post-metadata">

**Author:** ![mabdou](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/mabdou/32/6432_2.png) [@mabdou](https://forum.opennebula.io/u/mabdou)\
**Post date:** [July 3, 2019, 9:48am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/15 "2019-07-03T09:48:24Z")

</div>

Exactly - that is why I stated that we will take step 5 and create the repository. We will do that, and then pick up on the following communication efforts.

---

<div class="post-metadata">

**Author:** ![kvaps](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/kvaps/32/4496_2.png) [@kvaps](https://forum.opennebula.io/u/kvaps)\
**Post date:** [July 3, 2019, 9:49am UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/16 "2019-07-03T09:49:35Z")

</div>

Ow, I see, now I understand 🙂

---

<div class="post-metadata">

**Author:** ![kvaps](https://yyz1.discourse-cdn.com/flex031/user_avatar/forum.opennebula.io/kvaps/32/4496_2.png) [@kvaps](https://forum.opennebula.io/u/kvaps)\
**Post date:** [July 10, 2019, 11:09pm UTC](https://forum.opennebula.io/t/opennebula-static-marketplace-addon/6700/17 "2019-07-10T23:09:16Z")

</div>

Now driver located in OpenNebula namespace:

> **[OpenNebula/addon-static-marketplace](https://github.com/OpenNebula/addon-static-marketplace)**
>
> OpenNebula Static Marketplace. Contribute to OpenNebula/addon-static-marketplace development by creating an account on GitHub.
