)]}'
{
  "log": [
    {
      "commit": "32a1519183709fbcdd4fe02fe901f34a42f6cf6b",
      "tree": "e335fdb67edb712a076e9420a19bd03832575bd3",
      "parents": [
        "bc0daf83db3d783039db7c8c8496a4eb0ceddfe0"
      ],
      "author": {
        "name": "Adam Israel",
        "email": "adam.israel@canonical.com",
        "time": "Mon Jun 24 11:44:47 2019 -0400"
      },
      "committer": {
        "name": "Adam Israel",
        "email": "adam.israel@canonical.com",
        "time": "Mon Jun 24 11:44:47 2019 -0400"
      },
      "message": "Fix bug 760\n\nThis commit fixes bug 670 by introducing a new PrimitiveDoesNotExist\nexception that will be raised if ExecutePrimitive is called but the\nprimitive does not exist in the charm.\n\nThis also bumps the required version of websocket to match libjuju,\nalong with other minor tweaks to the test framework\n\nChange-Id: I028c3c9c19fbfa87c8feb788446a290d66112043\nSigned-off-by: Adam Israel \u003cadam.israel@canonical.com\u003e\n"
    },
    {
      "commit": "04eee1fda9fe592e9055ac23af71f07603c8ceff",
      "tree": "4843b8e1d084b0d47bcac8c56e97fa38dc3d54aa",
      "parents": [
        "e3a05f81eb77deac1fa0f2901960597d38f45d54"
      ],
      "author": {
        "name": "Adam Israel",
        "email": "adam.israel@canonical.com",
        "time": "Mon Apr 29 14:59:45 2019 -0400"
      },
      "committer": {
        "name": "Adam Israel",
        "email": "adam.israel@canonical.com",
        "time": "Mon Apr 29 16:42:19 2019 -0400"
      },
      "message": "Fix bug 680\n\nThis patch adds two new methods, Subscribe and Unsubscribe, allowing the\ncaller to subscribe to callback messages for an already deployed charm.\n\nChange-Id: I1e34b488914feb488cf80b157fd664ca37037e76\nSigned-off-by: Adam Israel \u003cadam.israel@canonical.com\u003e\n"
    },
    {
      "commit": "ea14f890f054d5eb85416a5b6c8c7713e2506ad8",
      "tree": "08b519edacda211b18ad6492b3cb931fba2f4beb",
      "parents": [
        "f32b6f276457966347ed0d80ec7673ebc1357dc0",
        "fa32907c02582fc105166c33c5106ccf6b9389c6"
      ],
      "author": {
        "name": "Adam Israel",
        "email": "adam.israel@canonical.com",
        "time": "Thu Oct 11 18:25:22 2018 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "root@osm.etsi.org",
        "time": "Thu Oct 11 18:25:22 2018 +0200"
      },
      "message": "Merge changes Iacd2f028,I43a6d573,Ibb6c93bb\n\n* changes:\n  Secure Key Management\n  Improved integration tests\n  [WIP] Multi-vdu, multi-charm support\n"
    },
    {
      "commit": "f32b6f276457966347ed0d80ec7673ebc1357dc0",
      "tree": "8c104c62503c70ecdde839434295aa2d9d7dd379",
      "parents": [
        "beedfecaa39c24cba059e6e562d890b4358021be"
      ],
      "author": {
        "name": "Adam Israel",
        "email": "adam.israel@canonical.com",
        "time": "Tue Oct 09 15:17:50 2018 -0400"
      },
      "committer": {
        "name": "Adam Israel",
        "email": "adam.israel@canonical.com",
        "time": "Tue Oct 09 15:17:50 2018 -0400"
      },
      "message": "Add debian packaging\n\nAdds debian packaging, including the vendored version of libjuju\n\nSigned-off-by: Adam Israel \u003cadam.israel@canonical.com\u003e\n"
    },
    {
      "commit": "fc511ed0e2f3bbbdc0ccaa6b0d6ae7cc57b029f9",
      "tree": "0fff4cfc832ed8a26577e5e77954bca5aa300caf",
      "parents": [
        "13950825f557fdc7f8e0859c1d10b63c5e57cfea"
      ],
      "author": {
        "name": "Adam Israel",
        "email": "adam.israel@canonical.com",
        "time": "Fri Sep 21 14:20:55 2018 +0200"
      },
      "committer": {
        "name": "Adam Israel",
        "email": "adam.israel@canonical.com",
        "time": "Tue Sep 25 13:59:28 2018 -0400"
      },
      "message": "Improved integration tests\n\nThis merge includes a refactored integration test framework, to better\ntake advantage of asyncio, and clarifies the test logic so it\u0027s easier\nto extend in the future. It also supports testing of more complex VNFs,\nsuch as multi-vdu, multi-charm VNFs.\n\nn2vc/vnf.py:\n- Remove duplicate status filtering, as it was a poor solution and lead\nto situations where some callbacks were not sent.\n- Added an internal refcount to track libjuju instantiation (helpful in\ndebugging)\n\ntests/charms/layers/proxy-ci/reactive/proxy_ci.py:\n- Fix name of install function (remove confusion while reading logs)\n\ntests/base.py:\n- Add debug() for more consistent and useful logging\n- Refactor: remove parse_metrics\n- Improved error handling\n- Better LXD network connectivity verification\n- Refactor test framework:\n    - Better use of async coded\n    - Make handling of test phase more robust\n    - Support more complex test cases, such as multi-vdu, multi-charm\n\ntests/integration/*\n- Update to use refactored test framework\n\nOther:\n- `make clean` now removes charm artifacts in tests/charms/builds/\n- `make lint` now ignores charm artifacts\n\nSigned-off-by: Adam Israel \u003cadam.israel@canonical.com\u003e\nChange-Id: I43a6d573a7bafdfe3ccb0bb0f0f7d75dcc9c42b1\n"
    },
    {
      "commit": "5e08a0e8fa4fd9d0156d28f8f4e53e5b176c704a",
      "tree": "9c54be88e745853203f046e6d2a4eb542e6563b1",
      "parents": [
        "427f57893cb4bf8aebc0b6f56d0cb3f178d23cf1"
      ],
      "author": {
        "name": "Adam Israel",
        "email": "adam.israel@canonical.com",
        "time": "Thu Sep 06 19:22:47 2018 -0400"
      },
      "committer": {
        "name": "Adam Israel",
        "email": "adam.israel@canonical.com",
        "time": "Thu Sep 13 13:01:10 2018 -0400"
      },
      "message": "Tox + Integration testing\n\nThis commit implements a VNF Descriptor-driven integration\ntest framework, which will lead to integration tests being able\nto run via jenkins, and more robust testing in general.\n\nN2VC:\n\n- Allow the use of an event loop passed when instantiating N2VC\n- Refactor the execution of the initial-config-primitive so that it can\nbe easily re-run, such as the case of when a proxy charm is deployed\nbefore the VNF\u0027s VM is created.\n- Refactor GetPrimitiveStatus, to return the status (queued, running,\ncomplete, failed) of a primitive.\n- Add GetPrimitiveOutput, to return the output of a completed primitive\n- Fix model disconnection when executing a primitive (it was happening\nin the wrong scope)\n- Fix wait_for_application, which was previously unused and broken\n- Add support for parameter\u0027s \u0027data-type\u0027 field\n- Add support for better SSH key management, allowing for a proxy charm\nto be deployed before the VNF, so that it\u0027s public SSH key can be\ninjected when the VNF\u0027s VM is created.\n\nIntegration Tests:\n\nThe integration tests are intended to exercise the expected\nfunctionality of a VNF/charm: deploy the charm, configure it as required\n(i.e., ssh credentials), and execute the VNF\u0027s\ninitial-config-primitives.\n\n- test_native_charm: deploy a native charm to a juju-managed machine and\nverify primitive execution works\n- test_proxy_charm: deploy a proxy charm, configured to talk to a remote\nmachine, and verify primitive execution works\n- test_metrics_native: deploy a native charm and collect a metric\n- test_metrics_proxy: deploy a proxy charm and collect a metric from the\nvnf\n- test_no_initial-config-primitive: deploy a vnf without an\ninitial-config-primitive\n- test_non-string_parameter: deploy a vnf with a non-string parameter in\ninitial-config-primitive\n- test_no_parameter: deploy a vnf with a primitive with no parameters\n\nGeneral:\n- Add a build target to tox.ini so that a .deb is built via Jenkins\n\nTODO (in a follow-up commit):\n- test multi-vdu, multi-charm\n- test deploying a native charm to a manually-provisioned machine\n- Update inline pydoc\n- Add more integration tests\n- Add global per-test timeout to catch stalled tests\n\nSigned-off-by: Adam Israel \u003cadam.israel@canonical.com\u003e\nChange-Id: Id322b45d65c44714e8051fc5764f8c20b76d846c\n"
    }
  ]
}
