Skip to content

Commit d32fdde

Browse files
committed
Enabled list keypairs by user id
1 parent 0002299 commit d32fdde

File tree

6 files changed

+28
-6
lines changed

6 files changed

+28
-6
lines changed

src/Compute/v2/Api.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -601,7 +601,7 @@ public function getKeypair(): array
601601
'path' => 'os-keypairs/{name}',
602602
'params' => [
603603
'name' => $this->isRequired($this->params->keypairName()),
604-
'userId' => $this->isRequired($this->params->userId())
604+
'userId' => $this->params->userId()
605605
],
606606
];
607607
}

src/Compute/v2/Models/Keypair.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ protected function getAliases(): array
6565
*/
6666
public function retrieve()
6767
{
68-
$response = $this->execute($this->api->getKeypair(), ['name' => (string) $this->name]);
68+
$response = $this->execute($this->api->getKeypair(), $this->getAttrs(['name', 'userId']));
6969
$this->populateFromResponse($response);
7070
}
7171

src/Compute/v2/Params.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -456,7 +456,7 @@ public function userId(): array
456456
return [
457457
'type' => self::STRING_TYPE,
458458
'sentAs' => 'user_id',
459-
'location' => self::URL
459+
'location' => self::QUERY
460460
];
461461
}
462462

src/OpenStack.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ private function getDefaultIdentityService(array $options): Service
6666

6767
$clientOptions = [
6868
'base_uri' => Utils::normalizeUrl($options['authUrl']),
69-
'handler' => $stack
69+
'handler' => $stack,
7070
];
7171

7272
if (isset($options['requestOptions'])) {

tests/unit/Compute/v2/Fixtures/keypair-get.resp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Content-Type: application/json
55
"keypair": {
66
"fingerprint": "44:fe:29:6e:23:14:b9:53:5b:65:82:58:1c:fe:5a:c3",
77
"name": "keypair-test",
8-
"public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC1HTrHCbb9NawNLSV8N6tSa8i637+EC2dA+lsdHHfQlT54t+N0nHhJPlKWDLhc579j87vp6RDFriFJ/smsTnDnf64O12z0kBaJpJPH2zXrBkZFK6q2rmxydURzX/z0yLSCP77SFJ0fdXWH2hMsAusflGyryHGX20n+mZK6mDrxVzGxEz228dwQ5G7Az5OoZDWygH2pqPvKjkifRw0jwUKf3BbkP0QvANACOk26cv16mNFpFJfI1N3OC5lUsZQtKGR01ptJoWijYKccqhkAKuo902tg/qup58J5kflNm7I61sy1mJon6SGqNUSfoQagqtBH6vd/tU1jnlwZ03uUroAL",
8+
"public_key": "ssh-rsa AAAAAAABBBBBBBBBCCCCCCCCCCC foo@bar.com",
99
"user_id": "fake",
1010
"deleted": false,
1111
"created_at": "2014-05-07T12:06:13.681238",

tests/unit/Compute/v2/Models/KeypairTest.php

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,29 @@ public function test_it_retrieves()
5353
$this->assertEquals('44:fe:29:6e:23:14:b9:53:5b:65:82:58:1c:fe:5a:c3', $this->keypair->fingerprint);
5454
$this->assertEquals(self::KEYPAIR_NAME, $this->keypair->name);
5555
$this->assertEquals(
56-
'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC1HTrHCbb9NawNLSV8N6tSa8i637+EC2dA+lsdHHfQlT54t+N0nHhJPlKWDLhc579j87vp6RDFriFJ/smsTnDnf64O12z0kBaJpJPH2zXrBkZFK6q2rmxydURzX/z0yLSCP77SFJ0fdXWH2hMsAusflGyryHGX20n+mZK6mDrxVzGxEz228dwQ5G7Az5OoZDWygH2pqPvKjkifRw0jwUKf3BbkP0QvANACOk26cv16mNFpFJfI1N3OC5lUsZQtKGR01ptJoWijYKccqhkAKuo902tg/qup58J5kflNm7I61sy1mJon6SGqNUSfoQagqtBH6vd/tU1jnlwZ03uUroAL',
56+
'ssh-rsa AAAAAAABBBBBBBBBCCCCCCCCCCC foo@bar.com',
57+
$this->keypair->publicKey
58+
);
59+
$this->assertFalse($this->keypair->deleted);
60+
}
61+
62+
public function test_it_retrieves_by_user_id()
63+
{
64+
$this->client
65+
->request('GET', 'os-keypairs/' . self::KEYPAIR_NAME, ['headers' => [], 'query' => ['user_id' => 'fake']])
66+
->shouldBeCalled()
67+
->willReturn($this->getFixture('keypair-get'));
68+
69+
70+
$this->keypair->userId = 'fake';
71+
$this->keypair->retrieve();
72+
73+
$this->assertEquals('1', $this->keypair->id);
74+
$this->assertEquals('fake', $this->keypair->userId);
75+
$this->assertEquals('44:fe:29:6e:23:14:b9:53:5b:65:82:58:1c:fe:5a:c3', $this->keypair->fingerprint);
76+
$this->assertEquals(self::KEYPAIR_NAME, $this->keypair->name);
77+
$this->assertEquals(
78+
'ssh-rsa AAAAAAABBBBBBBBBCCCCCCCCCCC foo@bar.com',
5779
$this->keypair->publicKey
5880
);
5981
$this->assertFalse($this->keypair->deleted);

0 commit comments

Comments
 (0)