You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@jclouds.apache.org by Andrea Turli <no...@github.com> on 2017/01/29 16:31:55 UTC

[jclouds/jclouds-labs] Feature/packet 5 (#354)

/cc @nacx 

unit and live tests are ok
```
-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Configuring TestNG with: TestNG652Configurator
Starting test testOfApiContains(org.jclouds.packet.compute.PacketComputeProviderMetadataTest)
Starting test testWithId(org.jclouds.packet.compute.PacketComputeProviderMetadataTest)
Starting test testTransformableToContains(org.jclouds.packet.compute.PacketComputeProviderMetadataTest)
Starting test testAllContains(org.jclouds.packet.compute.PacketComputeProviderMetadataTest)
[pool-1-thread-1] Test testAllContains(org.jclouds.packet.compute.PacketComputeProviderMetadataTest) succeeded: 9ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
[pool-1-thread-4] Test testWithId(org.jclouds.packet.compute.PacketComputeProviderMetadataTest) succeeded: 13ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
[pool-1-thread-2] Test testOfApiContains(org.jclouds.packet.compute.PacketComputeProviderMetadataTest) succeeded: 13ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
[pool-1-thread-3] Test testTransformableToContains(org.jclouds.packet.compute.PacketComputeProviderMetadataTest) succeeded: 13ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
Jan 29, 2017 4:30:32 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52568] starting to accept connections
Starting test testActionPowerOff(org.jclouds.packet.features.DeviceApiMockTest)
Jan 29, 2017 4:30:32 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52568] received request: POST /devices/deviceId/actions HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-2-thread-1] Test testActionPowerOff(org.jclouds.packet.features.DeviceApiMockTest) succeeded: 78ms
Test suite progress: tests succeeded: 5, failed: 0, skipped: 0.
Jan 29, 2017 4:30:32 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52568] done accepting connections: Socket closed
Jan 29, 2017 4:30:32 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52570] starting to accept connections
Starting test testActionPowerOn(org.jclouds.packet.features.DeviceApiMockTest)
[pool-2-thread-1] Test testActionPowerOn(org.jclouds.packet.features.DeviceApiMockTest) succeeded: 5ms
Test suite progress: tests succeeded: 6, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52570] received request: POST /devices/deviceId/actions HTTP/1.1 and responded: HTTP/1.1 200 OK
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52570] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52572] starting to accept connections
Starting test testActionReboot(org.jclouds.packet.features.DeviceApiMockTest)
[pool-2-thread-1] Test testActionReboot(org.jclouds.packet.features.DeviceApiMockTest) succeeded: 6ms
Test suite progress: tests succeeded: 7, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52572] received request: POST /devices/deviceId/actions HTTP/1.1 and responded: HTTP/1.1 200 OK
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52572] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52574] starting to accept connections
Starting test testCreateDevice(org.jclouds.packet.features.DeviceApiMockTest)
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52574] received request: POST /projects/93907f48-adfe-43ed-ad89-0e6e83721a54/devices HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-2-thread-1] Test testCreateDevice(org.jclouds.packet.features.DeviceApiMockTest) succeeded: 66ms
Test suite progress: tests succeeded: 8, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52574] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52576] starting to accept connections
Starting test testDeleteDevice(org.jclouds.packet.features.DeviceApiMockTest)
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52576] received request: DELETE /devices/1 HTTP/1.1 and responded: HTTP/1.1 204 No Content
[pool-2-thread-1] Test testDeleteDevice(org.jclouds.packet.features.DeviceApiMockTest) succeeded: 13ms
Test suite progress: tests succeeded: 9, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52576] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52578] starting to accept connections
Starting test testDeleteDeviceReturns404(org.jclouds.packet.features.DeviceApiMockTest)
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52578] received request: DELETE /devices/1 HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-2-thread-1] Test testDeleteDeviceReturns404(org.jclouds.packet.features.DeviceApiMockTest) succeeded: 6ms
Test suite progress: tests succeeded: 10, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52578] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52580] starting to accept connections
Starting test testGetDevice(org.jclouds.packet.features.DeviceApiMockTest)
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52580] received request: GET /devices/1 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-2-thread-1] Test testGetDevice(org.jclouds.packet.features.DeviceApiMockTest) succeeded: 29ms
Test suite progress: tests succeeded: 11, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52580] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52582] starting to accept connections
Starting test testGetDeviceReturns404(org.jclouds.packet.features.DeviceApiMockTest)
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52582] received request: GET /devices/1 HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-2-thread-1] Test testGetDeviceReturns404(org.jclouds.packet.features.DeviceApiMockTest) succeeded: 6ms
Test suite progress: tests succeeded: 12, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52582] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52584] starting to accept connections
Starting test testListDevices(org.jclouds.packet.features.DeviceApiMockTest)
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52584] received request: GET /projects/93907f48-adfe-43ed-ad89-0e6e83721a54/devices HTTP/1.1 and responded: HTTP/1.1 200 OK
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52584] received request: GET /projects/93907f48-adfe-43ed-ad89-0e6e83721a54/devices?page=2 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-2-thread-1] Test testListDevices(org.jclouds.packet.features.DeviceApiMockTest) succeeded: 67ms
Test suite progress: tests succeeded: 13, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52584] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52586] starting to accept connections
Starting test testListDevicesReturns404(org.jclouds.packet.features.DeviceApiMockTest)
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52586] received request: GET /projects/93907f48-adfe-43ed-ad89-0e6e83721a54/devices HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-2-thread-1] Test testListDevicesReturns404(org.jclouds.packet.features.DeviceApiMockTest) succeeded: 6ms
Test suite progress: tests succeeded: 14, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52586] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52588] starting to accept connections
Starting test testListDevicesWithOptions(org.jclouds.packet.features.DeviceApiMockTest)
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52588] received request: GET /projects/93907f48-adfe-43ed-ad89-0e6e83721a54/devices?page=1&per_page=5 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-2-thread-1] Test testListDevicesWithOptions(org.jclouds.packet.features.DeviceApiMockTest) succeeded: 39ms
Test suite progress: tests succeeded: 15, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52588] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52590] starting to accept connections
Starting test testListDevicesWithOptionsReturns404(org.jclouds.packet.features.DeviceApiMockTest)
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52590] received request: GET /projects/93907f48-adfe-43ed-ad89-0e6e83721a54/devices?page=1&per_page=5 HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-2-thread-1] Test testListDevicesWithOptionsReturns404(org.jclouds.packet.features.DeviceApiMockTest) succeeded: 4ms
Test suite progress: tests succeeded: 16, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52590] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52592] starting to accept connections
Starting test testListFacilities(org.jclouds.packet.features.FacilityApiMockTest)
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52592] received request: GET /facilities HTTP/1.1 and responded: HTTP/1.1 200 OK
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52592] received request: GET /facilities?page=2 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-3-thread-1] Test testListFacilities(org.jclouds.packet.features.FacilityApiMockTest) succeeded: 20ms
Test suite progress: tests succeeded: 17, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52592] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52594] starting to accept connections
Starting test testListFacilitiesReturns404(org.jclouds.packet.features.FacilityApiMockTest)
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52594] received request: GET /facilities HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-3-thread-1] Test testListFacilitiesReturns404(org.jclouds.packet.features.FacilityApiMockTest) succeeded: 10ms
Test suite progress: tests succeeded: 18, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52594] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52596] starting to accept connections
Starting test testListFacilitiesWithOptions(org.jclouds.packet.features.FacilityApiMockTest)
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52596] received request: GET /facilities?page=1&per_page=2 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-3-thread-1] Test testListFacilitiesWithOptions(org.jclouds.packet.features.FacilityApiMockTest) succeeded: 6ms
Test suite progress: tests succeeded: 19, failed: 0, skipped: 0.
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52596] done accepting connections: Socket closed
Jan 29, 2017 4:30:33 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52598] starting to accept connections
Starting test testListFacilitiesWithOptionsReturns404(org.jclouds.packet.features.FacilityApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52598] received request: GET /facilities?page=1&per_page=2 HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-3-thread-1] Test testListFacilitiesWithOptionsReturns404(org.jclouds.packet.features.FacilityApiMockTest) succeeded: 6ms
Test suite progress: tests succeeded: 20, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52598] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52600] starting to accept connections
Starting test testListOperatingSystems(org.jclouds.packet.features.OperatingSystemApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52600] received request: GET /operating-systems HTTP/1.1 and responded: HTTP/1.1 200 OK
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52600] received request: GET /operating-systems?page=2 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-4-thread-1] Test testListOperatingSystems(org.jclouds.packet.features.OperatingSystemApiMockTest) succeeded: 14ms
Test suite progress: tests succeeded: 21, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52600] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52602] starting to accept connections
Starting test testListOperatingSystemsReturns404(org.jclouds.packet.features.OperatingSystemApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52602] received request: GET /operating-systems HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-4-thread-1] Test testListOperatingSystemsReturns404(org.jclouds.packet.features.OperatingSystemApiMockTest) succeeded: 3ms
Test suite progress: tests succeeded: 22, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52602] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52604] starting to accept connections
Starting test testListOperatingSystemsWithOptions(org.jclouds.packet.features.OperatingSystemApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52604] received request: GET /operating-systems?page=1&per_page=5 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-4-thread-1] Test testListOperatingSystemsWithOptions(org.jclouds.packet.features.OperatingSystemApiMockTest) succeeded: 6ms
Test suite progress: tests succeeded: 23, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52604] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52606] starting to accept connections
Starting test testListOperatingSystemsWithOptionsReturns404(org.jclouds.packet.features.OperatingSystemApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52606] received request: GET /operating-systems?page=1&per_page=5 HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-4-thread-1] Test testListOperatingSystemsWithOptionsReturns404(org.jclouds.packet.features.OperatingSystemApiMockTest) succeeded: 4ms
Test suite progress: tests succeeded: 24, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52606] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52608] starting to accept connections
Starting test testListPlans(org.jclouds.packet.features.PlanApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52608] received request: GET /plans HTTP/1.1 and responded: HTTP/1.1 200 OK
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52608] received request: GET /plans?page=2 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-5-thread-1] Test testListPlans(org.jclouds.packet.features.PlanApiMockTest) succeeded: 13ms
Test suite progress: tests succeeded: 25, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52608] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52610] starting to accept connections
Starting test testListPlansReturns404(org.jclouds.packet.features.PlanApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52610] received request: GET /plans HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-5-thread-1] Test testListPlansReturns404(org.jclouds.packet.features.PlanApiMockTest) succeeded: 2ms
Test suite progress: tests succeeded: 26, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52610] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52612] starting to accept connections
Starting test testListPlansWithOptions(org.jclouds.packet.features.PlanApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52612] received request: GET /plans?page=1&per_page=5 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-5-thread-1] Test testListPlansWithOptions(org.jclouds.packet.features.PlanApiMockTest) succeeded: 7ms
Test suite progress: tests succeeded: 27, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52612] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52614] starting to accept connections
Starting test testListPlansWithOptionsReturns404(org.jclouds.packet.features.PlanApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52614] received request: GET /plans?page=1&per_page=5 HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-5-thread-1] Test testListPlansWithOptionsReturns404(org.jclouds.packet.features.PlanApiMockTest) succeeded: 3ms
Test suite progress: tests succeeded: 28, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52614] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52616] starting to accept connections
Starting test testListProjects(org.jclouds.packet.features.ProjectApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52616] received request: GET /projects HTTP/1.1 and responded: HTTP/1.1 200 OK
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52616] received request: GET /projects?page=2 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-6-thread-1] Test testListProjects(org.jclouds.packet.features.ProjectApiMockTest) succeeded: 17ms
Test suite progress: tests succeeded: 29, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52616] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52618] starting to accept connections
Starting test testListProjectsReturns404(org.jclouds.packet.features.ProjectApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52618] received request: GET /projects HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-6-thread-1] Test testListProjectsReturns404(org.jclouds.packet.features.ProjectApiMockTest) succeeded: 3ms
Test suite progress: tests succeeded: 30, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52618] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52620] starting to accept connections
Starting test testListProjectsWithOptions(org.jclouds.packet.features.ProjectApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52620] received request: GET /projects?page=1&per_page=5 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-6-thread-1] Test testListProjectsWithOptions(org.jclouds.packet.features.ProjectApiMockTest) succeeded: 8ms
Test suite progress: tests succeeded: 31, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52620] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52622] starting to accept connections
Starting test testListProjectsWithOptionsReturns404(org.jclouds.packet.features.ProjectApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52622] received request: GET /projects?page=1&per_page=5 HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-6-thread-1] Test testListProjectsWithOptionsReturns404(org.jclouds.packet.features.ProjectApiMockTest) succeeded: 3ms
Test suite progress: tests succeeded: 32, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52622] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52624] starting to accept connections
Starting test testCreateSshKey(org.jclouds.packet.features.SshKeyApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52624] received request: POST /ssh-keys HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-7-thread-1] Test testCreateSshKey(org.jclouds.packet.features.SshKeyApiMockTest) succeeded: 14ms
Test suite progress: tests succeeded: 33, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52624] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52626] starting to accept connections
Starting test testDeleteSshKey(org.jclouds.packet.features.SshKeyApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52626] received request: DELETE /ssh-keys/1 HTTP/1.1 and responded: HTTP/1.1 204 No Content
[pool-7-thread-1] Test testDeleteSshKey(org.jclouds.packet.features.SshKeyApiMockTest) succeeded: 4ms
Test suite progress: tests succeeded: 34, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52626] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52628] starting to accept connections
Starting test testDeleteSshKeyReturns404(org.jclouds.packet.features.SshKeyApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52628] received request: DELETE /ssh-keys/1 HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-7-thread-1] Test testDeleteSshKeyReturns404(org.jclouds.packet.features.SshKeyApiMockTest) succeeded: 3ms
Test suite progress: tests succeeded: 35, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52628] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52630] starting to accept connections
Starting test testGetSshKey(org.jclouds.packet.features.SshKeyApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52630] received request: GET /ssh-keys/1 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-7-thread-1] Test testGetSshKey(org.jclouds.packet.features.SshKeyApiMockTest) succeeded: 8ms
Test suite progress: tests succeeded: 36, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52630] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52632] starting to accept connections
Starting test testGetSshKeyReturns404(org.jclouds.packet.features.SshKeyApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52632] received request: GET /ssh-keys/1 HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-7-thread-1] Test testGetSshKeyReturns404(org.jclouds.packet.features.SshKeyApiMockTest) succeeded: 3ms
Test suite progress: tests succeeded: 37, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52632] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52634] starting to accept connections
Starting test testListSshKeys(org.jclouds.packet.features.SshKeyApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52634] received request: GET /ssh-keys HTTP/1.1 and responded: HTTP/1.1 200 OK
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52634] received request: GET /ssh-keys?page=2 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-7-thread-1] Test testListSshKeys(org.jclouds.packet.features.SshKeyApiMockTest) succeeded: 12ms
Test suite progress: tests succeeded: 38, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52634] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52636] starting to accept connections
Starting test testListSshKeysReturns404(org.jclouds.packet.features.SshKeyApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52636] received request: GET /ssh-keys HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-7-thread-1] Test testListSshKeysReturns404(org.jclouds.packet.features.SshKeyApiMockTest) succeeded: 3ms
Test suite progress: tests succeeded: 39, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52636] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52638] starting to accept connections
Starting test testListSshKeysWithOptions(org.jclouds.packet.features.SshKeyApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52638] received request: GET /ssh-keys?page=1&per_page=5 HTTP/1.1 and responded: HTTP/1.1 200 OK
[pool-7-thread-1] Test testListSshKeysWithOptions(org.jclouds.packet.features.SshKeyApiMockTest) succeeded: 6ms
Test suite progress: tests succeeded: 40, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52638] done accepting connections: Socket closed
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 execute
INFO: MockWebServer[52640] starting to accept connections
Starting test testListSshKeysWithOptionsReturns404(org.jclouds.packet.features.SshKeyApiMockTest)
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$3 processOneRequest
INFO: MockWebServer[52640] received request: GET /ssh-keys?page=1&per_page=5 HTTP/1.1 and responded: HTTP/1.1 404 Not Found
[pool-7-thread-1] Test testListSshKeysWithOptionsReturns404(org.jclouds.packet.features.SshKeyApiMockTest) succeeded: 4ms
Test suite progress: tests succeeded: 41, failed: 0, skipped: 0.
Jan 29, 2017 4:30:34 PM com.squareup.okhttp.mockwebserver.MockWebServer$2 acceptConnections
INFO: MockWebServer[52640] done accepting connections: Socket closed
Starting test testNoOptions(org.jclouds.packet.functions.HrefToListOptionsTest)
Starting test testWithOptions(org.jclouds.packet.functions.HrefToListOptionsTest)
[pool-8-thread-1] Test testNoOptions(org.jclouds.packet.functions.HrefToListOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 42, failed: 0, skipped: 0.
[pool-8-thread-2] Test testWithOptions(org.jclouds.packet.functions.HrefToListOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 43, failed: 0, skipped: 0.
Starting test testAllContains(org.jclouds.packet.PacketProviderMetadataTest)
Starting test testOfApiContains(org.jclouds.packet.PacketProviderMetadataTest)
Starting test testTransformableToContains(org.jclouds.packet.PacketProviderMetadataTest)
Starting test testWithId(org.jclouds.packet.PacketProviderMetadataTest)
[pool-9-thread-3] Test testTransformableToContains(org.jclouds.packet.PacketProviderMetadataTest) succeeded: 1ms
Test suite progress: tests succeeded: 44, failed: 0, skipped: 0.
[pool-9-thread-4] Test testWithId(org.jclouds.packet.PacketProviderMetadataTest) succeeded: 0ms
Test suite progress: tests succeeded: 45, failed: 0, skipped: 0.
[pool-9-thread-2] Test testOfApiContains(org.jclouds.packet.PacketProviderMetadataTest) succeeded: 1ms
Test suite progress: tests succeeded: 46, failed: 0, skipped: 0.
[pool-9-thread-1] Test testAllContains(org.jclouds.packet.PacketProviderMetadataTest) succeeded: 1ms
Test suite progress: tests succeeded: 47, failed: 0, skipped: 0.
Tests run: 47, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 3.159 sec - in TestSuite

Results :

Tests run: 47, Failures: 0, Errors: 0, Skipped: 0
```
and
```
-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Starting test testList(org.jclouds.packet.features.FacilityApiLiveTest)
Starting test testList(org.jclouds.packet.features.OperatingSystemApiLiveTest)
Starting test testCompareSizes(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest)
Starting test setServiceDefaults(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test setServiceDefaults(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
Starting test testCompareSizes(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
Starting test testCreate(org.jclouds.packet.features.DeviceApiLiveTest)
[TestNG] Test testList(org.jclouds.packet.features.OperatingSystemApiLiveTest) succeeded: 2255ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
[TestNG] Test testList(org.jclouds.packet.features.FacilityApiLiveTest) succeeded: 2256ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
Starting test testListOnePage(org.jclouds.packet.features.OperatingSystemApiLiveTest)
Starting test testListOnePage(org.jclouds.packet.features.FacilityApiLiveTest)
[TestNG] Test testListOnePage(org.jclouds.packet.features.FacilityApiLiveTest) succeeded: 907ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
[TestNG] Test testListOnePage(org.jclouds.packet.features.OperatingSystemApiLiveTest) succeeded: 934ms
Test suite progress: tests succeeded: 5, failed: 0, skipped: 0.
Starting test testList(org.jclouds.packet.features.PlanApiLiveTest)
Starting test testList(org.jclouds.packet.features.ProjectApiLiveTest)
[TestNG] Test testList(org.jclouds.packet.features.ProjectApiLiveTest) succeeded: 771ms
Test suite progress: tests succeeded: 6, failed: 0, skipped: 0.
Starting test testListOnePage(org.jclouds.packet.features.ProjectApiLiveTest)
[TestNG] Test testListOnePage(org.jclouds.packet.features.ProjectApiLiveTest) succeeded: 785ms
Test suite progress: tests succeeded: 7, failed: 0, skipped: 0.
Starting test testCreate(org.jclouds.packet.features.SshKeyApiLiveTest)
[TestNG] Test testCreate(org.jclouds.packet.features.SshKeyApiLiveTest) succeeded: 1235ms
Test suite progress: tests succeeded: 8, failed: 0, skipped: 0.
Starting test testGet(org.jclouds.packet.features.SshKeyApiLiveTest)
[TestNG] Test testGet(org.jclouds.packet.features.SshKeyApiLiveTest) succeeded: 1084ms
Test suite progress: tests succeeded: 9, failed: 0, skipped: 0.
Starting test testList(org.jclouds.packet.features.SshKeyApiLiveTest)
[TestNG] Test testList(org.jclouds.packet.features.SshKeyApiLiveTest) succeeded: 983ms
Test suite progress: tests succeeded: 10, failed: 0, skipped: 0.
Starting test testListOnePage(org.jclouds.packet.features.SshKeyApiLiveTest)
[TestNG] Test testListOnePage(org.jclouds.packet.features.SshKeyApiLiveTest) succeeded: 693ms
Test suite progress: tests succeeded: 11, failed: 0, skipped: 0.
Starting test testDelete(org.jclouds.packet.features.SshKeyApiLiveTest)
[TestNG] Test testDelete(org.jclouds.packet.features.SshKeyApiLiveTest) succeeded: 933ms
Test suite progress: tests succeeded: 12, failed: 0, skipped: 0.
[TestNG] Test testList(org.jclouds.packet.features.PlanApiLiveTest) succeeded: 7757ms
Test suite progress: tests succeeded: 13, failed: 0, skipped: 0.
Starting test testListOnePage(org.jclouds.packet.features.PlanApiLiveTest)
[TestNG] Test testCompareSizes(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest) succeeded: 11172ms
Test suite progress: tests succeeded: 14, failed: 0, skipped: 0.
Starting test testFromTemplate(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest)
[TestNG] Test testFromTemplate(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest) succeeded: 3ms
Test suite progress: tests succeeded: 15, failed: 0, skipped: 0.
Starting test testGetAssignableLocations(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest)
[TestNG] Test testGetAssignableLocations(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 16, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanUseImageId(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest)
Jan 29, 2017 4:30:51 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest doCompareSizes
INFO: smallest {id=baremetal_0, providerId=baremetal_0, name=Type 0, processors=[{cores=1.0, speed=1.0}], ram=8192, volumes=[{id=SSD, type=LOCAL, size=80.0, bootDevice=true, durable=false}], hypervisor=none, supportsImage=ALWAYS_TRUE}
Jan 29, 2017 4:30:51 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest doCompareSizes
INFO: fastest {id=baremetal_3, providerId=baremetal_3, name=Type 3, processors=[{cores=2.0, speed=2.0}], ram=131072, volumes=[{id=SSD, type=LOCAL, size=120.0, bootDevice=true, durable=false}, {id=NVME, type=LOCAL, size=1.6, bootDevice=true, durable=false}], hypervisor=none, supportsImage=ALWAYS_TRUE}
Jan 29, 2017 4:30:51 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest doCompareSizes
INFO: biggest {id=baremetal_2, providerId=baremetal_2, name=Type 2, processors=[{cores=2.0, speed=2.0}], ram=262144, volumes=[{id=SSD, type=LOCAL, size=480.0, bootDevice=true, durable=false}], hypervisor=none, supportsImage=ALWAYS_TRUE}
[TestNG] Test testCompareSizes(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 11174ms
Test suite progress: tests succeeded: 17, failed: 0, skipped: 0.
Starting test testCorrectExceptionRunningNodesNotFound(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testCorrectExceptionRunningNodesNotFound(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 1275ms
Test suite progress: tests succeeded: 18, failed: 0, skipped: 0.
Starting test testCreateAndRunAService(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testListOnePage(org.jclouds.packet.features.PlanApiLiveTest) succeeded: 4287ms
Test suite progress: tests succeeded: 19, failed: 0, skipped: 0.
[TestNG] Test testTemplateBuilderCanUseImageId(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest) succeeded: 6657ms
Test suite progress: tests succeeded: 20, failed: 0, skipped: 0.
Starting test testTemplateBuilderWithImageIdSpecified(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderWithImageIdSpecified(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest) succeeded: 12717ms
Test suite progress: tests succeeded: 21, failed: 0, skipped: 0.
Starting test testTemplateBuilderWithLoginUserSpecified(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderWithLoginUserSpecified(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest) succeeded: 9833ms
Test suite progress: tests succeeded: 22, failed: 0, skipped: 0.
Starting test testDefaultTemplateBuilder(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest)
[TestNG] Test testDefaultTemplateBuilder(org.jclouds.packet.compute.PacketTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 23, failed: 0, skipped: 0.
[TestNG] Test testCreate(org.jclouds.packet.features.DeviceApiLiveTest) succeeded: 225957ms
Test suite progress: tests succeeded: 24, failed: 0, skipped: 0.
Starting test testList(org.jclouds.packet.features.DeviceApiLiveTest)
[TestNG] Test testList(org.jclouds.packet.features.DeviceApiLiveTest) succeeded: 1408ms
Test suite progress: tests succeeded: 25, failed: 0, skipped: 0.
Starting test testListOnePage(org.jclouds.packet.features.DeviceApiLiveTest)
[TestNG] Test testListOnePage(org.jclouds.packet.features.DeviceApiLiveTest) succeeded: 1376ms
Test suite progress: tests succeeded: 26, failed: 0, skipped: 0.
Starting test testReboot(org.jclouds.packet.features.DeviceApiLiveTest)
Jan 29, 2017 4:34:39 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest createAndRunAServiceInGroup
INFO: << available node(262f7f24-4601-4adf-9f11-abeb178d7e3a) os({family=ubuntu, name=Ubuntu 16.04 LTS, version=16.04, description=Ubuntu 16.04 LTS, is64Bit=true}) in 226s
[TestNG] Test testReboot(org.jclouds.packet.features.DeviceApiLiveTest) succeeded: 27677ms
Test suite progress: tests succeeded: 27, failed: 0, skipped: 0.
Starting test testPowerOff(org.jclouds.packet.features.DeviceApiLiveTest)
[TestNG] Test testPowerOff(org.jclouds.packet.features.DeviceApiLiveTest) succeeded: 12851ms
Test suite progress: tests succeeded: 28, failed: 0, skipped: 0.
Starting test testPowerOn(org.jclouds.packet.features.DeviceApiLiveTest)
[TestNG] Test testPowerOn(org.jclouds.packet.features.DeviceApiLiveTest) succeeded: 13193ms
Test suite progress: tests succeeded: 29, failed: 0, skipped: 0.
Starting test testDelete(org.jclouds.packet.features.DeviceApiLiveTest)
[TestNG] Test testDelete(org.jclouds.packet.features.DeviceApiLiveTest) succeeded: 2730ms
Test suite progress: tests succeeded: 30, failed: 0, skipped: 0.
Jan 29, 2017 4:36:14 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest createAndRunAServiceInGroup
INFO: << configured node(262f7f24-4601-4adf-9f11-abeb178d7e3a) with openjdk full version "9-internal+0-2016-04-14-195246.buildd.src" and jetty jetty-8.1.8.v20121106 in 82s
Jan 29, 2017 4:36:33 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest trackAvailabilityOfProcessOnNode
INFO: << start jetty on node(262f7f24-4601-4adf-9f11-abeb178d7e3a)[147.75.202.15:8080] [backgroundProcessMilliseconds=6854, socketOpenMilliseconds=12777]
Jan 29, 2017 4:36:48 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest trackAvailabilityOfProcessOnNode
INFO: << start jetty on node(262f7f24-4601-4adf-9f11-abeb178d7e3a)[147.75.202.15:8080] [backgroundProcessMilliseconds=6778, socketOpenMilliseconds=2004]
[TestNG] Test testCreateAndRunAService(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 360072ms
Test suite progress: tests succeeded: 31, failed: 0, skipped: 0.
Starting test testGet(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testGet(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 231677ms
Test suite progress: tests succeeded: 32, failed: 0, skipped: 0.
Starting test testGetAssignableLocations(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
Jan 29, 2017 4:40:45 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest testGetAssignableLocations
WARNING: location {scope=REGION, id=sjc1, description=Sunnyvale, CA, parent=packet}
Jan 29, 2017 4:40:45 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest testGetAssignableLocations
WARNING: location {scope=REGION, id=ewr1, description=Parsippany, NJ, parent=packet}
Jan 29, 2017 4:40:45 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest testGetAssignableLocations
WARNING: location {scope=REGION, id=ams1, description=Amsterdam, NL, parent=packet}
Jan 29, 2017 4:40:45 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest testGetAssignableLocations
WARNING: location {scope=REGION, id=nrt1, description=Tokyo, JP, parent=packet}
[TestNG] Test testGetAssignableLocations(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 991ms
Test suite progress: tests succeeded: 33, failed: 0, skipped: 0.
Starting test testImageById(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testImageById(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 4866ms
Test suite progress: tests succeeded: 34, failed: 0, skipped: 0.
Starting test testImagesCache(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testImagesCache(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 35, failed: 0, skipped: 0.
Starting test testListImages(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testListImages(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 36, failed: 0, skipped: 0.
Starting test testListSizes(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testListSizes(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 37, failed: 0, skipped: 0.
Starting test testWeCanCancelTasks(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testWeCanCancelTasks(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 253763ms
Test suite progress: tests succeeded: 38, failed: 0, skipped: 0.
Starting test testAScriptExecutionAfterBootWithBasicTemplate(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
<< problem applying options to node(2999eb53-b882-4e33-8605-79a266ccb69d):
org.jclouds.rest.AuthorizationException: (root:pw[5d907853a9617cfd55fb62eae803595b]@147.75.202.15:22) (root:pw[5d907853a9617cfd55fb62eae803595b]@147.75.202.15:22) error acquiring {hostAndPort=147.75.202.15:22, loginUser=root, ssh=null, connectTimeout=60000, sessionTimeout=60000} (not retryable): Exhausted available authentication methods
	at org.jclouds.sshj.SshjSshClient.propagate(SshjSshClient.java:394)
	at org.jclouds.sshj.SshjSshClient.acquire(SshjSshClient.java:215)
	at org.jclouds.sshj.SshjSshClient.connect(SshjSshClient.java:224)
	at org.jclouds.compute.callables.RunScriptOnNodeUsingSsh.call(RunScriptOnNodeUsingSsh.java:74)
	at org.jclouds.compute.strategy.RunScriptOnNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(RunScriptOnNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:63)
	at org.jclouds.compute.strategy.RunScriptOnNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(RunScriptOnNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:38)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
Caused by: net.schmizz.sshj.userauth.UserAuthException: Exhausted available authentication methods
	at net.schmizz.sshj.SSHClient.auth(SSHClient.java:217)
	at net.schmizz.sshj.SSHClient.auth(SSHClient.java:193)
	at net.schmizz.sshj.SSHClient.authPassword(SSHClient.java:278)
	at net.schmizz.sshj.SSHClient.authPassword(SSHClient.java:248)
	at net.schmizz.sshj.SSHClient.authPassword(SSHClient.java:232)
	at org.jclouds.sshj.SSHClientConnection.create(SSHClientConnection.java:165)
	at org.jclouds.sshj.SSHClientConnection.create(SSHClientConnection.java:49)
	at org.jclouds.sshj.SshjSshClient.acquire(SshjSshClient.java:195)
	... 8 more
[TestNG] Test testAScriptExecutionAfterBootWithBasicTemplate(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 361377ms
Test suite progress: tests succeeded: 39, failed: 0, skipped: 0.
Starting test testCorrectAuthException(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testCorrectAuthException(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 390ms
Test suite progress: tests succeeded: 40, failed: 0, skipped: 0.
Starting test testOptionToNotBlock(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testOptionToNotBlock(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 41, failed: 0, skipped: 0.
Starting test testConcurrentUseOfComputeServiceToCreateNodes(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
Jan 29, 2017 4:54:59 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest$1 call
INFO: Started node 8725fc4b-df99-4fd7-a468-704fb45475b1
Jan 29, 2017 4:55:01 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest$1 call
INFO: Started node 70010b00-c682-4c37-9a31-0cddfba173b3
[TestNG] Test testConcurrentUseOfComputeServiceToCreateNodes(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 243755ms
Test suite progress: tests succeeded: 42, failed: 0, skipped: 0.
Starting test testReboot(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testReboot(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 272363ms
Test suite progress: tests succeeded: 43, failed: 0, skipped: 0.
Starting test testTemplateMatch(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testTemplateMatch(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 5860ms
Test suite progress: tests succeeded: 44, failed: 0, skipped: 0.
Starting test testSuspendResume(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testSuspendResume(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 255208ms
Test suite progress: tests succeeded: 45, failed: 0, skipped: 0.
Starting test testGetNodesWithDetails(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testGetNodesWithDetails(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 1542ms
Test suite progress: tests succeeded: 46, failed: 0, skipped: 0.
Starting test testListNodes(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testListNodes(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 1580ms
Test suite progress: tests succeeded: 47, failed: 0, skipped: 0.
Starting test testListNodesByIds(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testListNodesByIds(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 1440ms
Test suite progress: tests succeeded: 48, failed: 0, skipped: 0.
Starting test testDestroyNodes(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testDestroyNodes(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 107569ms
Test suite progress: tests succeeded: 49, failed: 0, skipped: 0.
Starting test testCreateTwoNodesWithOneSpecifiedName(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testCreateTwoNodesWithOneSpecifiedName(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 238360ms
Test suite progress: tests succeeded: 50, failed: 0, skipped: 0.
Starting test testCreateTwoNodesWithRunScript(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testCreateTwoNodesWithRunScript(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 345251ms
Test suite progress: tests succeeded: 51, failed: 0, skipped: 0.
Starting test testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
Jan 29, 2017 5:15:39 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired
INFO: creating another node based on existing nodes' location: {scope=REGION, id=sjc1, description=Sunnyvale, CA, parent=packet}
[TestNG] Test testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 319247ms
Test suite progress: tests succeeded: 52, failed: 0, skipped: 0.
Starting test testCredentialsCache(org.jclouds.packet.compute.PacketComputeServiceLiveTest)
[TestNG] Test testCredentialsCache(org.jclouds.packet.compute.PacketComputeServiceLiveTest) succeeded: 35ms
Test suite progress: tests succeeded: 53, failed: 0, skipped: 0.
Tests run: 53, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 3,025.14 sec - in TestSuite

Results :

Tests run: 53, Failures: 0, Errors: 0, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 50:52 min
[INFO] Finished at: 2017-01-29T17:21:07+01:00
[INFO] Final Memory: 51M/570M
[INFO] ------------------------------------------------------------------------
```
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds-labs/pull/354

-- Commit Summary --

  * Add Packet ComputeAdapter
  * fix for liveTests

-- File Changes --

    M packet/src/main/java/org/jclouds/packet/PacketApiMetadata.java (9)
    A packet/src/main/java/org/jclouds/packet/compute/PacketComputeServiceAdapter.java (190)
    A packet/src/main/java/org/jclouds/packet/compute/config/PacketComputeServiceContextModule.java (151)
    M packet/src/main/java/org/jclouds/packet/compute/functions/DeviceStateToStatus.java (9)
    M packet/src/main/java/org/jclouds/packet/compute/functions/DeviceToNodeMetadata.java (2)
    A packet/src/main/java/org/jclouds/packet/compute/options/PacketTemplateOptions.java (158)
    A packet/src/main/java/org/jclouds/packet/compute/strategy/CreateSshKeysThenCreateNodes.java (217)
    M packet/src/main/java/org/jclouds/packet/domain/Device.java (2)
    M packet/src/main/java/org/jclouds/packet/features/DeviceApi.java (35)
    A packet/src/test/java/org/jclouds/packet/compute/PacketComputeProviderMetadataTest.java (30)
    A packet/src/test/java/org/jclouds/packet/compute/PacketComputeServiceLiveTest.java (161)
    A packet/src/test/java/org/jclouds/packet/compute/PacketTemplateBuilderLiveTest.java (55)
    M packet/src/test/java/org/jclouds/packet/compute/internal/BasePacketApiLiveTest.java (8)
    M packet/src/test/java/org/jclouds/packet/features/DeviceApiLiveTest.java (15)
    M packet/src/test/java/org/jclouds/packet/features/DeviceApiMockTest.java (30)
    M packet/src/test/java/org/jclouds/packet/features/FacilityApiLiveTest.java (4)
    D packet/src/test/resources/rescue.json (3)

-- Patch Links --

https://github.com/jclouds/jclouds-labs/pull/354.patch
https://github.com/jclouds/jclouds-labs/pull/354.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Ignasi Barrera <no...@github.com>.
Sure! Thanks!

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354#issuecomment-276378302

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Andrea Turli <no...@github.com>.
@andreaturli pushed 1 commit.

d55fffe  improve comments on the adapter


-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354/files/1af6d96ce4f41dffe1a66fee06795ae176c9b2f4..d55fffe18221be7a559e513becc07ad0637d2f7b

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Andrea Turli <no...@github.com>.
@andreaturli pushed 1 commit.

50ff3c8  address review comments


-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354/files/0de7a600118cd3b9970a98efd6c62658f85e6970..50ff3c871b43ced16f848fc0dacc9cf8a64ab06c

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Ignasi Barrera <no...@github.com>.
nacx commented on this pull request.



> +      }
+   }
+
+   @Override
+   public void testOptionToNotBlock() throws Exception {
+      // Packet ComputeService implementation has to block until the node
+      // is provisioned, to be able to return it.
+   }
+
+   @Override
+   protected void checkUserMetadataContains(NodeMetadata node, ImmutableMap<String, String> userMetadata) {
+      // The Packet API does not return the user data
+   }
+
+   @Override
+   public void testAScriptExecutionAfterBootWithBasicTemplate() throws Exception {

I'd rather apply that fix directly in the base class, as it seems safe?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Ignasi Barrera <no...@github.com>.
LGTM! Before merging, mind adding a comment in the adapter, when creating the server to indicate that the server will get injected all keys configured in the account?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354#issuecomment-276331200

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Andrea Turli <no...@github.com>.
andreaturli commented on this pull request.



> +      }
+   }
+
+   @Override
+   public void testOptionToNotBlock() throws Exception {
+      // Packet ComputeService implementation has to block until the node
+      // is provisioned, to be able to return it.
+   }
+
+   @Override
+   protected void checkUserMetadataContains(NodeMetadata node, ImmutableMap<String, String> userMetadata) {
+      // The Packet API does not return the user data
+   }
+
+   @Override
+   public void testAScriptExecutionAfterBootWithBasicTemplate() throws Exception {

I will open a PR for that against jclouds/jclouds, and I will remove the overridden test after it get accepted. is it ok?


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Andrea Turli <no...@github.com>.
@andreaturli pushed 1 commit.

8b94bee  remove useless test


-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354/files/d55fffe18221be7a559e513becc07ad0637d2f7b..8b94bee913ee5f14a8417b433a9c85ac9205afcc

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Andrea Turli <no...@github.com>.
merged at [master](http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/99697600)

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354#issuecomment-276385182

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Andrea Turli <no...@github.com>.
Closed #354.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354#event-943174558

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Andrea Turli <no...@github.com>.
@andreaturli pushed 1 commit.

1af6d96  remove overriden live test as it is now pushed up to jclouds/jclouds


-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354/files/bd358d7a11a3deca349e9def13eac20d3acf5f61..1af6d96ce4f41dffe1a66fee06795ae176c9b2f4

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Andrea Turli <no...@github.com>.
good question, @nacx!

From what I got, Packet has 2 types of SSH keys: Project and Personal Keys.
Any new servers you deploy to projects you are a collaborator on will have your project and personal SSH keys, if defined.

Now if no SSH keys are defined in your account, jclouds will [generate on].(https://github.com/andreaturli/jclouds-labs/blob/bd358d7a11a3deca349e9def13eac20d3acf5f61/packet/src/main/java/org/jclouds/packet/compute/strategy/CreateSshKeysThenCreateNodes.java#L99-L99) and it will add it to the device by default.

That works fine, probably `listNodes` doesn't work correctly as creds are not configured in [DeviceToNodemetadata](https://github.com/andreaturli/jclouds-labs/blob/0de7a600118cd3b9970a98efd6c62658f85e6970/packet/src/main/java/org/jclouds/packet/compute/functions/DeviceToNodeMetadata.java) function: the `Device` object references all the ssh key allowed to access the device, so in principle we can add as `credentials` one of them. 

Problem is that jclouds is deleting that key in the callback configured at [CreateSshKeysThenCreateNodes](https://github.com/andreaturli/jclouds-labs/blob/bd358d7a11a3deca349e9def13eac20d3acf5f61/packet/src/main/java/org/jclouds/packet/compute/strategy/CreateSshKeysThenCreateNodes.java#L197-L197)

What do you think @nacx ?



-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354#issuecomment-276321217

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Andrea Turli <no...@github.com>.
added the comment to adapter? good to merge?


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354#issuecomment-276357302

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Ignasi Barrera <no...@github.com>.
nacx requested changes on this pull request.

Looks pretty good! Mostly comments about server authentication.

> + * defines the connection between the {@link org.jclouds.packet.PacketApi} implementation and
+ * the jclouds {@link org.jclouds.compute.ComputeService}
+ */
+@Singleton
+public class PacketComputeServiceAdapter implements ComputeServiceAdapter<Device, Plan, OperatingSystem, Facility> {
+
+   @Resource
+   @Named(ComputeServiceConstants.COMPUTE_LOGGER)
+   protected Logger logger = Logger.NULL;
+
+   private final PacketApi api;
+   private final Predicate<String> nodeRunningPredicate;
+   private final String projectId;
+
+   @Inject
+   public PacketComputeServiceAdapter(PacketApi api, @Provider final Supplier<Credentials> creds, @Named(TIMEOUT_NODE_RUNNING) Predicate<String> nodeRunningPredicate) {

Remove the public modifier and the redundant null checks.

> +   private final PacketApi api;
+   private final Predicate<String> nodeRunningPredicate;
+   private final String projectId;
+
+   @Inject
+   public PacketComputeServiceAdapter(PacketApi api, @Provider final Supplier<Credentials> creds, @Named(TIMEOUT_NODE_RUNNING) Predicate<String> nodeRunningPredicate) {
+      this.api = checkNotNull(api, "api");
+      this.projectId = creds.get().identity;
+      this.nodeRunningPredicate = nodeRunningPredicate;
+   }
+
+   @Override
+   public NodeAndInitialCredentials<Device> createNodeWithGroupEncodedIntoName(String group, String name, Template template) {
+
+      PacketTemplateOptions templateOptions = template.getOptions().as(PacketTemplateOptions.class);
+      checkNotNull(templateOptions.getLoginPrivateKey(), "login privateKey must not be null");

Can't packet use a password based login?

> +      String operatingSystem = template.getImage().getId();
+
+      Device device = api.deviceApi(projectId).create(
+              Device.CreateDevice.builder()
+                      .hostname(name)
+                      .plan(plan)
+                      .billingCycle(billingCycle.value())
+                      .facility(facility)
+                      .features(features)
+                      .operatingSystem(operatingSystem)
+                      .locked(locked)
+                      .userdata(userdata)
+                      .tags(tags)
+                      .build()
+              );
+      nodeRunningPredicate.apply(device.id());

Do we need to actually wait to have a complete Device object? If not, remove this since the base class already performs the wait; we should not actively wait here (otherwise we couldn't honor the options to not block, etc).

> +                      .features(features)
+                      .operatingSystem(operatingSystem)
+                      .locked(locked)
+                      .userdata(userdata)
+                      .tags(tags)
+                      .build()
+              );
+      nodeRunningPredicate.apply(device.id());
+      device = api.deviceApi(projectId).get(device.id());
+
+      LoginCredentials defaultCredentials = LoginCredentials.builder()
+              .user("root")
+              .privateKey(templateOptions.getLoginPrivateKey())
+              .build();
+
+      return new NodeAndInitialCredentials<Device>(device, device.id(), defaultCredentials);

You'd better pass `null` here to let jclouds determine the credentials based on the options provided by the user and the default credentials configured per context or per image.

> +            PacketApi api, SshKeyPairGenerator keyGenerator) {
+        super(addNodeWithGroupStrategy, listNodesStrategy, namingConvention, userExecutor,
+                customizeNodeAndAddToGoodMapOrPutExceptionIntoBadMapFactory);
+        this.api = api;
+        this.keyGenerator = keyGenerator;
+    }
+
+    @Override
+    public Map<?, ListenableFuture<Void>> execute(String group, int count, Template template,
+                                                  Set<NodeMetadata> goodNodes, Map<NodeMetadata, Exception> badNodes,
+                                                  Multimap<NodeMetadata, CustomizationResponse> customizationResponses) {
+
+        PacketTemplateOptions options = template.getOptions().as(PacketTemplateOptions.class);
+        Set<String> generatedSshKeyIds = Sets.newHashSet();
+
+        // If no key has been configured and the auto-create option is set, then generate a key pair

There seems not to be such an auto-create option, so update the comment.

> +   private final PacketApi api;
+   private final Predicate<String> nodeRunningPredicate;
+   private final String projectId;
+
+   @Inject
+   public PacketComputeServiceAdapter(PacketApi api, @Provider final Supplier<Credentials> creds, @Named(TIMEOUT_NODE_RUNNING) Predicate<String> nodeRunningPredicate) {
+      this.api = checkNotNull(api, "api");
+      this.projectId = creds.get().identity;
+      this.nodeRunningPredicate = nodeRunningPredicate;
+   }
+
+   @Override
+   public NodeAndInitialCredentials<Device> createNodeWithGroupEncodedIntoName(String group, String name, Template template) {
+
+      PacketTemplateOptions templateOptions = template.getOptions().as(PacketTemplateOptions.class);
+      checkNotNull(templateOptions.getLoginPrivateKey(), "login privateKey must not be null");

Also, we should be reading the "public" key and configuring the device with it. The private key should remain in the client.

> +@Test(groups = "live", singleThreaded = true, testName = "PacketComputeServiceLiveTest")
+public class PacketComputeServiceLiveTest extends BaseComputeServiceLiveTest {
+
+   public PacketComputeServiceLiveTest() {
+      provider = "packet";
+   }
+
+   @Override
+   protected Module getSshModule() {
+      return new SshjSshClientModule();
+   }
+
+   @Override
+   protected Template buildTemplate(TemplateBuilder templateBuilder) {
+      return super.buildTemplate(templateBuilder);
+   }

No need to override this.

> +      }
+   }
+
+   @Override
+   public void testOptionToNotBlock() throws Exception {
+      // Packet ComputeService implementation has to block until the node
+      // is provisioned, to be able to return it.
+   }
+
+   @Override
+   protected void checkUserMetadataContains(NodeMetadata node, ImmutableMap<String, String> userMetadata) {
+      // The Packet API does not return the user data
+   }
+
+   @Override
+   public void testAScriptExecutionAfterBootWithBasicTemplate() throws Exception {

Why do we need to override this?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354#pullrequestreview-19039151

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Andrea Turli <no...@github.com>.
latest push has still, unit and live tests fine
```
Results :

Tests run: 53, Failures: 0, Errors: 0, Skipped: 0
```
thanks @nacx for the suggestion about not passing creds and for removing waitOn device, easier impl

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354#issuecomment-276169177

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Andrea Turli <no...@github.com>.
andreaturli commented on this pull request.



> +      }
+   }
+
+   @Override
+   public void testOptionToNotBlock() throws Exception {
+      // Packet ComputeService implementation has to block until the node
+      // is provisioned, to be able to return it.
+   }
+
+   @Override
+   protected void checkUserMetadataContains(NodeMetadata node, ImmutableMap<String, String> userMetadata) {
+      // The Packet API does not return the user data
+   }
+
+   @Override
+   public void testAScriptExecutionAfterBootWithBasicTemplate() throws Exception {

I've seen an inconsistency across images, in particular
"hostname" command on `centOS 7` returns the short name while on `Ubuntu 16` it returns the fqdn. Using "hostname -s" seems to be safer. Not sure it is a problem of this provider or something useful for at jcloud core level

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Ignasi Barrera <no...@github.com>.
Cool @andreaturli! There is a thing I don't get. How are initial credentials configured? I mean, there are no "default credentials" for the images (the image transformation function does not set them), and there are no properties to globally configure the default credentials. In that scenario, jclouds assumes a password based credentials with `root` as the user and no password. Is that a valid login for a just created server in Packet?

I ask this because I don't see anywhere in the compute service strategies where the server is configured with the password or public key. This means that if it is a password based login, jclouds will trust that the server already has the password, or if it is a key based login, jclouds will try to upload it via ssh (using the node default password, which we don't have). What am I missing?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354#issuecomment-276194276

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Ignasi Barrera <no...@github.com>.
nacx approved this pull request.





-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354#pullrequestreview-19285733

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Andrea Turli <no...@github.com>.
squashing and merging

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354#issuecomment-276384651

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Ignasi Barrera <no...@github.com>.
nacx commented on this pull request.



> @@ -59,6 +48,14 @@ protected Module getSshModule() {
       return new SshjSshClientModule();
    }
 
+   public void testMyListNodes() throws Exception {
+      for (ComputeMetadata node : client.listNodes()) {
+         assert node.getProviderId() != null : node;
+         assert node.getLocation() != null : node;
+         assertEquals(node.getType(), ComputeType.NODE);
+      }
+   }

Why this test?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354#pullrequestreview-19287275

Re: [jclouds/jclouds-labs] Feature/packet 5 (#354)

Posted by Andrea Turli <no...@github.com>.
andreaturli commented on this pull request.



> @@ -59,6 +48,14 @@ protected Module getSshModule() {
       return new SshjSshClientModule();
    }
 
+   public void testMyListNodes() throws Exception {
+      for (ComputeMetadata node : client.listNodes()) {
+         assert node.getProviderId() != null : node;
+         assert node.getLocation() != null : node;
+         assertEquals(node.getType(), ComputeType.NODE);
+      }
+   }

sorry, removing it

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/354