)]}'
{
  "log": [
    {
      "commit": "efdda12a005a63a449ea7afb9baab1743b4d04ab",
      "tree": "60c50b483f5ce6c719457f7726b07026bf3da2a7",
      "parents": [
        "aa8823c85d94a4fa72de058076195296334cdb91"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Dec 19 17:04:46 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Dec 19 17:43:00 2019 +0100"
      },
      "message": "Finalizing Python3 migration\n\nWith this patch, vim-emu is using Python3 as default installation\noption.\n\nChange-Id: I1238d1d4c96f641c90508ef20b44b88edbbb8222\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "aa8823c85d94a4fa72de058076195296334cdb91",
      "tree": "0918bb84093175bc9267d6b79fb95cc7a6a30eee",
      "parents": [
        "85408ed517f100c3e477efd35e54630bf9171af0"
      ],
      "author": {
        "name": "Rafael Schellenberg",
        "email": "rafael.schellenberg@uni-paderborn.de",
        "time": "Fri Dec 06 15:03:56 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Dec 17 11:06:11 2019 +0100"
      },
      "message": "migration to python3 (#1)\n\nChange-Id: I964b75c1316b7711cde905c6e98ea027a8557047\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "85408ed517f100c3e477efd35e54630bf9171af0",
      "tree": "4f73d505b827fdc159cacb5dac8633947e0a6699",
      "parents": [
        "a04808bbda3b4a626a555d105f5f96bbee862f4f"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Dec 04 14:02:02 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Dec 04 14:02:02 2019 +0100"
      },
      "message": "Fix: Correctly handle cap_add in 5GTANGO LLCM\n\nChange-Id: I98666f105117194cad27dd6b3686cbec72574f3c\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "a04808bbda3b4a626a555d105f5f96bbee862f4f",
      "tree": "fe04fb06c6a1921820f6f5f41a0be6eb532f69dc",
      "parents": [
        "a4689bc8610b8ad826024c69b4b9bbe423626fa6"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Sat Nov 16 08:30:42 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Sat Nov 16 08:30:42 2019 +0100"
      },
      "message": "Feature: Support for ipc_mode and devices keywords in 5GTANGO LLCM.\n\nChange-Id: Iff85f5c9b71e298b9000567eef7c61a8295f5fa5\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "a4689bc8610b8ad826024c69b4b9bbe423626fa6",
      "tree": "752f75a9c70ae88bb9d4db75443f521729c81d8c",
      "parents": [
        "a05cee090bb5ac6360ecf7bbac8cdecbf5592f0d"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Fri Nov 15 13:25:53 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Fri Nov 15 13:25:53 2019 +0100"
      },
      "message": "Feature: Allow custom addressing in E-LANs deployed by the 5GTANGO LLCM.\n\nChange-Id: I69adb632106a9ea58b97dbf0ac5bf904d0bc6128\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "a05cee090bb5ac6360ecf7bbac8cdecbf5592f0d",
      "tree": "800dc9b967fba17e225bd6f8e23f05970f7d5c55",
      "parents": [
        "655815663bf8234c837793db7a5e2e3c50164d3f"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Nov 14 13:22:19 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Nov 14 14:00:19 2019 +0100"
      },
      "message": "Fix: Remove monkey patching to progress with migration to Python3\n\nChange-Id: I89a35320df094b476fdfe90c95749bd7cb536934\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "655815663bf8234c837793db7a5e2e3c50164d3f",
      "tree": "48b6651472de05fc1114365d48ec95f60710d636",
      "parents": [
        "37030c10734de40f72d9078e8f89a4bfef1d29d2"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Nov 13 12:49:15 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Nov 14 11:22:12 2019 +0100"
      },
      "message": "Fix: Fixed version of tinyrpc to not break the Ryu installation.\n\nChange-Id: I901da179c43bdce4337575691fab82baae7987f4\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "cc77502a9c6ff5f4e3676bb543861ada03bdeb8e",
      "tree": "335eb6eca298b718d18cfe871ffadc6e16511f60",
      "parents": [
        "5ccd41d26d79835d2927349b41836f331d8d049d"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Sep 25 19:31:55 2019 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Sep 25 19:31:55 2019 +0200"
      },
      "message": "5GTANGO LLCM: Allow to publish multiple ports and UDP ports.\n\nChange-Id: I97ce2afd01f373e0fb4b155d588317bba84975f0\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "226190253127cbc85c8599231df048c4a8a8c4c8",
      "tree": "851654a36723aee8e2b0984d3845dd5ac93a609a",
      "parents": [
        "687b81cc9e9d592b75e100016308bf9a14984163"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Aug 14 19:40:23 2019 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Aug 21 09:19:47 2019 +0200"
      },
      "message": "Fix: Broken links to external dashboard resources.\nFix: Version number\n\nChange-Id: Ibd88b5ae61e16be0907b7ef53d80ab69947b6115\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "5e0efe50e974e1271d423abf575fe1b9b9a97b49",
      "tree": "246f174830c7b8fd845c2a87a1fef6f8399fb208",
      "parents": [
        "447d457169b3d8b673b147bdf0ab44bf1bbbe45e"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Jul 02 13:01:36 2019 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Jul 02 13:01:36 2019 +0200"
      },
      "message": "Fix: Make vim-emu ready for the upcoming Containernet release\n\nChange-Id: Ia501fbf723d8ea508be05c0adeaf6d2b0dbc8c9e\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "aa4d27cf6ecf9dd7037b1c8292268467efca1805",
      "tree": "8d8712e219e5ee52f09b1b76e6ee1881dcbe29bf",
      "parents": [
        "0719f4efe35a1ef06fe2751228e63d38b855967c"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Jun 19 10:21:25 2019 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Jun 19 10:21:25 2019 +0200"
      },
      "message": "Fix: Allow CORS to fetch emulator state\n\nChange-Id: I26e0cc5a570bdc35ec27b9eeb2c4ec528bdf8bf3\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "0719f4efe35a1ef06fe2751228e63d38b855967c",
      "tree": "04c784f423c499336391ee2197e956aff0b525bf",
      "parents": [
        "d87400255e1997f85b9cdebc583811b70cca4ab7"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Jun 18 16:55:26 2019 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Jun 18 16:55:26 2019 +0200"
      },
      "message": "Fix: Improved performance of REST getStatus endpoint.\n\nChange-Id: Ia91a896b0d0fc35901b5987b2981d91122052578\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "d87400255e1997f85b9cdebc583811b70cca4ab7",
      "tree": "6b866ca5927759dca00dc34995335f3db1ac7741",
      "parents": [
        "2bbd459ee30a19ecb77bb0a0aeda73db16ef5244"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Jun 18 16:08:47 2019 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Jun 18 16:13:31 2019 +0200"
      },
      "message": "Fixes of the REST interface dashboard.\n\nChange-Id: I4aad748e68a2f56017d2327831cf0bba098c0f29\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "2bbd459ee30a19ecb77bb0a0aeda73db16ef5244",
      "tree": "0e94b43393b446a8c3229166777af091284b1136",
      "parents": [
        "5a5f40533189c4bc21ffe2daed13dd2fa68a2d0b"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Jun 12 10:25:38 2019 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Jun 12 10:25:38 2019 +0200"
      },
      "message": "Fix: Use \"emu0\" as shrot name for the default\nnetwork interface of a container if no network is\nspecified manually.\n\nChange-Id: I8f206c8def1cd19084860e7d8a3fa4b0b37c2a5d\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "5a5f40533189c4bc21ffe2daed13dd2fa68a2d0b",
      "tree": "976631386350f16564775cae7ca9d6214e77f779",
      "parents": [
        "36d4033918dd7b076fe4db5eba6e3eb8698b27dc"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Jun 11 16:31:56 2019 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Jun 11 16:31:56 2019 +0200"
      },
      "message": "5GTANGO LLCM: Instance-specific env. configs.\n\nChange-Id: Id50bd7b6329e3e9d8b4a4a5d39730861b940371f\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "36d4033918dd7b076fe4db5eba6e3eb8698b27dc",
      "tree": "f0dafbeb9e0399366433c04e340309675e4755f8",
      "parents": [
        "8246f98e0c9e694a06661d3f9d67cfe8de1dfff3"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Jun 11 14:55:44 2019 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Jun 11 14:55:44 2019 +0200"
      },
      "message": "5GTANGO LLCM: New placement algo. integration.\nAdded StaticConfig placement.\n\nChange-Id: Ib3734a8999644c93cc1154b6b62c459f556f27a9\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "8246f98e0c9e694a06661d3f9d67cfe8de1dfff3",
      "tree": "e618d7b426e7c9dba816baa6d4a9985b0091ac14",
      "parents": [
        "8c6b10b7efac9b925df2fac71c2744b438417626"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Jun 06 17:43:34 2019 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Jun 06 17:43:34 2019 +0200"
      },
      "message": "5GTANGO LLCM: Made APIs compatible with tng-cli\n\nChange-Id: I4f9b42e8c0db5323ee62495855618c449056edb0\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "8c6b10b7efac9b925df2fac71c2744b438417626",
      "tree": "81663996b23caee636d639b9508070ddb666a304",
      "parents": [
        "dad988484dc1f95193f49ef9b456bf84254d0e92"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Sat Apr 13 12:49:41 2019 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Sat Apr 13 14:31:14 2019 +0200"
      },
      "message": "5GTANGO LLCM: Added support to deploy multiple instances\nof the same service. Closes #294\n\nChange-Id: Ib4168e3e909a24f48aecd2c4e3bcbb0d097b0f45\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "dad988484dc1f95193f49ef9b456bf84254d0e92",
      "tree": "203a7f38a4d365ffb3ee1007655c37f546cb1ab0",
      "parents": [
        "cda16f98f0b1a5e8a6fae4abfc61fb91b4f83ee2"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Fri Apr 12 15:10:19 2019 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Fri Apr 12 15:10:19 2019 +0200"
      },
      "message": "Disabled monkey patching to unblock LLCM and REST APIs again.\n\nChange-Id: I2bac649900ce45e754b9cfbe6ecec8af019cadb3\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "cda16f98f0b1a5e8a6fae4abfc61fb91b4f83ee2",
      "tree": "081d39ed80fff39f709af1c00f10ced49b73ac4b",
      "parents": [
        "74f7c1c382da2c6d35280b3fef88033758fed9a4"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Mon Mar 25 16:15:26 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Mon Mar 25 16:15:26 2019 +0100"
      },
      "message": "Improved stability.\n\nChange-Id: Ic949c35bcb6c4c1e26e7bead243d41b50044812e\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "44e1c00d1880578d1f5de4c8af5bcd875ce3febd",
      "tree": "7b11b18825d1d092780f230566bc5efab16ef5cb",
      "parents": [
        "89ba0f3035cd734605bc6607871f8c6f1178df32"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Mar 20 13:39:00 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Mar 20 13:39:00 2019 +0100"
      },
      "message": "Fix: Finally fixing the gevent issues for the tng-sdk-benchmark intergration\n\nChange-Id: I0b7b6b7f6efa8218ed4c9133a024f116599235eb\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "88e59cd5e0cc7745cb8d5fa90d0ba3bea6048ef2",
      "tree": "bc8c8ff0288d3a827b4785f6df56e4f0088a5749",
      "parents": [
        "f8f135c271341479200232641823520a541f33b0"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Tue Mar 19 21:24:27 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Tue Mar 19 21:55:19 2019 +0100"
      },
      "message": "Fixed setting kafka\u0027s advertised IP\n\nShortly before pushing the latest API I did some refactoring. During\nthat I unfortunately broke this.\nThe advertised IP has to be without subnet mask. So we remove it here if\none was existing.\n\nChange-Id: I37f9df376d0c899b4911b23302dacb9922122f0f\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "f8f135c271341479200232641823520a541f33b0",
      "tree": "c63a2db6a8b0acd517cdba36400a557c87d0b8f2",
      "parents": [
        "f0120d71d73c4dc80084a3282074490e7ed4f934"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Mar 19 17:05:57 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Mar 19 17:05:57 2019 +0100"
      },
      "message": "Fix: Changed LLCM to use gevent\n\nChange-Id: I232e529cd0b35614c697e9c41d12b9b62955a87a\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "f0120d71d73c4dc80084a3282074490e7ed4f934",
      "tree": "340c970f7b55df3b82490957d52ce1e722ec3df9",
      "parents": [
        "9435e9820d7ee3e4958995ff1c4032add2637350"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Mar 19 14:05:18 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Mar 19 14:05:18 2019 +0100"
      },
      "message": "Fix: Do monkey.patch_all() only once.\n\nChange-Id: I6d32a318e73adc0679303cdada5da79acfb7b744\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "9435e9820d7ee3e4958995ff1c4032add2637350",
      "tree": "a8b6d76db145fad940ea1da44a57534a87b547e9",
      "parents": [
        "4a8088d1decc9041fd12e758888be09839c69a90"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Mar 19 11:10:38 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Mar 19 11:32:52 2019 +0100"
      },
      "message": "Fix: Added gevent monkey patch to fix issue that blocks\nthe servers of the LLCM and REST APIs.\n\nChange-Id: I4d16ce4ae5e3d51892fe202ec7cf454e54096aca\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "68d042113554a310c357ef1b614c7a9e84cd7a72",
      "tree": "57f30d26f6407227182981506e1bb67538a68e06",
      "parents": [
        "060c189f958d992a6eccaa9204ab86fc1089e3a4"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Mon Mar 11 17:57:41 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Mon Mar 18 22:48:56 2019 +0100"
      },
      "message": "Ensure timely termination of all flask servers\n\n1. The chain_api was never terminated. This was fixed by turning the\nserver into an pyWSGI instance.\n\n2. no monkey patching was applied. The monkey patching of gevent is\nrequired in order to be able to handle other events during a\ntime.sleep() call. Since multiple patching is detected, it was added to\nall files which create WSGI servers.\n\nAll in all this change fixes a large leak of threads, open files and\nperformance.\n\nThis change updates Containernet in order to fix race conditions which\notherwise happen due to gevent\u0027s monkey patching.\n\nChange-Id: Ia45ad07db1f85046bfcac85eaca20c930b931141\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "060c189f958d992a6eccaa9204ab86fc1089e3a4",
      "tree": "798f9ebcea72a68fda2570402b4a0d15b1abe54f",
      "parents": [
        "3bb8b25b4584b62a56303404a39b085c4298529a",
        "2f5e85ecdfeac34a45e8ab0b1127a8bfa8e2e0b1"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Mon Mar 18 14:47:19 2019 +0100"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "root@osm.etsi.org",
        "time": "Mon Mar 18 14:47:19 2019 +0100"
      },
      "message": "Merge \"Provide API for allowing full stack emulation\""
    },
    {
      "commit": "3bb8b25b4584b62a56303404a39b085c4298529a",
      "tree": "6b2bdaa3108650f2bcf6a00ce8ae9a43d15d767a",
      "parents": [],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Thu Mar 14 22:46:14 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Mon Mar 18 14:34:02 2019 +0100"
      },
      "message": "Also support the usual CMD field in images\n\nFor backwards-compatibility the SON_EMU_CMD/VIM_EMU_CMD commands still\nsurpress this, but otherwise the usual ENTRYPOINT + CMD logic should be\nworking with this + commit 83b52502743eb29e5e0b8e33e6aa119a5005c676 in\ncontainernet.\n\nSince the caching of the build server prevents a automatic Containernet\nupdate to latest master, an explicit commit hash is given. This will\nallow explicit updates when required while still supporting caching.\n\nComment wording above checkout is from Manuel Peuster.\n\nChange-Id: Ic01f87acb5f9e79d09baae499f3d353c2c0aca9e\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "2f5e85ecdfeac34a45e8ab0b1127a8bfa8e2e0b1",
      "tree": "811a5ef51aaa70672c58feefa6c9cbaad176c668",
      "parents": [
        "4995c5386698f6c1b370771b7b57d062e5f0f70d"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Sun Mar 03 19:17:23 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Fri Mar 15 18:50:33 2019 +0100"
      },
      "message": "Provide API for allowing full stack emulation\n\nThis commit adds an API in order to emulate the full OSM stack. Different\nlevels of API are added in order to allow flexible scenarios.\n\nThe lowest level API only wraps the required components in containers.\nThe next higher level also abstracts the composition of these low-level\ninto a working OSM instance.\nThe third level also abstracts the emulation and configuration of the VIM\nlayer.\n\nExamples are added for each abstraction level.\n\nImplements Feature 7291.\n\nChange-Id: I156f6625d4ff4010d688c41419c4ece03a339937\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "4995c5386698f6c1b370771b7b57d062e5f0f70d",
      "tree": "abf370fb667f9ccedb809c3455dce482cacd75a2",
      "parents": [
        "c2741f9919ccb9559d63ff00effa0664605997f6"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Feb 27 22:03:29 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Feb 27 22:03:29 2019 +0100"
      },
      "message": "5GTANGO LLCM: Allow port publishing for containers from CNFDs.\nIssue: https://github.com/sonata-nfv/son-emu/issues/295\nCloses #295\n\nChange-Id: Iff2daf07b8a2070676c6f7240869dee6be103bbf\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "c2741f9919ccb9559d63ff00effa0664605997f6",
      "tree": "07ce86440e5d685a1407abc4481280f8ee23350c",
      "parents": [
        "4c50ae39537f45285e3463e93fd0221135c1b109",
        "a599cbd2811d03c2d71211b4dd12dec84dc1049b"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Feb 20 15:11:40 2019 +0100"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "root@osm.etsi.org",
        "time": "Wed Feb 20 15:11:40 2019 +0100"
      },
      "message": "Merge \"Support (simple) classifiers\""
    },
    {
      "commit": "a599cbd2811d03c2d71211b4dd12dec84dc1049b",
      "tree": "3472f54cc71bcbe70254dd7abf45391391b75036",
      "parents": [
        "c9b2e409d09782a71f7a3ac0877892e30ab26d2e"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 20 14:47:01 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 20 14:50:02 2019 +0100"
      },
      "message": "Support (simple) classifiers\n\nIn order to support classifiers, each flow entry needs to specify the\nclassifier\u0027s parameters within its match rule. This means that the\ncreated rules do not only depend on the ingress and egress port, but\nalso on the classifier (this required to move the creation code into the\nflow classifier loop).\n\nChange-Id: I96817255580462e0ffb570b025b6f912f2d00b13\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "56eaae30b718484e978bfdf1e4d93189c82c1ec1",
      "tree": "8f515f54fa4dd658bfedc41bce7171ab3fa2e69a",
      "parents": [
        "c9b2e409d09782a71f7a3ac0877892e30ab26d2e"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 20 13:09:20 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 20 14:49:46 2019 +0100"
      },
      "message": "Log ryu commands at debug level\n\nChange-Id: I0922f941367a123aae156ed6014a544b490b776f\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "c9b2e409d09782a71f7a3ac0877892e30ab26d2e",
      "tree": "0d35ed71a51c318a179da05d092bbb96e26fd0d3",
      "parents": [
        "83d22499d7cfa78a67e375718b4b1bd60e06fa2e"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 20 11:14:22 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 20 11:14:22 2019 +0100"
      },
      "message": "Fixed logging of ryu errors\n\nChange-Id: I61dd313a947a9fa857f0dca849bfd8294aeedae0\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "83d22499d7cfa78a67e375718b4b1bd60e06fa2e",
      "tree": "09c15ddfe61f1de7086fb16317e2543636094780",
      "parents": [
        "c6d9e9e619bb543da62009b30b3de8f7e5676817"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 20 11:04:08 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 20 11:05:28 2019 +0100"
      },
      "message": "Update MAC address to match the next hop\n\nIf the mac address is not updated the receiving host will reject the\npacket since it sees a MAC address which does not belong to him.\n\nChange-Id: I95edc11572b2ada8841b504ed8eee743613cce09\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "c6d9e9e619bb543da62009b30b3de8f7e5676817",
      "tree": "1631329d38aaeedf0c68eab8582630296415024c",
      "parents": [
        "061c0cb714ecdfe0cba915fa80b301281ab3d1b6"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 20 10:08:47 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 20 10:11:45 2019 +0100"
      },
      "message": "Do not tag outputs with VLANs for SFC\n\nthis otherwise leads to packets being wrapped within 802.1Q packets,\nwhich do not get popped before forwarding to a service. Thus, services\ndo not respond to ARP, PING and alike.\n\nChange-Id: I7f29b5094f9bd33661e8f2862c8656c0f9a08a6b\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "061c0cb714ecdfe0cba915fa80b301281ab3d1b6",
      "tree": "5a88f117d40c4899c6ae3507e2eb36d3bb7e3e6e",
      "parents": [
        "d82ec81f61b207952c2c4b837433b65fb335e96d"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Mon Feb 18 21:37:51 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Mon Feb 18 21:37:51 2019 +0100"
      },
      "message": "5GTANGO LLCM: Preliminary fix of the E-LINE configruation.\n\nChange-Id: I9092a09837fc941eb8e47da7b6a12140d2a952a3\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "d82ec81f61b207952c2c4b837433b65fb335e96d",
      "tree": "cb28d04cf2f836b95f348138a4e344075609604f",
      "parents": [
        "eefcdb607b6ba0303213fdb8dc681faf069ea661"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Thu Feb 14 13:55:56 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Thu Feb 14 15:10:09 2019 +0100"
      },
      "message": "Create flow table entries for classifiers\n\nOnly the source port is considered for now, leading to all outgoing\ntraffic being routed along the path.\n\nChange-Id: I1752494f5face135fe159bd69f9080a8d614f7e7\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "eefcdb607b6ba0303213fdb8dc681faf069ea661",
      "tree": "0952b16770d1dba66965dba41a2d6e4956b50b8c",
      "parents": [
        "2efa0c599b9b809ed925874d949926a4508c4036"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Thu Feb 14 11:13:21 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Thu Feb 14 11:21:53 2019 +0100"
      },
      "message": "Fixed port chain direction and linking\n\nGiven a port chain of two port pair groups ppg1 and ppg2, which each\nconsist of a single port pair (ppg1\u003d[pp1], ppg2\u003d[pp2]), where\npp1\u003d(ingress: p1, egress: p2), p2\u003d(ingress: p3, egress: p4) the\nfollowing forwarding chain was generated:\n\n    /----\\ /----\\\n    | s1 | | s2 |\n    \\i--e/ \\i--e/\n     v  ^   v  ^\n     |  |   |  |\n     \\--/   \\--/\n\nThis, for once, mixed ingress and egress, but also did not actually link\nthe servers.\n\nThis patch corrects the linking to:\n\n    /----\\ /----\\\n    | s1 | | s2 |\n    \\i--e/ \\i--e/\n     ^  v   ^  v\n     |  |   |  |\n    -/  \\---/  \\-\u003e\n\nChange-Id: Iabc48a6950f864562a93f8d17f41890598d65ac6\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "2efa0c599b9b809ed925874d949926a4508c4036",
      "tree": "5853c83d4098d6814e44ba2766331b43b405b46c",
      "parents": [
        "5b8ac4faded6386d8e32751b689876c12800924b"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 13 08:07:52 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 13 08:32:47 2019 +0100"
      },
      "message": "Do not spam the logs with server names at INFO level\n\nThis logged two lines at INFO. I guess DEBUG and a single line suffices\nin this case.\n\nChange-Id: I88a04299571779066c6ca7a0bd8389ae3f40fe31\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "5b8ac4faded6386d8e32751b689876c12800924b",
      "tree": "a8cd220e7de4a7230de5e17a77751c6982eae049",
      "parents": [
        "ce776393dccaf31ad47f21b06dcf0a2ba56b4874"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Feb 12 19:58:24 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Feb 12 19:58:24 2019 +0100"
      },
      "message": "Unified command execution in Docker containers.\n\nAlso adds a hotfix for a broken test execution based on\nan issue with a used library: https://github.com/pytest-dev/pytest/issues/4770\n\nChange-Id: I54aade1eda31cb2584641b95226fbf39d9d298f4\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "ce776393dccaf31ad47f21b06dcf0a2ba56b4874",
      "tree": "42e871d2fb52c73c1e2ebe4bfe8d18accd7be9f2",
      "parents": [
        "64d1436431fbf61e21bd4cc40ad015e32dbac560"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Thu Jan 31 08:53:39 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 06 10:17:03 2019 +0100"
      },
      "message": "Throw error if SFC ports are not found on servers\n\nThis breaks the port chain creation and most likely reveals some kind of\nimplementation error elsewhere.\n\nChange-Id: I907eb5e828f80ae5ab12de851a98f3c19c9c2d5b\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "64d1436431fbf61e21bd4cc40ad015e32dbac560",
      "tree": "29161bc76f6fe223b5ea750b1a7b76e6cd2af68d",
      "parents": [
        "1e645a4217078c96f5ee09a437be63f7356157a7"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Thu Jan 31 08:56:46 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 06 10:17:03 2019 +0100"
      },
      "message": "Support identical ingress and egress ports in port pairs\n\nChange-Id: Id58c428594b115a5e343a7b2c701f2ddddb89f81\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "1e645a4217078c96f5ee09a437be63f7356157a7",
      "tree": "29d0d1e76fad8643bf0378fd870ecbeda214c6ed",
      "parents": [
        "a879564e18a695c246b014a07fbe168c14d8485c"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Thu Jan 31 08:55:33 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Feb 06 10:17:03 2019 +0100"
      },
      "message": "Also compare ids against a server\u0027s ports\n\nThe server\u0027s port list may contain ids, thus those also need to be\ncompared.\n\nChange-Id: I2e53c111a22009b6c791abc9e52f28afa96d5b0a\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "a879564e18a695c246b014a07fbe168c14d8485c",
      "tree": "ea05624c9de8bf1ee6c7583564076f2fa0ab0669",
      "parents": [
        "c3d1e25f455b70ac944d1d668aaad1b8e74eb61b"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Jan 30 21:45:10 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Tue Feb 05 16:58:01 2019 +0100"
      },
      "message": "Return empty `service_function_parameters` field for port pairs\n\nOSM tries to delete this and fails if the field does not exist\n\nChange-Id: I5a65d796f0025c06c7f9367c6d4f806bab893740\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "c3d1e25f455b70ac944d1d668aaad1b8e74eb61b",
      "tree": "e8b943b7e744d6fbc79cee52543b9e792dc589ae",
      "parents": [
        "0e10819e9f46c6d00c2e54e544c8df4a2f1ce9a2"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Jan 30 20:17:54 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Tue Feb 05 16:07:51 2019 +0100"
      },
      "message": "Allow filtering ports by device_id\n\nThis otherwise leads to errors in RO, which checks whether the ports of a\nspecific instance are created.\n\nChange-Id: I563dc84db299e6148b7970e8c9716460653c6b48\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "0e10819e9f46c6d00c2e54e544c8df4a2f1ce9a2",
      "tree": "40fdcbd97f4c25bda1e5dacb98bd9328afe6bfce",
      "parents": [
        "27b1308d56aca2718eb84357d919f5c02196af9e"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Jan 30 17:48:27 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Tue Feb 05 15:17:11 2019 +0100"
      },
      "message": "Allow multiple ports to exist with the same name\n\nPorts in OpenStack may very well have identical names. In fact this is\nalmost guaranteed when deploying network services with multiple identical\nVNFs.\n\nChange-Id: Iba196e64be329c376eca9f34c7b2cbcdfd569a3e\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "27b1308d56aca2718eb84357d919f5c02196af9e",
      "tree": "4821b3d0386a6c887d2f7abc4a7d0c9e9a86a5f3",
      "parents": [
        "06dc125e4ec3149194604cb9b5483160b52cd425",
        "ae8ad41d0177cc5736892b76577160d46e24fa9c"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Feb 05 14:28:50 2019 +0100"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "root@osm.etsi.org",
        "time": "Tue Feb 05 14:28:50 2019 +0100"
      },
      "message": "Merge \"Allow filtering of the port chain list by id\""
    },
    {
      "commit": "06dc125e4ec3149194604cb9b5483160b52cd425",
      "tree": "2200e5249cc8cb46b8a513894279a6776143d297",
      "parents": [
        "b83f32159ca058e4cf8d8f9838e3daedd91ab78a"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Thu Jan 31 10:00:02 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Tue Feb 05 13:01:37 2019 +0100"
      },
      "message": "Simplified and stabilized ryu launch\n\nThe rest app only considered a single fixed filename rather than simply\nrelying on the existing loading mechanism.\nFor better clarity some variable names were renamed and logging now\noutputs the full ryu-manager command.\n\nChange-Id: I35ac86159880acc71d460df7db95e1b244c82eb3\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "ae8ad41d0177cc5736892b76577160d46e24fa9c",
      "tree": "d8ff9f0b982832a18bcaf2bc64a8d01ba8e34577",
      "parents": [
        "b83f32159ca058e4cf8d8f9838e3daedd91ab78a"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Wed Jan 30 21:45:37 2019 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Sun Feb 03 21:05:44 2019 +0100"
      },
      "message": "Allow filtering of the port chain list by id\n\nChange-Id: I2d81c3836fe0b0d1ad9429922b59d42b4eab68f3\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "b83f32159ca058e4cf8d8f9838e3daedd91ab78a",
      "tree": "0e934beee9579b017091cefff9a7a6aa5d62fc13",
      "parents": [
        "7da82501c1a53a2523c3eaf4a11fc11764e8b231"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Sun Feb 03 20:37:07 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Sun Feb 03 20:37:07 2019 +0100"
      },
      "message": "Fix: Flake8 seems to have changed. This fixes a code style issue in an old file preventing the CI to succeed.\n\nChange-Id: I0e48166df7a24b53fa3215241d9b515fdd6343b5\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "7da82501c1a53a2523c3eaf4a11fc11764e8b231",
      "tree": "724be9ff47d96f80d99ab1232472e8b948809ba6",
      "parents": [
        "c6aec17df25eb05ae339c0f3fc0210bf04d23bf8"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Jan 29 18:31:28 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Jan 29 20:00:24 2019 +0100"
      },
      "message": "Fix: 5GTANGO LLCM now correctly applies resource limits.\n\nChange-Id: I5c40898b58c5fc00c60a9ad16483feb4748914a7\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "c6aec17df25eb05ae339c0f3fc0210bf04d23bf8",
      "tree": "c245826e4ede21dbe2b7a3a391e8186be60ce30a",
      "parents": [
        "61ba12980c1a7959dfb83943513c8af9d70d0b26"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Jan 10 15:21:26 2019 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Jan 10 15:21:26 2019 +0100"
      },
      "message": "Fix: 5GTANGO LLCM now correctly terminates servies.\n\nAlso adding an example topology for 5GTANGO experiments.\n\nChange-Id: Ibb5565814e448569d3d7e7a8a28a3ed5bd45af7f\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "61ba12980c1a7959dfb83943513c8af9d70d0b26",
      "tree": "2a5398c2bab4d5c7b3ad9437d46ad50c0ceed78f",
      "parents": [
        "17008d0f9109faae34dd2e85cc7d481ffea57406"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Dec 19 13:58:12 2018 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Dec 19 13:58:12 2018 +0100"
      },
      "message": "5GTANGO LLCM: Allow service instanceiation by service_name.\n\nChange-Id: I924a1aa3a0e8f852e19a44471630348de176ea5a\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "17008d0f9109faae34dd2e85cc7d481ffea57406",
      "tree": "f62609fc11b80708c32c07cf20975f8c487e2c5d",
      "parents": [
        "9467ee52a690736ff222280b11420e4c2104a1c6"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Dec 19 09:58:17 2018 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Dec 19 09:58:17 2018 +0100"
      },
      "message": "5GTANGO LLCM: Refactoring, cleanup\n\nChange-Id: I725c34723ca431c1544f64edd6e01cb70cacad85\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "9467ee52a690736ff222280b11420e4c2104a1c6",
      "tree": "805ee4f85411892a4fc720ccf2e18474bb320982",
      "parents": [
        "0c7afe6cdc4f116e5b392def84fcbc03f0fdf61e"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Dec 18 16:22:46 2018 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Dec 18 16:22:46 2018 +0100"
      },
      "message": "Extended networking parts of 5GTANGO LLCM to fully support\nE-Tree and E-LAN networks in multi-V/CDU deployments.\n\nChange-Id: I108858358267c3e72db2d3f0a787b6d92965aa93\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "0c7afe6cdc4f116e5b392def84fcbc03f0fdf61e",
      "tree": "7a323a77117431e5626ba4e2d0a7dc610d3220a8",
      "parents": [
        "82afef6e1118155b4f0d6432bd6b4e9339e2d82b"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Fri Dec 14 19:20:19 2018 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Fri Dec 14 19:20:19 2018 +0100"
      },
      "message": "Feature #290: Multi-VDU support for 5GTANGO LLCM. VUD deployment works.\nUpdate of networking parts are still missing.\n\nChange-Id: Icd987f6aa0d195cb5e7483c777662675e0600c51\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "82afef6e1118155b4f0d6432bd6b4e9339e2d82b",
      "tree": "7ca6d06a74065fbe6a80dc6fe950924e1096baaa",
      "parents": [
        "f6e811c967608bf03d3f17373d95c41566228307"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Dec 12 13:37:39 2018 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Dec 12 13:37:39 2018 +0100"
      },
      "message": "5GTANGO LLCM: Added VNFD-based start/stop command injection.\n\nChange-Id: Ie9189fff90e7b972554d20d48b019ea0b33b4116\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "f6e811c967608bf03d3f17373d95c41566228307",
      "tree": "fec282299fe890e66a27861719b28467b6d4d401",
      "parents": [
        "b87991a24a3071c35560333617135d433ac16b8f"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Dec 11 16:07:59 2018 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Dec 11 16:07:59 2018 +0100"
      },
      "message": "5GTANGO LLCM: Refactoring and basic support for CNFs. #291\n\nChange-Id: Iebd17b2bbf310faa41354ad053140bf1d2d42633\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "b87991a24a3071c35560333617135d433ac16b8f",
      "tree": "33f413a5fa8af01d4749cebc0e70db8c67c38d84",
      "parents": [
        "7b666c128d193fdaaa5961c6b88a1a1d27b5925f"
      ],
      "author": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Mon Dec 03 11:34:01 2018 +0100"
      },
      "committer": {
        "name": "schillinge",
        "email": "ablu@mail.uni-paderborn.de",
        "time": "Mon Dec 03 11:38:28 2018 +0100"
      },
      "message": "Return actually reachable IP as part of the Floating IP API\n\nThe Floating-IP list API is only ever queried for getting the IP assigned\nto a specific port (if vim-emu is added with the manual floating-ip\nassignment turned off). Thus, the previous solution lead to fixed IPs being\nreturned (which are not reachable).\n\nThis solution tracks the assigned container for each port in order to be\nable to return the public IP assigned by docker.\n\nThis is not perfect in the sense that multiple ports do not receive\ndifferent floating ips, but at least the containers are actually reachable\nnow.\n\nChange-Id: I233e5de35b3b7e7350faaef017711f7c1e919fff\nSigned-off-by: schillinge \u003cablu@mail.uni-paderborn.de\u003e\n"
    },
    {
      "commit": "04e5f9823454ac2cd04eff7f09a1cb433521a408",
      "tree": "83f1b9406779f4e862e104e79be3eb488cfd4e03",
      "parents": [
        "37911563c8039bf129063a2674e88c830576bca5"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Oct 31 19:50:16 2018 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Oct 31 21:28:59 2018 +0100"
      },
      "message": "Fix: Fixes broken installation because of third party library update.\n\nChange-Id: If94adb111ae5bf89f977ad857807f89ee61f71d8\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "37911563c8039bf129063a2674e88c830576bca5",
      "tree": "6a1e8f0092b7792b5be6fd74d2282ef1a4542482",
      "parents": [
        "519e3cb0c7312b4c6a0b55b5eaf15d78138b2a47"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Oct 18 15:03:55 2018 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Oct 18 15:24:29 2018 +0200"
      },
      "message": "Improved IP/E-Line management of 5GTANGO LLCM.\n\nChange-Id: I8e0c9d00e7470ef73b83d7e7d5bfde898116f632\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "519e3cb0c7312b4c6a0b55b5eaf15d78138b2a47",
      "tree": "594136efa8d2b10d3edab9fd855e20ad9560f74e",
      "parents": [
        "5ac6d0a5201e8d0ef26b8894f2ae59ffc8bee3ba"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Oct 03 13:39:28 2018 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Oct 03 13:39:28 2018 +0200"
      },
      "message": "Minor improvements in 5GTANGO LLCM module.\n\nChange-Id: Ia1236038f1d25118d7b97574a50e306c9d19fed8\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "102d7268b0f64ecdf9c88c0a8b93c54dea1dd908",
      "tree": "1a4dc330b758cf60f8f32d51f306ca48a2f70f8f",
      "parents": [
        "37e8d1a18031a54405ff778a153c364ceca8b4ba"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Mon Oct 01 16:25:44 2018 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Mon Oct 01 16:40:30 2018 +0200"
      },
      "message": "Fixes bug 553: Missing license headers\n\nChange-Id: I8fd3d74a242fa52d93b82840b5deea393f8f17a9\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "37e8d1a18031a54405ff778a153c364ceca8b4ba",
      "tree": "710291102b60018db80172894796811f4e73b5f5",
      "parents": [
        "1a8ce18a4b09ecacf30efe6d3d67a185183e5459",
        "20e54456216efbcca714ae7464f4cf196999b662"
      ],
      "author": {
        "name": "marchettim",
        "email": "mmarchetti@sandvine.com",
        "time": "Fri Aug 10 15:02:02 2018 +0200"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "root@osm.etsi.org",
        "time": "Fri Aug 10 15:02:02 2018 +0200"
      },
      "message": "Merge \"Added 5GTANGO lightweight lifecycle manager (LLCM).\""
    },
    {
      "commit": "20e54456216efbcca714ae7464f4cf196999b662",
      "tree": "6fa3c691d1e8a0f01321ad3ddf667f1a5b912b1b",
      "parents": [
        "1662236de1bcda8b2eaf8194f00bbce19fb96be4"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Mon Aug 06 16:09:23 2018 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Aug 07 15:26:54 2018 +0200"
      },
      "message": "Added 5GTANGO lightweight lifecycle manager (LLCM).\n\nThis (optional) module allows to directly deploy\n5GTANGO service packages on the emulator. This\nallows for very quick prototyping of small 5GTANGO\nservices. It is a copy of the old SONATA DummyGatekeeper\ncomponent.\n\nChange-Id: I61d8e5b5a4e0f682a52316de7330d95cf794a4a1\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "1a8ce18a4b09ecacf30efe6d3d67a185183e5459",
      "tree": "e465960501343a8ccb935de6ee934d2e20fa7e64",
      "parents": [
        "1662236de1bcda8b2eaf8194f00bbce19fb96be4"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Mon Aug 06 14:28:24 2018 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Mon Aug 06 14:40:56 2018 +0200"
      },
      "message": "Fix: Made Glance-fake API more robust in\nenvironments with many registered Docker images.\n\nChange-Id: I27880b3530da088ab83a5bb5eb8d2946639d7ee0\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "1662236de1bcda8b2eaf8194f00bbce19fb96be4",
      "tree": "6d9eb721f9f131d6a2ca38847a29b09834265dcc",
      "parents": [
        "4fbbe5964bf0954b9dd7d79669d3cbc45517e4c0"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Aug 02 16:04:04 2018 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Aug 02 16:04:04 2018 +0200"
      },
      "message": "Fix: Made OS Glance fake API compatible to latest pyhton-glanceclient.\n\nThis fixes a major bug that broke the integration between OSM and vim-emu.\n\nChange-Id: I5a92417ccbf919d5e160ac5b2c66a88f3c7d6fe5\nSigned-off-by: peusterm \u003cmanuel.peuster@upb.de\u003e\n"
    },
    {
      "commit": "4fbbe5964bf0954b9dd7d79669d3cbc45517e4c0",
      "tree": "4f6fc8b435049ebed4e55320ef101b3731c4f6d6",
      "parents": [
        "ff8dd3197e951f100a76e93f67db98153ede81df"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed May 16 16:37:02 2018 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed May 16 16:47:38 2018 +0200"
      },
      "message": "Moved examples folder to project root.\n\nChange-Id: I1ba8b7e753f0e1454555ecff18914bb977d224dd\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "9679e9a33c8667d3da5fb0aa7ddb0700670b4baf",
      "tree": "6a3ddad58931142e005d3be10cbf5f8f5531f94c",
      "parents": [
        "72f09885db3935e77901c3dee132cb176b927c7b"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed May 16 13:10:30 2018 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed May 16 13:10:30 2018 +0200"
      },
      "message": "Fix: Made port deleteion more robust. Do not rely on IPs of ports only on names.\n\nBug was discovered during R4 int testing and does only appear in some border cases.\n\nChange-Id: I6e9d4ca0e131486bee3592ceb71101f5a593a357\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "72f09885db3935e77901c3dee132cb176b927c7b",
      "tree": "56e0666c4e3e5e2dbb92d4c9ee29d2625f5c21bc",
      "parents": [
        "3e16acbebd2c6669c1bbe5a7e3bb313aa1494e20"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue May 15 17:10:27 2018 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue May 15 17:45:37 2018 +0200"
      },
      "message": "Refactoring: Made complete codebase PEP8 compatible.\n\nOnly PEP8 rule E501 (line too long) is not yet reflected\nby this change.\n\nThe patch also adds automated code style checks to the\nCI test stage using flake8.\nIt will let the tests fail if there is a code style\nviolation.\n\nChange-Id: I90956dd424a46691546ef720351757d3c43451a7\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "3e16acbebd2c6669c1bbe5a7e3bb313aa1494e20",
      "tree": "f3a8767c9630c1ef20732bc62f8649c538733725",
      "parents": [
        "7c16ebcfd5af529961175fb53b5788c276e5ae86"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Mon May 14 18:52:00 2018 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Mon May 14 18:52:00 2018 +0200"
      },
      "message": "Fix: Crashbug that was caused by an import of an\noutdated module that was removed from Gevent 1.3 that\nwas released two days ago.\n\nChange-Id: I44dff2b468456ed2c24fa8e326ebc535bb04344b\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "7c16ebcfd5af529961175fb53b5788c276e5ae86",
      "tree": "cbc12d21f6eaa6e1f33550231f1cd2c8b29d0347",
      "parents": [
        "543430b2beb49403a9b9557084a15529071deb1e"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Apr 25 15:36:15 2018 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Apr 25 15:36:15 2018 +0200"
      },
      "message": "Fix: hackfest_1 deployment using OSM LB returned\nand network not found error. This fix ensures that\nsome default networks are always available for OSM.\n\nChange-Id: I0ae791d64c527ea451b406452619d04e6f3b98af\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "543430b2beb49403a9b9557084a15529071deb1e",
      "tree": "134ee6aca417e99d457dca648ffa42a7433a42e0",
      "parents": [
        "3fa5bbb6f5b436c1cdf1fde7dd64e13c63e65fb6"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Apr 24 16:52:51 2018 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Apr 24 16:52:51 2018 +0200"
      },
      "message": "Fix: Instantiate the same NS without emulator restart\n\nFixes a bug that causes the emulator to not properly clean\nits internal data structures when a NS is deleted. This could\ncause errors when a NS should be instantiated again, without\nrestarting the emulator.\n\nChange-Id: I8a0be1f28b889f2c01e7ef859acd6bdcc35b8b9d\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "3fa5bbb6f5b436c1cdf1fde7dd64e13c63e65fb6",
      "tree": "586323cfd5a90e3781305f623be4a4f39896e65a",
      "parents": [
        "d8fd9372be1e135f2e11efe2d69c0c16bbcb7be4"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Apr 24 14:15:53 2018 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Apr 24 14:15:53 2018 +0200"
      },
      "message": "Added emulator-compatible services and VNFs for R4 integration tests.\n\nThe emulator needs slightly modified test NSDs and VNFDs\nto work with. This commit adds such examples based on the\nofficial hackfest_1 and hackfest_2 services.\n\nThese example descriptors/packages are also used for the R4\nintegration tests with vim-emu.\n\nChange-Id: Ief26dbdbb15dc973e7563923394d7e7e90579fab\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "d8fd9372be1e135f2e11efe2d69c0c16bbcb7be4",
      "tree": "c9814cf84ebbf82de5d42901c3621670df01edd5",
      "parents": [
        "ec3a23ed1a1dc21d511c49adbe1fe3d3ab8ff8c3"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Jan 17 15:15:22 2018 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Jan 24 16:07:26 2018 +0100"
      },
      "message": "Pingpong example for OSM-to-vim-emu deployments.\n\nThis commit cleans up the outdated emulator examples\nfrom the SONATA project and adds example VNFs (ping and pong)\nas well as a corresponding NSD as an up-to-date\nexample that is tested with OSM rel. THREE.\n\nThe added example service and VNFs is used by the\nend-to-end example documented in the OSM wiki.\nGoal is to give users an pre-defined example on how to\non-board and instantiate a network service on the\nemulator using OSM.\n\nAlso improved README.md.\n\nChange-Id: I45a00f1b6acf1664a96b22e21be4c23612f581cf\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "ec3a23ed1a1dc21d511c49adbe1fe3d3ab8ff8c3",
      "tree": "4bf53f68f0492fbf70e3d5af156f87c028ce9ae2",
      "parents": [
        "01e585d02ef32809019618e9dd1bae45c6a32c2d"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Jan 10 11:06:05 2018 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Jan 10 12:38:38 2018 +0100"
      },
      "message": "Fix: HTTP 204 response must not contain any payload.\n\nChange-Id: Ib2fed74478233851e50f438c241b97bd949325d0\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "01e585d02ef32809019618e9dd1bae45c6a32c2d",
      "tree": "53630f6f0f11662baaa23af9c0b7a708856b9d73",
      "parents": [
        "9219060385043e533bf719725f9e6671e98052ce",
        "ea1c56125cb8a37b7b1614ab0aa46f9dc8f576dc"
      ],
      "author": {
        "name": "marchettim",
        "email": "mmarchetti@sandvine.com",
        "time": "Thu Dec 21 14:33:25 2017 +0100"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "root@osm.etsi.org",
        "time": "Thu Dec 21 14:33:25 2017 +0100"
      },
      "message": "Merge \"Added example topology for daemonized execution.\""
    },
    {
      "commit": "ea1c56125cb8a37b7b1614ab0aa46f9dc8f576dc",
      "tree": "e3fc7027f979fed9367330c0a25aba616b661d8c",
      "parents": [
        "2aecf1dc375ebd54a611ecef32790a0083053fbe"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Dec 20 15:48:35 2017 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Dec 20 15:48:35 2017 +0100"
      },
      "message": "Added example topology for daemonized execution.\n\nAllows to run vim-emu in a daemonized Docker container\nand allows to shut it down gracefully using docker stop.\n\nChange-Id: I49e92a670ed8cba1de64a2e896e6bb87839c16d5\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "9219060385043e533bf719725f9e6671e98052ce",
      "tree": "c2afd7b715d19fbaa5e615df879b2e76cdaf3b0f",
      "parents": [],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Dec 19 15:18:11 2017 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Dec 19 15:18:11 2017 +0100"
      },
      "message": "Fix: Better name-handling of Docker-based VNFs\n\nThere was the risk to run into naming conflicts when a\nlarger number of VNFs was started in the emulation platform.\nThis patch resolves these problems by using short, hash-based\nnames for the emulated VNFs.\n\nChange-Id: I958dd469e5494223fe7f1f274bc10e0714b3df90\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "2aecf1dc375ebd54a611ecef32790a0083053fbe",
      "tree": "06d78fdfcca776876da0107f23eaa6252f7d25f0",
      "parents": [
        "4e5c81ecd37e7383c52dad55079f91b90dec22fe"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Nov 29 12:02:42 2017 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Nov 29 12:02:42 2017 +0100"
      },
      "message": "Added Dockerfile-based entry points to REST API.\n\nAllows the user of the emulator to specify entry point\nscripts for their VNF containers inside the Dockerfiles.\n\nThe emulator automatically runs these scripts when a new\nVNF is started using the emulators REST API.\n\nChange-Id: I2cb42f1cc33f7ae4ba6fc4e7a05d7dff0f7046c2\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "4e5c81ecd37e7383c52dad55079f91b90dec22fe",
      "tree": "d5740e5ea235ace35ae09a7ff38a3a6b6e14c81f",
      "parents": [
        "396e91e0dc05304d524a41d5a6f48d75c2867974"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Nov 15 08:23:50 2017 +0100"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Nov 16 09:24:07 2017 +0100"
      },
      "message": "OpenStack API: Replaced Flask with WSGI\n\nFlask server introduced a couple of problems, e.g., pending\nsockets when an experiment was shut down.\nThis patch solves this and improves stability and performance\nof the emulated OpenStack APIs.\n\nIncreased PIP timeout in Dockerfile to make build more\nrobust in CI environment.\n\nChange-Id: I54e040c56a10075555d13fe6fb144fc117340026\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "dd559512e47df550fc8383d01bedec99cc54cff2",
      "tree": "3965ea5c3d13fc0a26a4cfa41d783efd6d8bb3bd",
      "parents": [
        "d273c509d2e2bc86b0f056bf688615f6ca864871"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Sep 21 16:29:34 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Sep 21 16:29:34 2017 +0200"
      },
      "message": "Fix/cleanup: Added missing license headers and removed unused files.\n\nChange-Id: Ibaf91b89e3b1dc13a50130bb2bd0a22afc6ec19e\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "a58c6df62162cc0bacbe61e525c88774e664388e",
      "tree": "57fdaca86d5c4495ec3ef9a76f50c8ec3ff60406",
      "parents": [
        "2921ffdcb0fd66dd48170fc5c22d3d7f3c007ada"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Sep 14 11:06:01 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Sep 14 11:06:01 2017 +0200"
      },
      "message": "Changed package names, links, etc. for OSM migration\n\nSigned-off-by: peusterm \u003cmanuel.peuster@uni-paderborn.de\u003e\n"
    },
    {
      "commit": "760d713abda8c3a4c276188a1ed9fa158ce68f4c",
      "tree": "72e76eed642ec156b707537b983369b8432da282",
      "parents": [
        "d7cbd218427bbfe573d062710006d56751e4406b"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Sep 07 10:56:41 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Sep 07 10:56:41 2017 +0200"
      },
      "message": "Added a default topology that is automatically called in dockerized deployments if no other topo is specified.\n\nSigned-off-by: Manuel Peuster \u003cmanuel@peuster.de\u003e\n"
    },
    {
      "commit": "d7cbd218427bbfe573d062710006d56751e4406b",
      "tree": "80f1484f9b3cf050c38deef43f9bf8e12d9139a9",
      "parents": [
        "3509418dfc0daa78b3a5afe3f47fdc07acc18442"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Sep 07 08:55:14 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Sep 07 08:55:14 2017 +0200"
      },
      "message": "Fixed missing license headers\n\nSigned-off-by: Manuel Peuster \u003cmanuel@peuster.de\u003e\n"
    },
    {
      "commit": "f37fcff88ff15073cba8f04e5e815a4d664c5766",
      "tree": "f33e9c2ab30f4d145b8b3debd91680295abeb13f",
      "parents": [
        "9795d499371f68b6cbccb6158a516a29b9ecb5ed"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Sep 07 08:35:33 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Sep 07 08:35:33 2017 +0200"
      },
      "message": "Removed outdated zerorpc API.\n\nSigned-off-by: Manuel Peuster \u003cmanuel@peuster.de\u003e\n"
    },
    {
      "commit": "ec2276ccc549ee080581f83e8132e814b4856567",
      "tree": "739bf2e6bea63fc55f34b1c97a28770fb5a42b13",
      "parents": [
        "0db5a38cb6d153abf58afbf6599763daa2578833"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Aug 30 10:03:51 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Aug 30 10:03:51 2017 +0200"
      },
      "message": "OS API fixes, but v3.0 auth not fully supported right now. fallback to v2.0\n"
    },
    {
      "commit": "0db5a38cb6d153abf58afbf6599763daa2578833",
      "tree": "ff4e74efa191bdafc6c14399819423599379e87a",
      "parents": [
        "c62be48ec66570a0aba61cd680a37698d1e2626a"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Aug 30 09:51:32 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Aug 30 09:51:32 2017 +0200"
      },
      "message": "Fix: OpenStack keystone API was broken for latest OS client\n"
    },
    {
      "commit": "c62be48ec66570a0aba61cd680a37698d1e2626a",
      "tree": "ed00302814f83c1f5b17f722561ab57f027426fb",
      "parents": [
        "b668d69e8e81bf4e6378daa6fb87e1e9f493aaf7"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Aug 30 09:22:37 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Aug 30 09:22:37 2017 +0200"
      },
      "message": "added helper lib\n"
    },
    {
      "commit": "b668d69e8e81bf4e6378daa6fb87e1e9f493aaf7",
      "tree": "e795ab17ed6bb7df1556fedcb1e34d12f94d880c",
      "parents": [
        "7cef04b206318f51407ae97d18f8dbbdeb2c2665"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Aug 30 09:22:15 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Aug 30 09:22:15 2017 +0200"
      },
      "message": "let OpenStack APIs work inside a container\n"
    },
    {
      "commit": "7cef04b206318f51407ae97d18f8dbbdeb2c2665",
      "tree": "0ca71fe49d9b5fd87e938e35e76f43e56d8207aa",
      "parents": [
        "0dbb1f66464bc239edb4680656a5d8be0a6343e3"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Aug 29 19:41:13 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Tue Aug 29 19:41:13 2017 +0200"
      },
      "message": "added REST API endpoint to OpenStack example to have son-emu-cli working\n"
    },
    {
      "commit": "250741424c1f138ceeddcff90cb9bbbf223a9c52",
      "tree": "51488c3db04e54d06646581b1b9a0798ddd1ebb9",
      "parents": [
        "b1a426eeed8b2611e908869366ea0ab82c27ce36"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Fri Aug 18 10:10:27 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Fri Aug 18 10:10:27 2017 +0200"
      },
      "message": "Cleanup. Test update.\n"
    },
    {
      "commit": "b1a426eeed8b2611e908869366ea0ab82c27ce36",
      "tree": "f55db9ed4c627112d3a79876a45d55aaef5524c3",
      "parents": [
        "df03cc3c2435de3abccf06efaabb7abeb49d5165"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Fri Aug 18 10:05:32 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Fri Aug 18 10:05:32 2017 +0200"
      },
      "message": "added stop method to normal REST API\n"
    },
    {
      "commit": "54ebd58708b6614b8aa476272fd47a1ed8077315",
      "tree": "cab978bc1aecc6eecb72047e5ec3c4cc17375417",
      "parents": [
        "9019253fdf31e920d5a9e0146dac0eabdb655c9d"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Jul 19 12:11:55 2017 -0700"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Jul 19 12:11:55 2017 -0700"
      },
      "message": "Also consider tag 4095\n\n"
    },
    {
      "commit": "9019253fdf31e920d5a9e0146dac0eabdb655c9d",
      "tree": "f764bf5ec989d422a4de882bb504799135961570",
      "parents": [
        "9e975accc9959605fe980f1f5a5bb4996f5746c0"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Jul 19 12:05:28 2017 -0700"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Wed Jul 19 12:05:28 2017 -0700"
      },
      "message": "Fix VLAN range of setChain\n\n"
    },
    {
      "commit": "f8fcdac855e460eceab9e79466bb77640ea9fba1",
      "tree": "a41805c3fae05f64181a9273ffbcc05e76cc13b6",
      "parents": [
        "f3716f3bfdd6f8488aac3281d50f476aca4940ab"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Jul 13 12:17:07 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Jul 13 12:17:07 2017 +0200"
      },
      "message": "Fix: Failing tests seem to be related to our specific Jenkins VM config.\n"
    },
    {
      "commit": "f3716f3bfdd6f8488aac3281d50f476aca4940ab",
      "tree": "de8ff981a7c5e2b6b25bb7310727d2bdff97211a",
      "parents": [
        "a37394aa31408b69c01c67727d2576bb488b9c3d"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Jul 13 11:17:50 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Jul 13 11:17:50 2017 +0200"
      },
      "message": "Improvement: Dummy GK tests are a bit messy\n"
    },
    {
      "commit": "a37394aa31408b69c01c67727d2576bb488b9c3d",
      "tree": "6a89479a671b93a19c977b98b498ca8b6e10ca3b",
      "parents": [
        "e2e9f054f5050293fefd54f7988ce6cb8c785e6b"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Jul 13 10:02:49 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Jul 13 10:02:49 2017 +0200"
      },
      "message": "Fix: Tests in SONATA jenkins behave strange\n"
    },
    {
      "commit": "e2e9f054f5050293fefd54f7988ce6cb8c785e6b",
      "tree": "781c220fe1453fb2a6863047ed0a59c4401d1e96",
      "parents": [
        "502825216d536f8f39ee997eaa9203fbd8414b7a"
      ],
      "author": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Jul 13 08:37:47 2017 +0200"
      },
      "committer": {
        "name": "peusterm",
        "email": "manuel.peuster@uni-paderborn.de",
        "time": "Thu Jul 13 08:37:47 2017 +0200"
      },
      "message": "Fix: Removed aoutdated tests which have been replaced by neutron-sfc\n"
    }
  ],
  "next": "502825216d536f8f39ee997eaa9203fbd8414b7a"
}
