Client
Die API bezieht sich auf die Version 1 der DigitalOcean-API
Die für das Erstellen des Client benötigten Zugangsdaten
sind über die URI https://cloud.digitalocean.com/api_access
abrufbar.
$client = new \Alvine\Infrastructure\Digitalocean\Client($clientID, $apiKey);
$droplets = $client->getDroplets();
foreach($droplets AS $droplet) {
$client->destroyDroplet($droplet->getDropletID());
}
$sizes = $client->getSizes();
$useSize = null;
foreach($sizes AS $size) {
if($size->getMemory()>512) continue;
$useSize = $size;
break;
}
$keys = $client->getSSHKeys();
$useKey = null;
foreach($keys AS $key) {
if($key->getName()!=='myKey') continue;
$useKey = $key;
break;
}
$keyList = new \Alvine\Types\Collection();
$keyList->append($useKey);
$regions = $client->getRegions();
$useRegion = null;
foreach($regions AS $region) {
if($region->getSlug()!=='ams1') continue;
$useRegion = $region;
break;
}
if($useRegion===null) {
echo 'no region';
die(-1);
}
$useImage = $client->getImage(3668014);
if($useImage===null) {
echo 'no image';
die(-1);
}
$privateNetworking = false;
$enableBackup = false;
$client->createDroplet('myfirstdroplet', $useSize, $useImage, $useRegion, $keyList, $privateNetworking, $enableBackup);
$client->renameDroplet($dropletID,'newName');
Methods summary
public
|
#
__construct( string $clientID, string $apiKey )
Neuer Client
Die für den Client benötigten Informationen
sind auf der Webseite https://cloud.digitalocean.com/api_access
abrufbar.
Parameters
- $clientID
- Client-ID
- $apiKey
- API-Schlüssel
|
public
Alvine\Infrastructure\Digitalocean\Droplet
|
#
getDroplet( integer $id )
Detailinformationen
Detailinformationen zu einem Droplet abfragen
Parameters
Returns
Throws
StatusException Fehlende Rückmaledung
|
public
Alvine\Types\Collection
|
#
getDroplets( )
Erstellte Droplets
Liste aller erstellten Droplets abfragen
Returns
Alvine\Types\Collection Collection-Objekt mit Droplet-Daten
Throws
Alvine\Net\ConnectionFailedException Verbindung nicht möglich
|
public
Alvine\Infrastructure\Digitalocean\Droplet
|
|
protected
Alvine\Infrastructure\Digitalocean\Client
|
#
doDropletActions( integer $id, string $action, array|null $parameter = null )
Aktionen mit Droplet ausführen
Aktionen mit Droplet ausführen
Parameters
- $id
- ID des Droplet
- $action
- Aktionen (Teil der URL)
- $parameter
- Parameter
Returns
|
public
Alvine\Infrastructure\Digitalocean\Client
|
#
rebootDroplet( integer $id )
Startet das Droplet neu
Parameters
Returns
Link
Throw
\Alvine\Infrastructure\Digitalocean\ResponseException Server meldet ein Problem
|
public
Alvine\Infrastructure\Digitalocean\Client
|
#
doDropletPowerCycle( integer $id )
Schaltet das Droplet aus und wieder an
Schaltet das Droplet aus und wieder an
Parameters
Returns
Link
Throw
\Alvine\Infrastructure\Digitalocean\ResponseException Server meldet ein Problem
|
public
Alvine\Infrastructure\Digitalocean\Client
|
#
shutdownDroplet( integer $id )
Schaltet das Droplet aus
Parameters
Returns
Link
Throw
\Alvine\Infrastructure\Digitalocean\ResponseException Server meldet ein Problem
|
public
Alvine\Infrastructure\Digitalocean\Client
|
#
switchDropletPowerOff( integer $id )
Schaltet das Droplet aus
Parameters
Returns
Link
Throw
\Alvine\Infrastructure\Digitalocean\ResponseException Server meldet ein Problem
|
public
Alvine\Infrastructure\Digitalocean\Client
|
#
switchDropletPowerOn( integer $id )
Schaltet das Droplet aus
Parameters
Returns
Link
Throw
\Alvine\Infrastructure\Digitalocean\ResponseException Server meldet ein Problem
|
public
Alvine\Infrastructure\Digitalocean\Client
|
#
destroyDroplet( integer $id )
Löscht das Droplet aus dem Account
Löscht das Droplet aus dem Account
Parameters
Returns
Link
Throw
\Alvine\Infrastructure\Digitalocean\ResponseException Server meldet ein Problem
|
public
Alvine\Infrastructure\Digitalocean\Client
|
#
renameDroplet( integer $id, string $newName )
Droplet umbenennen
Parameters
- $id
- DropletID
- $newName
- Neuer Name
Returns
Link
Throw
\Alvine\Infrastructure\Digitalocean\ResponseException Server meldet ein Problem
|
public
Alvine\Infrastructure\Digitalocean\Client
|
#
rebuildDroplet( integer $id, Alvine\Infrastructure\Digitalocean\Image $image )
Droplet umbenennen
Parameters
- $id
- DropletID
- $image
- Image
Returns
Link
Throw
\Alvine\Infrastructure\Digitalocean\ResponseException Server meldet ein Problem
|
public
Alvine\Infrastructure\Digitalocean\Client
|
#
restoreDroplet( integer $id, Alvine\Infrastructure\Digitalocean\Image $image )
Droplet wiederherstellen
Mit dieser Methode kann ein Droplet von einem Image
erstellt werden.
Parameters
- $id
- DropletID
- $image
- Image
Returns
Link
Throw
\Alvine\Infrastructure\Digitalocean\ResponseException Server meldet ein Problem
|
public
Alvine\Infrastructure\Digitalocean\Client
|
#
takeDropletSnapshot( integer $id, integer $name )
Snapshot erstellen
Mit dieser Methode kann ein Droplet von einem Image
erstellt werden.
Parameters
Returns
Link
Throw
\Alvine\Infrastructure\Digitalocean\ResponseException Server meldet ein Problem
|
public
Alvine\Infrastructure\Digitalocean\Client
|
#
resizeDroplet( integer $id, Alvine\Infrastructure\Digitalocean\Size $size )
Größe des Droplets ändern
Größe des Droplets ändern
Parameters
- $id
- DropletID
- $size
- Neue Größe des Droplets
Returns
Link
Throw
\Alvine\Infrastructure\Digitalocean\ResponseException Server meldet ein Problem
|
public
Alvine\Types\Collection
|
#
getRegions( )
Regionen
Liste aller verfügbarer Regionen abfragen
Returns
Alvine\Types\Collection Collection-Objekt mit Regionen-Daten
Throws
Alvine\Net\ConnectionFailedException Verbindung nicht möglich
|
public
Alvine\Infrastructure\Digitalocean\Image
|
#
getImage( integer $id )
Detailinformationen
Detailinformationen zu einem Image abfragen
Parameters
Returns
Throws
StatusException Fehlende Rückmaledung
|
public
Alvine\Types\Collection
|
#
getImages( )
Liste aller Images
Liste aller Images abfragen
Returns
Alvine\Types\Collection Collection-Objekt mit Image-Daten
Throws
Alvine\Net\ConnectionFailedException Verbindung nicht möglich
|
protected
Alvine\Infrastructure\Digitalocean\Client
|
#
doImageActions( integer $id, string $action, array|null $parameter = null )
Aktionen mit Image ausführen
Aktionen mit Image ausführen
Parameters
- $id
- ID des Image
- $action
- Aktionen (Teil der URL)
- $parameter
- Parameter
Returns
|
public
Alvine\Infrastructure\Digitalocean\Client
|
#
destroyImage( integer $id )
Löscht ein Image aus dem Account
Löscht ein Image aus dem Account
Parameters
Returns
Link
Throw
\Alvine\Infrastructure\Digitalocean\ResponseException Server meldet ein Problem
|
public
Alvine\Infrastructure\Digitalocean\Client
|
#
transferImage( integer $id, Alvine\Infrastructure\Digitalocean\Region $region )
Verschiebt ein Image in eine andere Region
Verschiebt ein Image in eine andere Region
Parameters
- $id
- Image
- $region
- Neue Region
Returns
Link
Throw
\Alvine\Infrastructure\Digitalocean\ResponseException Server meldet ein Problem
|
public
Alvine\Types\Collection
|
#
getSizes( )
Größen
Liste aller verfügbarer Größen abfragen
Returns
Alvine\Types\Collection Collection-Objekt mit Größen-Daten
Throws
Alvine\Net\ConnectionFailedException Verbindung nicht möglich
|
public
Alvine\Types\Collection
|
#
getSSHKeys( )
SSH-Schlüssel
Liste aller verfügbarer SSH-Schlüssel abfragen
Returns
Alvine\Types\Collection Collection-Objekt mit Schlüssel-Daten
Throws
Alvine\Net\ConnectionFailedException Verbindung nicht möglich
|