You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by na...@apache.org on 2017/02/02 14:34:23 UTC

[6/9] jclouds-labs git commit: Add remaining features to support the abstraction

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/operatingSystems.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/operatingSystems.json b/packet/src/test/resources/operatingSystems.json
new file mode 100644
index 0000000..4fd7645
--- /dev/null
+++ b/packet/src/test/resources/operatingSystems.json
@@ -0,0 +1,166 @@
+{
+  "operating_systems": [
+    {
+      "id": "06e21644-a769-11e6-80f5-76304dec7eb7",
+      "slug": "alpine_3",
+      "name": "Alpine 3",
+      "distro": "alpine",
+      "version": "3",
+      "provisionable_on": []
+    },
+    {
+      "id": "06e21978-a769-11e6-80f5-76304dec7eb7",
+      "slug": "centos_6",
+      "name": "CentOS 6",
+      "distro": "centos",
+      "version": "6",
+      "provisionable_on": []
+    },
+    {
+      "id": "68bad60d-f5a7-45c2-ad09-573edaad3a3c",
+      "slug": "centos_7",
+      "name": "Centos 7",
+      "distro": "centos",
+      "version": "7",
+      "provisionable_on": [
+        "baremetal_0",
+        "baremetal_1",
+        "baremetal_2",
+        "baremetal_3"
+      ]
+    },
+    {
+      "id": "06e21ce8-a769-11e6-80f5-76304dec7eb7",
+      "slug": "coreos_alpha",
+      "name": "CoreOS Alpha",
+      "distro": "coreos",
+      "version": "alpha",
+      "provisionable_on": [
+        "baremetal_0",
+        "baremetal_1",
+        "baremetal_2",
+        "baremetal_3"
+      ]
+    },
+    {
+      "id": "6345f310-0bb0-4b59-b051-954fed05183a",
+      "slug": "coreos_beta",
+      "name": "CoreOS Beta",
+      "distro": "coreos",
+      "version": "beta",
+      "provisionable_on": [
+        "baremetal_0",
+        "baremetal_1",
+        "baremetal_2",
+        "baremetal_3"
+      ]
+    },
+    {
+      "id": "d61c3912-8422-4daf-835e-854efa0062e4",
+      "slug": "coreos_stable",
+      "name": "CoreOS Stable",
+      "distro": "coreos",
+      "version": "stable",
+      "provisionable_on": [
+        "baremetal_0",
+        "baremetal_1",
+        "baremetal_2",
+        "baremetal_3"
+      ]
+    },
+    {
+      "id": "06e21e78-a769-11e6-80f5-76304dec7eb7",
+      "slug": "debian_7",
+      "name": "Debian 7",
+      "distro": "debian",
+      "version": "7",
+      "provisionable_on": []
+    },
+    {
+      "id": "88239019-abc7-41e8-9a4d-cd334da97ff1",
+      "slug": "debian_8",
+      "name": "Debian 8",
+      "distro": "debian",
+      "version": "8",
+      "provisionable_on": [
+        "baremetal_0",
+        "baremetal_1",
+        "baremetal_2",
+        "baremetal_3"
+      ]
+    },
+    {
+      "id": "06e21ffe-a769-11e6-80f5-76304dec7eb7",
+      "slug": "deprovision",
+      "name": "Deprovision",
+      "distro": "centos",
+      "version": "",
+      "provisionable_on": []
+    },
+    {
+      "id": "06e22198-a769-11e6-80f5-76304dec7eb7",
+      "slug": "freebsd_10_3",
+      "name": "FreeBSD 10.3",
+      "distro": "freebsd",
+      "version": "10.3",
+      "provisionable_on": [
+        "baremetal_0",
+        "baremetal_1",
+        "baremetal_2",
+        "baremetal_3"
+      ]
+    },
+    {
+      "id": "06e22328-a769-11e6-80f5-76304dec7eb7",
+      "slug": "rancher",
+      "name": "RancherOS",
+      "distro": "rancher",
+      "version": "latest",
+      "provisionable_on": [
+        "baremetal_0",
+        "baremetal_1",
+        "baremetal_2",
+        "baremetal_3"
+      ]
+    },
+    {
+      "id": "06e224b8-a769-11e6-80f5-76304dec7eb7",
+      "slug": "ubuntu_14_04",
+      "name": "Ubuntu 14.04 LTS",
+      "distro": "ubuntu",
+      "version": "14.04",
+      "provisionable_on": [
+        "baremetal_0",
+        "baremetal_1",
+        "baremetal_2",
+        "baremetal_3"
+      ]
+    },
+    {
+      "id": "1b9b78e3-de68-466e-ba00-f2123e89c112",
+      "slug": "ubuntu_16_04",
+      "name": "Ubuntu 16.04 LTS",
+      "distro": "ubuntu",
+      "version": "16.04",
+      "provisionable_on": [
+        "baremetal_0",
+        "baremetal_1",
+        "baremetal_2",
+        "baremetal_2a",
+        "baremetal_3"
+      ]
+    },
+    {
+      "id": "06e22972-a769-11e6-80f5-76304dec7eb7",
+      "slug": "windows_2012_rc2",
+      "name": "Windows 2012 RC2",
+      "distro": "windows",
+      "version": "2012 RC2",
+      "provisionable_on": [
+        "baremetal_1",
+        "baremetal_2",
+        "baremetal_3"
+      ]
+    }
+  ]
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/plans-first.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/plans-first.json b/packet/src/test/resources/plans-first.json
new file mode 100644
index 0000000..cbd502a
--- /dev/null
+++ b/packet/src/test/resources/plans-first.json
@@ -0,0 +1,222 @@
+{
+  "plans": [
+    {
+      "id": "e69c0169-4726-46ea-98f1-939c9e8a3607",
+      "slug": "baremetal_0",
+      "name": "Type 0",
+      "description": "Our Type 0 configuration is a general use \"cloud killer\" server, with a Intel Atom 2.4Ghz processor and 8GB of RAM.",
+      "line": "baremetal",
+      "specs": {
+        "cpus": [
+          {
+            "count": 1,
+            "type": "Intel Atom C2550 @ 2.4Ghz"
+          }
+        ],
+        "memory": {
+          "total": "8GB"
+        },
+        "drives": [
+          {
+            "count": 1,
+            "size": "80GB",
+            "type": "SSD"
+          }
+        ],
+        "nics": [
+          {
+            "count": 2,
+            "type": "1Gbps"
+          }
+        ],
+        "features": {
+          "raid": false,
+          "txt": true
+        }
+      },
+      "available_in": [
+        {
+          "href": "/facilities/2b70eb8f-fa18-47c0-aba7-222a842362fd"
+        },
+        {
+          "href": "/facilities/8e6470b3-b75e-47d1-bb93-45b225750975"
+        },
+        {
+          "href": "/facilities/8ea03255-89f9-4e62-9d3f-8817db82ceed"
+        },
+        {
+          "href": "/facilities/e1e9c52e-a0bc-4117-b996-0fc94843ea09"
+        }
+      ],
+      "pricing": {
+        "hour": 0.05
+      }
+    },
+    {
+      "id": "6d1f1ffa-7912-4b78-b50d-88cc7c8ab40f",
+      "slug": "baremetal_1",
+      "name": "Type 1",
+      "description": "Our Type 1 configuration is a zippy general use server, with an Intel E3-1240 v3 processor and 32GB of RAM.",
+      "line": "baremetal",
+      "specs": {
+        "cpus": [
+          {
+            "count": 1,
+            "type": "Intel E3-1240 v3"
+          }
+        ],
+        "memory": {
+          "total": "32GB"
+        },
+        "drives": [
+          {
+            "count": 2,
+            "size": "120GB",
+            "type": "SSD"
+          }
+        ],
+        "nics": [
+          {
+            "count": 2,
+            "type": "1Gbps"
+          }
+        ],
+        "features": {
+          "raid": true,
+          "txt": true
+        }
+      },
+      "available_in": [
+        {
+          "href": "/facilities/2b70eb8f-fa18-47c0-aba7-222a842362fd"
+        },
+        {
+          "href": "/facilities/8e6470b3-b75e-47d1-bb93-45b225750975"
+        },
+        {
+          "href": "/facilities/8ea03255-89f9-4e62-9d3f-8817db82ceed"
+        },
+        {
+          "href": "/facilities/e1e9c52e-a0bc-4117-b996-0fc94843ea09"
+        }
+      ],
+      "pricing": {
+        "hour": 0.4
+      }
+    },
+    {
+      "id": "a3729923-fdc4-4e85-a972-aafbad3695db",
+      "slug": "baremetal_2",
+      "name": "Type 2",
+      "description": "Our Type 2 configuration is the perfect all purpose virtualization server, with dual E5-2650 v4 processors, 256 GB of DDR4 RAM, and six SSDs totaling 2.8 TB of storage.",
+      "line": "baremetal",
+      "specs": {
+        "cpus": [
+          {
+            "count": 2,
+            "type": "Intel Xeon E5-2650 v4 @2.2GHz"
+          }
+        ],
+        "memory": {
+          "total": "256GB"
+        },
+        "drives": [
+          {
+            "count": 6,
+            "size": "480GB",
+            "type": "SSD"
+          }
+        ],
+        "nics": [
+          {
+            "count": 2,
+            "type": "10Gbps"
+          }
+        ],
+        "features": {
+          "raid": true,
+          "txt": true
+        }
+      },
+      "available_in": [
+        {
+          "href": "/facilities/2b70eb8f-fa18-47c0-aba7-222a842362fd"
+        },
+        {
+          "href": "/facilities/8ea03255-89f9-4e62-9d3f-8817db82ceed"
+        },
+        {
+          "href": "/facilities/e1e9c52e-a0bc-4117-b996-0fc94843ea09"
+        }
+      ],
+      "pricing": {
+        "hour": 1.25
+      }
+    },
+    {
+      "id": "3bc8a214-b807-4058-ad4a-6925f2411155",
+      "slug": "baremetal_2a",
+      "name": "Type 2A",
+      "description": "Our Type 2A configuration is a 96-core dual socket ARM 64 beast based on Cavium ThunderX chips",
+      "line": "baremetal",
+      "specs": {
+        "cpus": [
+          {
+            "count": 2,
+            "type": "Cavium ThunderX CN8890 @2GHz"
+          }
+        ],
+        "memory": {
+          "total": "128GB"
+        },
+        "drives": [
+          {
+            "count": 1,
+            "size": "512GB",
+            "type": "SSD"
+          }
+        ],
+        "nics": [
+          {
+            "count": 2,
+            "type": "10Gbps"
+          }
+        ],
+        "features": {}
+      },
+      "available_in": [
+        {
+          "href": "/facilities/2b70eb8f-fa18-47c0-aba7-222a842362fd"
+        },
+        {
+          "href": "/facilities/8e6470b3-b75e-47d1-bb93-45b225750975"
+        },
+        {
+          "href": "/facilities/8ea03255-89f9-4e62-9d3f-8817db82ceed"
+        },
+        {
+          "href": "/facilities/e1e9c52e-a0bc-4117-b996-0fc94843ea09"
+        }
+      ],
+      "pricing": {
+        "hour": 0.5
+      }
+    }
+  ],
+  "meta": {
+    "first": {
+      "href": "/plans?page=1"
+    },
+    "previous": null,
+    "self": {
+      "href": "/plans?page=1"
+    },
+    "next": {
+      "href": "/plans?page=2"
+    },
+    "last": {
+      "href": "/plans?page=2"
+    },
+    "total": 7
+  }
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/plans-last.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/plans-last.json b/packet/src/test/resources/plans-last.json
new file mode 100644
index 0000000..04d6aee
--- /dev/null
+++ b/packet/src/test/resources/plans-last.json
@@ -0,0 +1,98 @@
+{
+  "plans": [
+    {
+      "id": "741f3afb-bb2f-4694-93a0-fcbad7cd5e78",
+      "slug": "baremetal_3",
+      "name": "Type 3",
+      "description": "Our Type 3 configuration is a high core, high IO server, with dual Intel E5-2640 v3 processors, 128GB of DDR4 RAM and ultra fast NVME flash drives.",
+      "line": "baremetal",
+      "specs": {
+        "cpus": [
+          {
+            "count": 2,
+            "type": "Intel E5-2640 v3"
+          }
+        ],
+        "memory": {
+          "total": "128GB"
+        },
+        "drives": [
+          {
+            "count": 2,
+            "size": "120GB",
+            "type": "SSD"
+          },
+          {
+            "count": 1,
+            "size": "1.6TB",
+            "type": "NVME"
+          }
+        ],
+        "nics": [
+          {
+            "count": 2,
+            "type": "10Gbps"
+          }
+        ],
+        "features": {
+          "raid": true,
+          "txt": true
+        }
+      },
+      "available_in": [
+        {
+          "href": "/facilities/2b70eb8f-fa18-47c0-aba7-222a842362fd"
+        },
+        {
+          "href": "/facilities/8e6470b3-b75e-47d1-bb93-45b225750975"
+        },
+        {
+          "href": "/facilities/e1e9c52e-a0bc-4117-b996-0fc94843ea09"
+        }
+      ],
+      "pricing": {
+        "hour": 1.75
+      }
+    },
+    {
+      "id": "87728148-3155-4992-a730-8d1e6aca8a32",
+      "slug": "storage_1",
+      "name": "Standard",
+      "description": "TBD",
+      "line": "storage",
+      "specs": {},
+      "available_in": [],
+      "pricing": {
+        "hour": 0.000104
+      }
+    },
+    {
+      "id": "d6570cfb-38fa-4467-92b3-e45d059bb249",
+      "slug": "storage_2",
+      "name": "Performance",
+      "description": "TBD",
+      "line": "storage",
+      "specs": {},
+      "available_in": [],
+      "pricing": {
+        "hour": 0.000223
+      }
+    }
+  ],
+  "meta": {
+    "first": {
+      "href": "/plans?page=1"
+    },
+    "previous": {
+      "href": "/plans?page=1"
+    },
+    "self": {
+      "href": "/plans?page=2"
+    },
+    "next": null,
+    "last": {
+      "href": "/plans?page=2"
+    },
+    "total": 7
+  }
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/plans.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/plans.json b/packet/src/test/resources/plans.json
new file mode 100644
index 0000000..c3eeedd
--- /dev/null
+++ b/packet/src/test/resources/plans.json
@@ -0,0 +1,284 @@
+{
+  "plans": [
+    {
+      "id": "e69c0169-4726-46ea-98f1-939c9e8a3607",
+      "slug": "baremetal_0",
+      "name": "Type 0",
+      "description": "Our Type 0 configuration is a general use \"cloud killer\" server, with a Intel Atom 2.4Ghz processor and 8GB of RAM.",
+      "line": "baremetal",
+      "specs": {
+        "cpus": [
+          {
+            "count": 1,
+            "type": "Intel Atom C2550 @ 2.4Ghz"
+          }
+        ],
+        "memory": {
+          "total": "8GB"
+        },
+        "drives": [
+          {
+            "count": 1,
+            "size": "80GB",
+            "type": "SSD"
+          }
+        ],
+        "nics": [
+          {
+            "count": 2,
+            "type": "1Gbps"
+          }
+        ],
+        "features": {
+          "raid": false,
+          "txt": true
+        }
+      },
+      "available_in": [
+        {
+          "href": "/facilities/2b70eb8f-fa18-47c0-aba7-222a842362fd"
+        },
+        {
+          "href": "/facilities/8e6470b3-b75e-47d1-bb93-45b225750975"
+        },
+        {
+          "href": "/facilities/8ea03255-89f9-4e62-9d3f-8817db82ceed"
+        },
+        {
+          "href": "/facilities/e1e9c52e-a0bc-4117-b996-0fc94843ea09"
+        }
+      ],
+      "pricing": {
+        "hour": 0.05
+      }
+    },
+    {
+      "id": "6d1f1ffa-7912-4b78-b50d-88cc7c8ab40f",
+      "slug": "baremetal_1",
+      "name": "Type 1",
+      "description": "Our Type 1 configuration is a zippy general use server, with an Intel E3-1240 v3 processor and 32GB of RAM.",
+      "line": "baremetal",
+      "specs": {
+        "cpus": [
+          {
+            "count": 1,
+            "type": "Intel E3-1240 v3"
+          }
+        ],
+        "memory": {
+          "total": "32GB"
+        },
+        "drives": [
+          {
+            "count": 2,
+            "size": "120GB",
+            "type": "SSD"
+          }
+        ],
+        "nics": [
+          {
+            "count": 2,
+            "type": "1Gbps"
+          }
+        ],
+        "features": {
+          "raid": true,
+          "txt": true
+        }
+      },
+      "available_in": [
+        {
+          "href": "/facilities/2b70eb8f-fa18-47c0-aba7-222a842362fd"
+        },
+        {
+          "href": "/facilities/8e6470b3-b75e-47d1-bb93-45b225750975"
+        },
+        {
+          "href": "/facilities/8ea03255-89f9-4e62-9d3f-8817db82ceed"
+        },
+        {
+          "href": "/facilities/e1e9c52e-a0bc-4117-b996-0fc94843ea09"
+        }
+      ],
+      "pricing": {
+        "hour": 0.4
+      }
+    },
+    {
+      "id": "a3729923-fdc4-4e85-a972-aafbad3695db",
+      "slug": "baremetal_2",
+      "name": "Type 2",
+      "description": "Our Type 2 configuration is the perfect all purpose virtualization server, with dual E5-2650 v4 processors, 256 GB of DDR4 RAM, and six SSDs totaling 2.8 TB of storage.",
+      "line": "baremetal",
+      "specs": {
+        "cpus": [
+          {
+            "count": 2,
+            "type": "Intel Xeon E5-2650 v4 @2.2GHz"
+          }
+        ],
+        "memory": {
+          "total": "256GB"
+        },
+        "drives": [
+          {
+            "count": 6,
+            "size": "480GB",
+            "type": "SSD"
+          }
+        ],
+        "nics": [
+          {
+            "count": 2,
+            "type": "10Gbps"
+          }
+        ],
+        "features": {
+          "raid": true,
+          "txt": true
+        }
+      },
+      "available_in": [
+        {
+          "href": "/facilities/2b70eb8f-fa18-47c0-aba7-222a842362fd"
+        },
+        {
+          "href": "/facilities/8ea03255-89f9-4e62-9d3f-8817db82ceed"
+        },
+        {
+          "href": "/facilities/e1e9c52e-a0bc-4117-b996-0fc94843ea09"
+        }
+      ],
+      "pricing": {
+        "hour": 1.25
+      }
+    },
+    {
+      "id": "3bc8a214-b807-4058-ad4a-6925f2411155",
+      "slug": "baremetal_2a",
+      "name": "Type 2A",
+      "description": "Our Type 2A configuration is a 96-core dual socket ARM 64 beast based on Cavium ThunderX chips",
+      "line": "baremetal",
+      "specs": {
+        "cpus": [
+          {
+            "count": 2,
+            "type": "Cavium ThunderX CN8890 @2GHz"
+          }
+        ],
+        "memory": {
+          "total": "128GB"
+        },
+        "drives": [
+          {
+            "count": 1,
+            "size": "512GB",
+            "type": "SSD"
+          }
+        ],
+        "nics": [
+          {
+            "count": 2,
+            "type": "10Gbps"
+          }
+        ],
+        "features": {}
+      },
+      "available_in": [
+        {
+          "href": "/facilities/2b70eb8f-fa18-47c0-aba7-222a842362fd"
+        },
+        {
+          "href": "/facilities/8e6470b3-b75e-47d1-bb93-45b225750975"
+        },
+        {
+          "href": "/facilities/8ea03255-89f9-4e62-9d3f-8817db82ceed"
+        },
+        {
+          "href": "/facilities/e1e9c52e-a0bc-4117-b996-0fc94843ea09"
+        }
+      ],
+      "pricing": {
+        "hour": 0.5
+      }
+    },
+    {
+      "id": "741f3afb-bb2f-4694-93a0-fcbad7cd5e78",
+      "slug": "baremetal_3",
+      "name": "Type 3",
+      "description": "Our Type 3 configuration is a high core, high IO server, with dual Intel E5-2640 v3 processors, 128GB of DDR4 RAM and ultra fast NVME flash drives.",
+      "line": "baremetal",
+      "specs": {
+        "cpus": [
+          {
+            "count": 2,
+            "type": "Intel E5-2640 v3"
+          }
+        ],
+        "memory": {
+          "total": "128GB"
+        },
+        "drives": [
+          {
+            "count": 2,
+            "size": "120GB",
+            "type": "SSD"
+          },
+          {
+            "count": 1,
+            "size": "1.6TB",
+            "type": "NVME"
+          }
+        ],
+        "nics": [
+          {
+            "count": 2,
+            "type": "10Gbps"
+          }
+        ],
+        "features": {
+          "raid": true,
+          "txt": true
+        }
+      },
+      "available_in": [
+        {
+          "href": "/facilities/2b70eb8f-fa18-47c0-aba7-222a842362fd"
+        },
+        {
+          "href": "/facilities/8e6470b3-b75e-47d1-bb93-45b225750975"
+        },
+        {
+          "href": "/facilities/e1e9c52e-a0bc-4117-b996-0fc94843ea09"
+        }
+      ],
+      "pricing": {
+        "hour": 1.75
+      }
+    },
+    {
+      "id": "87728148-3155-4992-a730-8d1e6aca8a32",
+      "slug": "storage_1",
+      "name": "Standard",
+      "description": "TBD",
+      "line": "storage",
+      "specs": {},
+      "available_in": [],
+      "pricing": {
+        "hour": 0.000104
+      }
+    },
+    {
+      "id": "d6570cfb-38fa-4467-92b3-e45d059bb249",
+      "slug": "storage_2",
+      "name": "Performance",
+      "description": "TBD",
+      "line": "storage",
+      "specs": {},
+      "available_in": [],
+      "pricing": {
+        "hour": 0.000223
+      }
+    }
+  ]
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/power-off.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/power-off.json b/packet/src/test/resources/power-off.json
new file mode 100644
index 0000000..3cdd43f
--- /dev/null
+++ b/packet/src/test/resources/power-off.json
@@ -0,0 +1,3 @@
+{
+  "type": "power_off"
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/power-on.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/power-on.json b/packet/src/test/resources/power-on.json
new file mode 100644
index 0000000..a482c1c
--- /dev/null
+++ b/packet/src/test/resources/power-on.json
@@ -0,0 +1,3 @@
+{
+  "type": "power_on"
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/projects.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/projects.json b/packet/src/test/resources/projects.json
index f7f1710..548b4af 100644
--- a/packet/src/test/resources/projects.json
+++ b/packet/src/test/resources/projects.json
@@ -1 +1,77 @@
-{"projects":[{"id":"93907f48-adfe-43ed-ad89-0e6e83721a54","name":"Cloudsoft CCS Testing","created_at":"2016-09-15T08:50:58Z","updated_at":"2017-01-05T09:36:53Z","max_devices":{"baremetal_0":null,"baremetal_1":null,"baremetal_2":null,"baremetal_3":null,"baremetal_2a":null,"storage_1":null,"storage_2":null},"members":[{"href":"/users/1140617d-262d-4502-a3d6-771d83c930da"},{"href":"/users/343345fe-18b3-46a3-9b9c-e4a2fe88ccbd"},{"href":"/users/73b0442e-cc4b-42a0-8d3a-c8dfb8a4ff2e"},{"href":"/users/ad711bc3-6333-449a-a405-23ca81f38c00"}],"memberships":[{"href":"/memberships/914facae-547f-46fc-93e8-860eb53d9bf6"},{"href":"/memberships/1ce7c9d9-d11f-47f2-b5a6-d1221338ad69"},{"href":"/memberships/e25c4478-9e44-465a-a9d7-bffc7a83300d"},{"href":"/memberships/8a00c05b-3ddc-41c3-8dd7-4a3d5984ecec"}],"invitations":[],"payment_method":{"href":"/payment-methods/b2bb4ee0-506b-4c01-b17d-ba41d5c430c5"},"devices":[{"href":"/devices/4942a6c7-55c6-42cc-a06b-cccd6f2fa5df"}],"ssh_keys":[{"href":"/ssh-keys
 /070e3282-5b6a-4f75-8f18-a4e7488eafaa"}],"volumes":[],"href":"/projects/93907f48-adfe-43ed-ad89-0e6e83721a54"}],"meta":{"first":{"href":"/projects?page=1"},"previous":null,"self":{"href":"/projects?page=1"},"next":null,"last":{"href":"/projects?page=1"},"total":1}}
+{
+  "projects": [
+    {
+      "id": "93907f48-adfe-43ed-ad89-0e6e83721a54",
+      "name": "Cloudsoft CCS Testing",
+      "created_at": "2016-09-15T08:50:58Z",
+      "updated_at": "2017-01-05T09:36:53Z",
+      "max_devices": {
+        "baremetal_0": null,
+        "baremetal_1": null,
+        "baremetal_2": null,
+        "baremetal_3": null,
+        "baremetal_2a": null,
+        "storage_1": null,
+        "storage_2": null
+      },
+      "members": [
+        {
+          "href": "/users/1140617d-262d-4502-a3d6-771d83c930da"
+        },
+        {
+          "href": "/users/343345fe-18b3-46a3-9b9c-e4a2fe88ccbd"
+        },
+        {
+          "href": "/users/73b0442e-cc4b-42a0-8d3a-c8dfb8a4ff2e"
+        },
+        {
+          "href": "/users/ad711bc3-6333-449a-a405-23ca81f38c00"
+        }
+      ],
+      "memberships": [
+        {
+          "href": "/memberships/914facae-547f-46fc-93e8-860eb53d9bf6"
+        },
+        {
+          "href": "/memberships/1ce7c9d9-d11f-47f2-b5a6-d1221338ad69"
+        },
+        {
+          "href": "/memberships/e25c4478-9e44-465a-a9d7-bffc7a83300d"
+        },
+        {
+          "href": "/memberships/8a00c05b-3ddc-41c3-8dd7-4a3d5984ecec"
+        }
+      ],
+      "invitations": [],
+      "payment_method": {
+        "href": "/payment-methods/b2bb4ee0-506b-4c01-b17d-ba41d5c430c5"
+      },
+      "devices": [
+        {
+          "href": "/devices/4942a6c7-55c6-42cc-a06b-cccd6f2fa5df"
+        }
+      ],
+      "ssh_keys": [
+        {
+          "href": "/ssh-keys/070e3282-5b6a-4f75-8f18-a4e7488eafaa"
+        }
+      ],
+      "volumes": [],
+      "href": "/projects/93907f48-adfe-43ed-ad89-0e6e83721a54"
+    }
+  ],
+  "meta": {
+    "first": {
+      "href": "/projects?page=1"
+    },
+    "previous": null,
+    "self": {
+      "href": "/projects?page=1"
+    },
+    "next": null,
+    "last": {
+      "href": "/projects?page=1"
+    },
+    "total": 1
+  }
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/reboot.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/reboot.json b/packet/src/test/resources/reboot.json
new file mode 100644
index 0000000..9bf6dfd
--- /dev/null
+++ b/packet/src/test/resources/reboot.json
@@ -0,0 +1,3 @@
+{
+  "type": "reboot"
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/rescue.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/rescue.json b/packet/src/test/resources/rescue.json
new file mode 100644
index 0000000..91ea877
--- /dev/null
+++ b/packet/src/test/resources/rescue.json
@@ -0,0 +1,3 @@
+{
+  "type": "rescue"
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/ssh-key-create-req.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/ssh-key-create-req.json b/packet/src/test/resources/ssh-key-create-req.json
new file mode 100644
index 0000000..02bdeff
--- /dev/null
+++ b/packet/src/test/resources/ssh-key-create-req.json
@@ -0,0 +1,4 @@
+{
+  "label": "jclouds-ssh-key-livetest",
+  "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCdgcoNzH4hCc0j3b4MuG503L/J54uyFvwCAOu8vSsYuLpJ4AEyEOv+T0SfdF605fK6GYXA16Rxk3lrPt7mfKGNtXR0Ripbv7Zc6PvCRorwgj/cjh/45miozjrkXAiHD1GFZycfbi4YsoWAqZj7W4mwtctmhrYM0FPdya2XoRpVy89N+A5Xo4Xtd6EZn6JGEKQM5+kF2aL3ggy0od/DqjuEVYwZoyTe1RgUTXZSU/Woh7WMhsRHbqd3eYz4s6ac8n8IJPGKtUaQeqUtH7OK6NRYXVypUrkqNlwdNYZAwrjXg/x5T3D+bo11LENASRt9OJ2OkmRSTqRxBeDkhnVauWK/"
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/ssh-key-create-res.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/ssh-key-create-res.json b/packet/src/test/resources/ssh-key-create-res.json
new file mode 100644
index 0000000..fa386fb
--- /dev/null
+++ b/packet/src/test/resources/ssh-key-create-res.json
@@ -0,0 +1,12 @@
+{
+  "id": "da5d6c21-2e8c-43ac-820f-ff41bd4e6ebc",
+  "label": "andrea-device-livetest",
+  "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCdgcoNzH4hCc0j3b4MuG503L/J54uyFvwCAOu8vSsYuLpJ4AEyEOv+T0SfdF605fK6GYXA16Rxk3lrPt7mfKGNtXR0Ripbv7Zc6PvCRorwgj/cjh/45miozjrkXAiHD1GFZycfbi4YsoWAqZj7W4mwtctmhrYM0FPdya2XoRpVy89N+A5Xo4Xtd6EZn6JGEKQM5+kF2aL3ggy0od/DqjuEVYwZoyTe1RgUTXZSU/Woh7WMhsRHbqd3eYz4s6ac8n8IJPGKtUaQeqUtH7OK6NRYXVypUrkqNlwdNYZAwrjXg/x5T3D+bo11LENASRt9OJ2OkmRSTqRxBeDkhnVauWK/",
+  "fingerprint": "60:b0:5a:23:42:b8:53:19:d0:32:f1:4d:a8:7c:9b:71",
+  "created_at": "2017-01-20T14:15:26Z",
+  "updated_at": "2017-01-20T14:15:26Z",
+  "owner": {
+    "href": "/users/ad711bc3-6333-449a-a405-23ca81f38c00"
+  },
+  "href": "/ssh-keys/da5d6c21-2e8c-43ac-820f-ff41bd4e6ebc"
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/ssh-key.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/ssh-key.json b/packet/src/test/resources/ssh-key.json
new file mode 100644
index 0000000..f3f21ea
--- /dev/null
+++ b/packet/src/test/resources/ssh-key.json
@@ -0,0 +1,12 @@
+{
+  "id": "bba63e41-b12c-493a-81d4-e52f50f247ed",
+  "label": "test",
+  "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNnvPZ25wZK19grrbal6R5JP1hLRBUuNh86KxZVMAFkGd5ouVSgO9dFajHZ45Q4mbaTkdOiqf7otMLDzkaztEa7oLK7Jso0Y0LOi+nT4gf38rvbEF5mq069G9b9XqlNleaGnpLuTN54iEK8c4TWZxIJqgelHEHhjp7V1asmilBbpZDmwA5cTt9vGJIhqA/BptKH3folZKeAQjRa1ZRSwSQUnk9rBKn4PKSRDojVa9A9jKt4qboJh5q7ZjtE8z+665F/4TgLzElTXUA8+uUFGpuynMSmQEt301e18dXAl+vBr8fMiThcoVVbdVdqdjXsw75fMXPAgqhjrw8k3+0/4P9 andrea@bigmac.local",
+  "fingerprint": "88:8a:7d:0f:db:fb:f4:2a:63:2e:d3:4b:1f:7f:0b:12",
+  "created_at": "2017-01-03T09:42:54Z",
+  "updated_at": "2017-01-03T09:42:54Z",
+  "owner": {
+    "href": "/users/ad711bc3-6333-449a-a405-23ca81f38c00"
+  },
+  "href": "/ssh-keys/bba63e41-b12c-493a-81d4-e52f50f247ed"
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/sshKeys-first.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/sshKeys-first.json b/packet/src/test/resources/sshKeys-first.json
new file mode 100644
index 0000000..1f0b9b3
--- /dev/null
+++ b/packet/src/test/resources/sshKeys-first.json
@@ -0,0 +1,80 @@
+{
+  "ssh_keys": [
+    {
+      "id": "bba63e41-b12c-493a-81d4-e52f50f247e1",
+      "label": "test",
+      "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNnvPZ25wZK19grrbal6R5JP1hLRBUuNh86KxZVMAFkGd5ouVSgO9dFajHZ45Q4mbaTkdOiqf7otMLDzkaztEa7oLK7Jso0Y0LOi+nT4gf38rvbEF5mq069G9b9XqlNleaGnpLuTN54iEK8c4TWZxIJqgelHEHhjp7V1asmilBbpZDmwA5cTt9vGJIhqA/BptKH3folZKeAQjRa1ZRSwSQUnk9rBKn4PKSRDojVa9A9jKt4qboJh5q7ZjtE8z+665F/4TgLzElTXUA8+uUFGpuynMSmQEt301e18dXAl+vBr8fMiThcoVVbdVdqdjXsw75fMXPAgqhjrw8k3+0/4P9 andrea@bigmac.local",
+      "fingerprint": "88:8a:7d:0f:db:fb:f4:2a:63:2e:d3:4b:1f:7f:0b:12",
+      "created_at": "2017-01-03T09:42:54Z",
+      "updated_at": "2017-01-03T09:42:54Z",
+      "owner": {
+        "href": "/users/ad711bc3-6333-449a-a405-23ca81f38c00"
+      },
+      "href": "/ssh-keys/bba63e41-b12c-493a-81d4-e52f50f247ed"
+    },
+    {
+      "id": "bba63e41-b12c-493a-81d4-e52f50f247e2",
+      "label": "test",
+      "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNnvPZ25wZK19grrbal6R5JP1hLRBUuNh86KxZVMAFkGd5ouVSgO9dFajHZ45Q4mbaTkdOiqf7otMLDzkaztEa7oLK7Jso0Y0LOi+nT4gf38rvbEF5mq069G9b9XqlNleaGnpLuTN54iEK8c4TWZxIJqgelHEHhjp7V1asmilBbpZDmwA5cTt9vGJIhqA/BptKH3folZKeAQjRa1ZRSwSQUnk9rBKn4PKSRDojVa9A9jKt4qboJh5q7ZjtE8z+665F/4TgLzElTXUA8+uUFGpuynMSmQEt301e18dXAl+vBr8fMiThcoVVbdVdqdjXsw75fMXPAgqhjrw8k3+0/4P9 andrea@bigmac.local",
+      "fingerprint": "88:8a:7d:0f:db:fb:f4:2a:63:2e:d3:4b:1f:7f:0b:12",
+      "created_at": "2017-01-03T09:42:54Z",
+      "updated_at": "2017-01-03T09:42:54Z",
+      "owner": {
+        "href": "/users/ad711bc3-6333-449a-a405-23ca81f38c00"
+      },
+      "href": "/ssh-keys/bba63e41-b12c-493a-81d4-e52f50f247ed"
+    },
+    {
+      "id": "bba63e41-b12c-493a-81d4-e52f50f247e3",
+      "label": "test",
+      "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNnvPZ25wZK19grrbal6R5JP1hLRBUuNh86KxZVMAFkGd5ouVSgO9dFajHZ45Q4mbaTkdOiqf7otMLDzkaztEa7oLK7Jso0Y0LOi+nT4gf38rvbEF5mq069G9b9XqlNleaGnpLuTN54iEK8c4TWZxIJqgelHEHhjp7V1asmilBbpZDmwA5cTt9vGJIhqA/BptKH3folZKeAQjRa1ZRSwSQUnk9rBKn4PKSRDojVa9A9jKt4qboJh5q7ZjtE8z+665F/4TgLzElTXUA8+uUFGpuynMSmQEt301e18dXAl+vBr8fMiThcoVVbdVdqdjXsw75fMXPAgqhjrw8k3+0/4P9 andrea@bigmac.local",
+      "fingerprint": "88:8a:7d:0f:db:fb:f4:2a:63:2e:d3:4b:1f:7f:0b:12",
+      "created_at": "2017-01-03T09:42:54Z",
+      "updated_at": "2017-01-03T09:42:54Z",
+      "owner": {
+        "href": "/users/ad711bc3-6333-449a-a405-23ca81f38c00"
+      },
+      "href": "/ssh-keys/bba63e41-b12c-493a-81d4-e52f50f247ed"
+    },
+    {
+      "id": "bba63e41-b12c-493a-81d4-e52f50f247e4",
+      "label": "test",
+      "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNnvPZ25wZK19grrbal6R5JP1hLRBUuNh86KxZVMAFkGd5ouVSgO9dFajHZ45Q4mbaTkdOiqf7otMLDzkaztEa7oLK7Jso0Y0LOi+nT4gf38rvbEF5mq069G9b9XqlNleaGnpLuTN54iEK8c4TWZxIJqgelHEHhjp7V1asmilBbpZDmwA5cTt9vGJIhqA/BptKH3folZKeAQjRa1ZRSwSQUnk9rBKn4PKSRDojVa9A9jKt4qboJh5q7ZjtE8z+665F/4TgLzElTXUA8+uUFGpuynMSmQEt301e18dXAl+vBr8fMiThcoVVbdVdqdjXsw75fMXPAgqhjrw8k3+0/4P9 andrea@bigmac.local",
+      "fingerprint": "88:8a:7d:0f:db:fb:f4:2a:63:2e:d3:4b:1f:7f:0b:12",
+      "created_at": "2017-01-03T09:42:54Z",
+      "updated_at": "2017-01-03T09:42:54Z",
+      "owner": {
+        "href": "/users/ad711bc3-6333-449a-a405-23ca81f38c00"
+      },
+      "href": "/ssh-keys/bba63e41-b12c-493a-81d4-e52f50f247ed"
+    },
+    {
+      "id": "bba63e41-b12c-493a-81d4-e52f50f247e5",
+      "label": "test",
+      "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNnvPZ25wZK19grrbal6R5JP1hLRBUuNh86KxZVMAFkGd5ouVSgO9dFajHZ45Q4mbaTkdOiqf7otMLDzkaztEa7oLK7Jso0Y0LOi+nT4gf38rvbEF5mq069G9b9XqlNleaGnpLuTN54iEK8c4TWZxIJqgelHEHhjp7V1asmilBbpZDmwA5cTt9vGJIhqA/BptKH3folZKeAQjRa1ZRSwSQUnk9rBKn4PKSRDojVa9A9jKt4qboJh5q7ZjtE8z+665F/4TgLzElTXUA8+uUFGpuynMSmQEt301e18dXAl+vBr8fMiThcoVVbdVdqdjXsw75fMXPAgqhjrw8k3+0/4P9 andrea@bigmac.local",
+      "fingerprint": "88:8a:7d:0f:db:fb:f4:2a:63:2e:d3:4b:1f:7f:0b:12",
+      "created_at": "2017-01-03T09:42:54Z",
+      "updated_at": "2017-01-03T09:42:54Z",
+      "owner": {
+        "href": "/users/ad711bc3-6333-449a-a405-23ca81f38c00"
+      },
+      "href": "/ssh-keys/bba63e41-b12c-493a-81d4-e52f50f247ed"
+    }
+  ],
+  "meta": {
+    "first": {
+      "href": "/ssh-keys?page=1"
+    },
+    "previous": null,
+    "self": {
+      "href": "/ssh-keys?page=1"
+    },
+    "next": {
+      "href": "/ssh-keys?page=2"
+    },
+    "last": {
+      "href": "/ssh-keys?page=2"
+    },
+    "total": 8
+  }
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/sshKeys-last.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/sshKeys-last.json b/packet/src/test/resources/sshKeys-last.json
new file mode 100644
index 0000000..15fd116
--- /dev/null
+++ b/packet/src/test/resources/sshKeys-last.json
@@ -0,0 +1,56 @@
+{
+  "ssh_keys": [
+    {
+      "id": "bba63e41-b12c-493a-81d4-e52f50f247e6",
+      "label": "test",
+      "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNnvPZ25wZK19grrbal6R5JP1hLRBUuNh86KxZVMAFkGd5ouVSgO9dFajHZ45Q4mbaTkdOiqf7otMLDzkaztEa7oLK7Jso0Y0LOi+nT4gf38rvbEF5mq069G9b9XqlNleaGnpLuTN54iEK8c4TWZxIJqgelHEHhjp7V1asmilBbpZDmwA5cTt9vGJIhqA/BptKH3folZKeAQjRa1ZRSwSQUnk9rBKn4PKSRDojVa9A9jKt4qboJh5q7ZjtE8z+665F/4TgLzElTXUA8+uUFGpuynMSmQEt301e18dXAl+vBr8fMiThcoVVbdVdqdjXsw75fMXPAgqhjrw8k3+0/4P9 andrea@bigmac.local",
+      "fingerprint": "88:8a:7d:0f:db:fb:f4:2a:63:2e:d3:4b:1f:7f:0b:12",
+      "created_at": "2017-01-03T09:42:54Z",
+      "updated_at": "2017-01-03T09:42:54Z",
+      "owner": {
+        "href": "/users/ad711bc3-6333-449a-a405-23ca81f38c00"
+      },
+      "href": "/ssh-keys/bba63e41-b12c-493a-81d4-e52f50f247ed"
+    },
+    {
+      "id": "bba63e41-b12c-493a-81d4-e52f50f247e7",
+      "label": "test",
+      "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNnvPZ25wZK19grrbal6R5JP1hLRBUuNh86KxZVMAFkGd5ouVSgO9dFajHZ45Q4mbaTkdOiqf7otMLDzkaztEa7oLK7Jso0Y0LOi+nT4gf38rvbEF5mq069G9b9XqlNleaGnpLuTN54iEK8c4TWZxIJqgelHEHhjp7V1asmilBbpZDmwA5cTt9vGJIhqA/BptKH3folZKeAQjRa1ZRSwSQUnk9rBKn4PKSRDojVa9A9jKt4qboJh5q7ZjtE8z+665F/4TgLzElTXUA8+uUFGpuynMSmQEt301e18dXAl+vBr8fMiThcoVVbdVdqdjXsw75fMXPAgqhjrw8k3+0/4P9 andrea@bigmac.local",
+      "fingerprint": "88:8a:7d:0f:db:fb:f4:2a:63:2e:d3:4b:1f:7f:0b:12",
+      "created_at": "2017-01-03T09:42:54Z",
+      "updated_at": "2017-01-03T09:42:54Z",
+      "owner": {
+        "href": "/users/ad711bc3-6333-449a-a405-23ca81f38c00"
+      },
+      "href": "/ssh-keys/bba63e41-b12c-493a-81d4-e52f50f247ed"
+    },
+    {
+      "id": "bba63e41-b12c-493a-81d4-e52f50f247e8",
+      "label": "test",
+      "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNnvPZ25wZK19grrbal6R5JP1hLRBUuNh86KxZVMAFkGd5ouVSgO9dFajHZ45Q4mbaTkdOiqf7otMLDzkaztEa7oLK7Jso0Y0LOi+nT4gf38rvbEF5mq069G9b9XqlNleaGnpLuTN54iEK8c4TWZxIJqgelHEHhjp7V1asmilBbpZDmwA5cTt9vGJIhqA/BptKH3folZKeAQjRa1ZRSwSQUnk9rBKn4PKSRDojVa9A9jKt4qboJh5q7ZjtE8z+665F/4TgLzElTXUA8+uUFGpuynMSmQEt301e18dXAl+vBr8fMiThcoVVbdVdqdjXsw75fMXPAgqhjrw8k3+0/4P9 andrea@bigmac.local",
+      "fingerprint": "88:8a:7d:0f:db:fb:f4:2a:63:2e:d3:4b:1f:7f:0b:12",
+      "created_at": "2017-01-03T09:42:54Z",
+      "updated_at": "2017-01-03T09:42:54Z",
+      "owner": {
+        "href": "/users/ad711bc3-6333-449a-a405-23ca81f38c00"
+      },
+      "href": "/ssh-keys/bba63e41-b12c-493a-81d4-e52f50f247ed"
+    }
+  ],
+  "meta": {
+    "first": {
+      "href": "/ssh-keys?page=1"
+    },
+    "previous": {
+      "href": "/ssh-keys?page=1"
+    },
+    "self": {
+      "href": "/ssh-keys?page=2"
+    },
+    "next": null,
+    "last": {
+      "href": "/ssh-keys?page=2"
+    },
+    "total": 8
+  }
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/sshKeys.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/sshKeys.json b/packet/src/test/resources/sshKeys.json
new file mode 100644
index 0000000..582c730
--- /dev/null
+++ b/packet/src/test/resources/sshKeys.json
@@ -0,0 +1,16 @@
+{
+  "ssh_keys": [
+    {
+      "id": "bba63e41-b12c-493a-81d4-e52f50f247ed",
+      "label": "test",
+      "key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNnvPZ25wZK19grrbal6R5JP1hLRBUuNh86KxZVMAFkGd5ouVSgO9dFajHZ45Q4mbaTkdOiqf7otMLDzkaztEa7oLK7Jso0Y0LOi+nT4gf38rvbEF5mq069G9b9XqlNleaGnpLuTN54iEK8c4TWZxIJqgelHEHhjp7V1asmilBbpZDmwA5cTt9vGJIhqA/BptKH3folZKeAQjRa1ZRSwSQUnk9rBKn4PKSRDojVa9A9jKt4qboJh5q7ZjtE8z+665F/4TgLzElTXUA8+uUFGpuynMSmQEt301e18dXAl+vBr8fMiThcoVVbdVdqdjXsw75fMXPAgqhjrw8k3+0/4P9 andrea@bigmac.local",
+      "fingerprint": "88:8a:7d:0f:db:fb:f4:2a:63:2e:d3:4b:1f:7f:0b:12",
+      "created_at": "2017-01-03T09:42:54Z",
+      "updated_at": "2017-01-03T09:42:54Z",
+      "owner": {
+        "href": "/users/ad711bc3-6333-449a-a405-23ca81f38c00"
+      },
+      "href": "/ssh-keys/bba63e41-b12c-493a-81d4-e52f50f247ed"
+    }
+  ]
+}

http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/a812591f/packet/src/test/resources/user.json
----------------------------------------------------------------------
diff --git a/packet/src/test/resources/user.json b/packet/src/test/resources/user.json
new file mode 100644
index 0000000..a3c4677
--- /dev/null
+++ b/packet/src/test/resources/user.json
@@ -0,0 +1,19 @@
+{
+  "id": "faaaec30-be0c-4b6d-b1a7-1bf6e494a333",
+  "first_name": "Melissa",
+  "last_name": "Smith",
+  "full_name": "Melissa Smith",
+  "email": "melissa@example.com",
+  "max_projects": 1,
+  "two_factor_auth": "sms",
+  "timezone": "America/New_York",
+  "phone_number": "555-555-5555",
+  "created_at": "2014-04-14T02:15:15Z",
+  "updated_at": "2014-04-14T02:15:15Z",
+  "timezone": "America/New_York",
+  "emails": [
+    { "href": "/emails/7e407a6a-4f96-4da0-8c48-5665352ebf06" }
+  ],
+  "avatar_url": "https://www.gravatar.com/avatar/d248bbb3a03ed?d=https://app.packet.net/client-portal/assets/images/default_gravatar.png",
+  "href": "/users/faaaec30-be0c-4b6d-b1a7-1bf6e494a333"
+}