#!/usr/bin/perl use strict; use Data::Dumper; use SOAP::Lite; use UNIVERSAL 'isa'; my $user = "xxxx"; my $pass = "xxxx"; my $host = "xxxx"; $ENV{'PERL_LWP_SSL_VERIFY_HOSTNAME'} = 0; sub newF5 { my ($server, $user, $pass) = (@_); my $proxy_uri = sprintf("https://%s:443/iControl/iControlPortal.cgi", $server); my $soap = SOAP::Lite->proxy($proxy_uri); sub SOAP::Transport::HTTP::Client::get_basic_credentials { return $user => $pass; } return $soap; } sub getActivePartition { my ($soap) = (@_); my $soapResponse = $soap->uri("urn:iControl:Management/Partition")->get_active_partition(); #$self->checkResponse($soapResponse); my $partition = $soapResponse->result; return $partition; } my $connection = newF5($host, $user, $pass); print getActivePartition($connection)."\n"; #### package BigIP::F5; #use strict; use SOAP::Lite; use UNIVERSAL 'isa'; use Data::Dumper; $ENV{'PERL_LWP_SSL_VERIFY_HOSTNAME'} = 0; sub new { my ($server, $user, $pass) = (@_); my $proxy_uri = sprintf("https://%s:443/iControl/iControlPortal.cgi", $server); my $soap = SOAP::Lite->proxy($proxy_uri); sub SOAP::Transport::HTTP::Client::get_basic_credentials { return $user => $pass; } return $soap; } sub getActivePartition { my ($self, $soap) = (@_); my $soapResponse = $soap->uri("urn:iControl:Management/Partition")->get_active_partition(); #$self->checkResponse($soapResponse); my @partition = @{$soapResponse->result}; return @partition; } 1; #### #!/usr/bin/perl #use strict; use Data::Dumper; use lib "./"; use BigIP::F5; my $user = "xxxx"; my $pass = "xxxx"; my $host = "xxxx"; my $connection = BigIP::F5->new($host, $user, $pass); my $partition = BigIP::F5->getActivePartition($connection); print $partition."\n";