NAME

Net::Silverpeak::Orchestrator - Silverpeak Orchestrator REST API client library

VERSION

version 0.001002

SYNOPSIS

use strict;
use warnings;
use Net::Silverpeak::Orchestrator;

my $orchestrator = Net::Silverpeak::Orchestrator->new(
    server      => 'https://orchestrator.example.com',
    user        => 'username',
    passwd      => '$password',
    clientattrs => { timeout => 30 },
);

$orchestrator->login;

# OR

$orchestrator = Net::Silverpeak::Orchestrator->new(
    server      => 'https://orchestrator.example.com',
    api_key     => '$api-key',
    clientattrs => { timeout => 30 },
);

DESCRIPTION

This module is a client library for the Silverpeak Orchestrator REST API. Currently it is developed and tested against version 9.0.2.

METHODS

login

Logs into the Silverpeak Orchestrator. Only required when using username and password, not for api key.

logout

Logs out of the Silverpeak Orchestrator. Only possible when using username and password, not for api key.

get_version

Returns the Silverpeak Orchestrator version.

list_templategroups

Returns an arrayref of template groups.

get_templategroup

Returns a template group by name.

update_templategroup

Takes a template group name and a hashref of template configs.

Returns true on success.

Throws an exception on error.

list_appliances

Returns an arrayref of appliances.

get_appliance

Returns an appliance by id.

list_template_applianceassociations

Returns a hashref of template to appliances associations.

list_applianceids_by_templategroupname

Returns an arrayref of appliance IDs a templategroup is assigned to.

KNOWN SILVERPEAK ORCHESTRATOR BUGS

http 500 response on api key authentication

Orchestrator versions before version 9.0.4 respond with a http 500 error on every request using an api key that has no expriation date set. The only workaround is to set an expiration date for it.

AUTHOR

Alexander Hartmaier <abraxxa@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2020 by Alexander Hartmaier.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.