)]}'
{
  "log": [
    {
      "commit": "2e69dc6c54da708a5ea45763eca0cf65785fb7dc",
      "tree": "d408c33ecfbf41f84be653ef9536d913a6fe240d",
      "parents": [
        "0a2060ce3db8e457c732c83b87030923cbac6e11"
      ],
      "author": {
        "name": "garciadeblas",
        "email": "gerardo.garciadeblas@telefonica.com",
        "time": "Tue Jul 05 18:05:04 2022 +0200"
      },
      "committer": {
        "name": "calvinosanc1",
        "email": "guillermo.calvino@canonical.com",
        "time": "Tue Nov 15 16:42:01 2022 +0100"
      },
      "message": "Use of yaml.SafeLoader instead of yaml.Loader\n\nChange-Id: I11a4775ac657275d14b3d7a76abbefdca5d556f4\nSigned-off-by: garciadeblas \u003cgerardo.garciadeblas@telefonica.com\u003e\n"
    },
    {
      "commit": "0ebadd80cf20e478677b1af7b57a3faaefcc239a",
      "tree": "aea79fb6c7b3197a034033d057bf47f2fe30f614",
      "parents": [
        "a8980cc3f6508f2659dc4ba4fcbeed65ba3c8e95"
      ],
      "author": {
        "name": "Pedro Escaleira",
        "email": "escaleira@av.it.pt",
        "time": "Mon Mar 21 17:54:45 2022 +0000"
      },
      "committer": {
        "name": "garciadav",
        "email": "david.garcia@canonical.com",
        "time": "Fri Apr 22 18:03:06 2022 +0200"
      },
      "message": "Bug 1939 fixed: : added a random suffix to the end of the Juju app name, in order to allow multiple Juju charms per VDU\n\nI followed the second option of the bug\u0027s description. Now, Juju\napplications have a random suffix with size\u003d5 (the random suffix\nsize used by K8s), in order to avoid collisions between applications\u0027\nnames;\n\nAlso fixed unit-test on test_n2vc_juju_conn.py\n\nChange-Id: I5d3eb8282889e58361f7c21214b11071a7530d26\nSigned-off-by: Pedro Escaleira \u003cescaleira@av.it.pt\u003e\n"
    },
    {
      "commit": "582b923b8f3f7104411c39ebdba63949d606ecd1",
      "tree": "c15dd086ff30eaa4d1078f495c9537ea38b038da",
      "parents": [
        "7114f65ca3ba581281fa03639f21db61a111b53e"
      ],
      "author": {
        "name": "David Garcia",
        "email": "david.garcia@canonical.com",
        "time": "Tue Oct 26 12:30:44 2021 +0200"
      },
      "committer": {
        "name": "garciadav",
        "email": "david.garcia@canonical.com",
        "time": "Thu Nov 04 12:06:33 2021 +0100"
      },
      "message": "Feature 10887: Add cross-model relations support\n\nChanges:\n- Extend `add_relation` method in N2VCJujuConn to include the CMR case\n- Add `add_relation` method to K8sJujuConn\n- Add n2vc/definitions.py file that includes definition ofjects for\nOffer and RelationEndpoint.\n- Change `n2vc.libjuju.Libjuju.list_offers` method to be private, and accept a filter `offer_name` parameter.\n- Update `n2vc.libjuju.Libjuju.consume` method arguments.\n- Add `n2vc.libjuju.Libjuju.offer` method to create an offer.\n\nUnit tests associated to the code changes have been either created or\nupdated accordingly\n\nChange-Id: Ibf8d574528dee0fa898e0e97578dd3a6aa68316a\nSigned-off-by: David Garcia \u003cdavid.garcia@canonical.com\u003e\n"
    },
    {
      "commit": "82b591ceed704c798ead2d9104085a08e75b511b",
      "tree": "9841a2576098f83e7d5df7e37fad8ff3904c9f58",
      "parents": [
        "2962f3e7aba84b4584d2deac30d1c163f6441a03"
      ],
      "author": {
        "name": "garciadeblas",
        "email": "gerardo.garciadeblas@telefonica.com",
        "time": "Wed Mar 24 09:22:13 2021 +0100"
      },
      "committer": {
        "name": "garciadeblas",
        "email": "gerardo.garciadeblas@telefonica.com",
        "time": "Thu May 20 17:37:10 2021 +0200"
      },
      "message": "Reformat N2VC to standardized format\n\nChange-Id: I7bfc2236cd5f059dc1b659e9fb746fef619124b8\nSigned-off-by: garciadeblas \u003cgerardo.garciadeblas@telefonica.com\u003e\n"
    },
    {
      "commit": "eb8943a887e2fb8cce0240382811f9e504f3c7fb",
      "tree": "5c4c40b579e897a4914a87c8dae1ae0ac19a1b07",
      "parents": [
        "6331b04745fcd6d44b1b0320ca6e3e63cdebd0e8"
      ],
      "author": {
        "name": "David Garcia",
        "email": "david.garcia@canonical.com",
        "time": "Mon Apr 12 12:07:37 2021 +0200"
      },
      "committer": {
        "name": "David Garcia",
        "email": "david.garcia@canonical.com",
        "time": "Mon May 03 13:30:40 2021 +0200"
      },
      "message": "Feature 10239: Distributed VCA\n\n- Add vca_id in all calls that invoke libjuju. This is for being able to\ntalk to the default VCA or the VCA associated to the VIM\n- Add store.py: Abstraction to talk to the database.\n  - DBMongoStore: Use the db from common to talk to the database\n  - MotorStore: Use motor, an asynchronous mongodb client to talk to the\ndatabase\n- Add vca/connection.py: Represents the data needed to connect the VCA\n- Add EnvironConfig in config.py: Class to get the environment config,\nand avoid LCM from passing that\n\nChange-Id: I28625e0c56ce408114022c83d4b7cacbb649434c\nSigned-off-by: David Garcia \u003cdavid.garcia@canonical.com\u003e\n"
    },
    {
      "commit": "b816d822dcc61a709b22f475085c3f94dceca61d",
      "tree": "2c78ced84760ac63a6c4f3e78d21da51cbe32e8a",
      "parents": [
        "cdf0b8e857e1373410e61bc72cd1a9f5c1ab7ca7"
      ],
      "author": {
        "name": "ksaikiranr",
        "email": "saikiran.k@tataelxsi.co.in",
        "time": "Wed Mar 17 12:50:20 2021 +0530"
      },
      "committer": {
        "name": "ksaikiranr",
        "email": "saikiran.k@tataelxsi.co.in",
        "time": "Wed Apr 14 10:01:18 2021 +0530"
      },
      "message": "Feature-9904: Enhancing NG-UI to enable Juju operational view dashboard\n\nAdded functions to get action list, config list and executed action list for KNF\n\nChange-Id: Ibec764c719da5507168c474cf48fc23efbb9c846\nSigned-off-by: jayaramans \u003cselvi.j@tataelxsi.co.in\u003e\nSigned-off-by: ksaikiranr \u003csaikiran.k@tataelxsi.co.in\u003e\n"
    },
    {
      "commit": "475a7221e3598ad1c75ce802c5ad74ef7ecf72f1",
      "tree": "d4d2a9a5d1430567848e4721d9ba7e4eea869189",
      "parents": [
        "85755d17a807df83d0e472e6e73500a4d743296b"
      ],
      "author": {
        "name": "David Garcia",
        "email": "david.garcia@canonical.com",
        "time": "Mon Sep 21 16:19:15 2020 +0200"
      },
      "committer": {
        "name": "David Garcia",
        "email": "david.garcia@canonical.com",
        "time": "Tue Sep 22 18:24:22 2020 +0200"
      },
      "message": "Add new kubectl.py functions, modify some libjuju.py functions, add unit tests\n\n- Kubectl.py: two new functions added (get_configuration and get_default_storage_class)\n  - get_configuration(): Returns a kubernetes Configuration object.\n    It can be used to properly parse the kubeconfig.\n  - get_default_storage_class(): Searches for the default storage class of a k8s cluster.\n- Libjuju.py: modified add_k8s function and get_k8s_cloud_credential function was added.\n  - add_k8s(): Improves the way of generation Cloud and CloudCredential objects for the K8s Cloud\n  - get_k8s_cloud_credential(): It parses the kubeconfig to properly determine the authentication\n    method type that should be used for that k8s cluster.\n- Unit tests: Added unit tests for all the new functions added.\n- Exceptions: Make all Juju Exceptions to inherit from N2VC Exception.\n  Now Juju exceptions have the message attribute, that is useful for unit testing, to not only check that\n  an exception raised, but to check the message too.\n- Move get_k8s_cloud_credential() function to n2vc/utils in order to share that code between different connectors.\n\nChange-Id: Ife9027d80663fe95f1f3ad883cb9a3376b047d0b\nSigned-off-by: David Garcia \u003cdavid.garcia@canonical.com\u003e\n"
    },
    {
      "commit": "c38a696d168531e3c067451044262ef4d78ef11f",
      "tree": "333db0a26afb040e3daf5c484bd08c2c42ecbb3a",
      "parents": [
        "ba6e532cda6464759381585452b18f9fd1a19dd3"
      ],
      "author": {
        "name": "David Garcia",
        "email": "david.garcia@canonical.com",
        "time": "Wed Sep 16 13:31:33 2020 +0200"
      },
      "committer": {
        "name": "David Garcia",
        "email": "david.garcia@canonical.com",
        "time": "Wed Sep 16 18:59:27 2020 +0200"
      },
      "message": "Remove EntityType from juju watcher and workaround juju bug for retrieving the status\n\n- The juju watcher was doing an unnecessary translation with the entity types. The entity already provides an attribute .entity_type\n- Juju has a bug in version 2.8.2 that returns a wrong status. Therefore, charms were getting stuck in waiting for ever.\nChange-Id: I44709190acc41601e8a67f4c52074fda00c3d495\nSigned-off-by: David Garcia \u003cdavid.garcia@canonical.com\u003e\n"
    },
    {
      "commit": "2f66c4df28308b5b2747bb207e7797932e502436",
      "tree": "4dd7b55986e55b0cf59fab4b36bf27f589b65262",
      "parents": [
        "41b40a10384cd725be87f1800242cc8eba38e991"
      ],
      "author": {
        "name": "David Garcia",
        "email": "david.garcia@canonical.com",
        "time": "Fri Jun 19 11:40:18 2020 +0200"
      },
      "committer": {
        "name": "David Garcia",
        "email": "david.garcia@canonical.com",
        "time": "Fri Jun 26 13:40:16 2020 +0200"
      },
      "message": "Feature 8681: Add VCA HA capabilities\n\n- juju watcher: fix exception handling when websocket is closed\n- libjuju.py:\n  - Get vca endpoints from database (if exists)\n  - Update vca endpoints in database\n  - Get controller per operation (remove controller from class attribute)\n  - Add health check: Every 5 minutes the connection to the controller will be tested.\n- Dockerfile: update it to 18.04\n\nChange-Id: Ifa0a3a705d48fd736a9634b0722bdc914003b497\nSigned-off-by: David Garcia \u003cdavid.garcia@canonical.com\u003e\n"
    },
    {
      "commit": "4fee80e46dff88732b7927e502007203fcd8a15c",
      "tree": "cafcf533d4c649c7a3b30e2f699c52fc0e138f27",
      "parents": [
        "d3de135758e35c4d511b067c6ebeea378f63d79e"
      ],
      "author": {
        "name": "David Garcia",
        "email": "david.garcia@canonical.com",
        "time": "Wed May 13 12:18:38 2020 +0200"
      },
      "committer": {
        "name": "David Garcia",
        "email": "david.garcia@canonical.com",
        "time": "Thu Jun 18 14:21:31 2020 +0200"
      },
      "message": "Initial refactor of N2VC\n\n- Add libjuju.py to encapsulate all code related with the communication using libjuju\n- Replace juju_observer with juju_watcher\n- Add utils with some utilities like EntityType, FinalStatus, and JujuStatusToOSM\n\nChange-Id: I5d46ad65d6ed37b49bf2504209bfdd46d1b5a7e4\nSigned-off-by: David Garcia \u003cdavid.garcia@canonical.com\u003e\n"
    }
  ]
}
