Ok, it is clear. Also, how I identify the "direction" of relationship? It is denoted with order of the dashes? *- - <application-name1>:<endpoint-name1>* * - <application-name2>:<endpoint-name2>* imply that the data-flow from *<application-name1>* is directed in *<application-name2>* and *- - <application-name2>:<endpoint-name2>* * - <application-name1>:<endpoint-name1>* imply that the data-flow from *<application-name2>* is directed in *<application-name1>*
On Thu, Jul 5, 2018 at 5:10 PM Merlijn Sebrechts < merlijn.sebrec...@gmail.com> wrote: > There is nothing preventing directed cycles in the graph, although I'm not > sure how common they are in real bundles. > > On Thu, 5 Jul 2018, 05:57 Ilias Tsoumas, <its...@unipi.gr> wrote: > >> Merlijn thank you for your reply. It was enlightening about the relations >> of charms. >> Only a comment till now, is each bundle a directed acyclic graph (DAG)? >> >> >> On Tue, Jun 26, 2018 at 7:10 PM Merlijn Sebrechts < >> merlijn.sebrec...@gmail.com> wrote: >> >>> The format is >>> >>> - - <application-name1>:<endpoint-name1> >>> - <application-name2>:<endpoint-name2> >>> >>> Where application-name is the name of the _instance_ of the charm (as >>> defined in the applications section of bundle.yaml) and endpoint-name is >>> the name of the endpoint (requires/provides from metadata.yaml) that is >>> used to connect the two nodes. >>> >>> Endpoint-name is optional if only one type of relation is possible >>> between the nodes (a relation is established between a required endpoint of >>> one node and a provides endpoint of the same interface type of the other >>> node). The : is not present if the endpoint name is not specified. >>> >>> So the relations section is a 2 dimensional list, the first dimension is >>> an array of all the relations and the second dimension specifies which >>> endpoints of which nodes that relation connects. >>> >>> And finally, the applications section is called "services" in some >>> bundles. >>> >>> I think that covers most of the strange quirks, let me know if you have >>> more questions. >>> >>> On Tue, 26 Jun 2018, 05:37 Ilias Tsoumas, <its...@unipi.gr> wrote: >>> >>>> Hello Merlijn and all, >>>> >>>> I developed a python script which fetching all the bundle.yml. >>>> Here is the repo: https://github.com/itsoum/BundlesFetcher >>>> Merlijn special thanks for the help about the API. >>>> >>>> Now, there rise a new "problem". As I had mentioned in the first-post >>>> above I fetch bundles for the relations between nodes(charms). But there >>>> isn't an obvious annotation technique about how relations are described >>>> inside each bundle.yaml. >>>> Check some different examples below >>>> >>>> https://github.com/itsoum/BundlesFetcher/blob/master/bundles_yaml/wordpress-site-3.yml >>>> >>>> >>>> https://github.com/itsoum/BundlesFetcher/blob/master/bundles_yaml/web-in-a-box-9.yml >>>> <https://github.com/itsoum/BundlesFetcher/blob/master/bundles_yaml/wordpress-site-3.yml> >>>> >>>> >>>> https://github.com/itsoum/BundlesFetcher/blob/master/bundles_yaml/hadoop-spark-1.yml >>>> <https://github.com/itsoum/BundlesFetcher/blob/master/bundles_yaml/wordpress-site-3.yml> >>>> >>>> For example in the first: >>>> relations: >>>> - - haproxy:reverseproxy >>>> - wordpress:website >>>> - - wordpress:cache >>>> - memcached:cache >>>> - - wordpress:db >>>> - mariadb:db >>>> - - mariadb-slave:slave >>>> - mariadb:master >>>> - - nagios:nagios >>>> - wordpress:juju-info which is the topology of application graph. The >>>> ':' isn't denotes the edge between two charms? If yes, why - wordpress:db >>>> and - mariadb:db? >>>> There us someone who knows the annotation method of relations? Could >>>> you explain? >>>> >>>> BR, >>>> Ilias >>>> >>>> >>>> >>>> >>>> On Tue, Jun 5, 2018 at 2:11 PM Ilias Tsoumas <its...@unipi.gr> wrote: >>>> >>>>> Hi Merlijn, >>>>> >>>>> First of all thank you for your quick and essential answer! >>>>> >>>>> Reply inline >>>>> >>>>> Great to hear you're doing cool stuff with Juju! I recently asked a >>>>>> similar question for a paper I've written for CLOUD 2018 >>>>>> https://lists.ubuntu.com/archives/juju/2018-January/009845.html. If >>>>>> you want, I can send it to you in private (it's accepted but not >>>>>> published >>>>>> yet). >>>>>> >>>>> >>>>> Of course. I would like to read your paper. Also me and a colleague >>>>> work on performance estimations of app components (=charms). If I have >>>>> suspected properly your paper is related with performance >>>>> analysis/profiling thus it will be inspiration for us. >>>>> >>>>> Here is the documentation for the charm store api: >>>>>> https://github.com/juju/charmstore/blob/v5-unstable/docs/API.md >>>>>> >>>>> >>>>> I will check it. >>>>> >>>>> Here is an Jupyter notebook I use to get metrics of charm and layer >>>>>> usage: >>>>>> https://github.com/IBCNServices/reactive-pattern-results/blob/master/reactive-usage-stats.ipynb. >>>>>> It should be easy to modify that code to pull info about the bundles. As >>>>>> an >>>>>> example; this is the URL to get all bundles in the Juju store: >>>>>> https://api.jujucharms.com/charmstore/v5/list?type=bundle >>>>> >>>>> >>>>> Thank you! I hope to be feasible to pull all bundle.yaml with one >>>>> query/request. >>>>> >>>>> BR, >>>>> Ilias >>>>> >>>>> On Mon, Jun 4, 2018 at 3:22 PM Merlijn Sebrechts < >>>>> merlijn.sebrec...@gmail.com> wrote: >>>>> >>>>>> Hi Ilias >>>>>> >>>>>> >>>>>> Great to hear you're doing cool stuff with Juju! I recently asked a >>>>>> similar question for a paper I've written for CLOUD 2018 >>>>>> https://lists.ubuntu.com/archives/juju/2018-January/009845.html. If >>>>>> you want, I can send it to you in private (it's accepted but not >>>>>> published >>>>>> yet). >>>>>> >>>>>> Here is the documentation for the charm store api: >>>>>> https://github.com/juju/charmstore/blob/v5-unstable/docs/API.md >>>>>> >>>>>> - download the entire zip for a bundle: >>>>>> https://api.jujucharms.com/charmstore/v5/bundle/<bundle-name>/archive >>>>>> - download a specific file of a bundle: >>>>>> >>>>>> https://api.jujucharms.com/charmstore/v5/bundle/<bundle-name>/archive/bundle.yaml >>>>>> >>>>>> Here is an Jupyter notebook I use to get metrics of charm and layer >>>>>> usage: >>>>>> https://github.com/IBCNServices/reactive-pattern-results/blob/master/reactive-usage-stats.ipynb. >>>>>> It should be easy to modify that code to pull info about the bundles. As >>>>>> an >>>>>> example; this is the URL to get all bundles in the Juju store: >>>>>> https://api.jujucharms.com/charmstore/v5/list?type=bundle >>>>>> >>>>>> Cleaning up the data will be the hard part probably, since there are >>>>>> a lot of unused/broken bundles in the store. I've used the >>>>>> downloads/month >>>>>> metric to figure out what charms are actually still used. >>>>>> >>>>>> Op ma 4 jun. 2018 om 14:05 schreef Ilias Tsoumas <its...@unipi.gr>: >>>>>> >>>>>>> Hello all, >>>>>>> >>>>>>> I have designed and I am developing a novel recommender system which >>>>>>> will provide recommendations at application graph (=bundle) composition >>>>>>> time. Now I need a real graphs dataset. I think that all juju bundles of >>>>>>> components is a good real dataset. Are there some how to aggregate all >>>>>>> these "bundle.yaml" files? Are there some api endpoint? >>>>>>> This work is funding from the European Union’s Horizon 2020 research >>>>>>> and innovation program under grant agreement No 761898 project Matilda. >>>>>>> >>>>>>> Kind regards, >>>>>>> Ilias Tsoumas >>>>>>> -- >>>>>>> Juju mailing list >>>>>>> Juju@lists.ubuntu.com >>>>>>> Modify settings or unsubscribe at: >>>>>>> https://lists.ubuntu.com/mailman/listinfo/juju >>>>>>> >>>>>>
-- Juju mailing list Juju@lists.ubuntu.com Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/juju