Puppet-Classify
view release on metacpan or search on metacpan
lib/Puppet/Classify.pm view on Meta::CPAN
sub delete_group {
my $self = shift;
my $id = shift;
my %headers;
my $uri = "https://".$self->server_name.":".$self->server_port."/classifier-api/v1/groups/$id";
my $ssl_opts = { verify_hostname => 1, SSL_ca_file => $self->puppet_ssl_path."/certs/ca.pem" };
if( $self->cert_name ){
$ssl_opts->{SSL_cert_file} = $self->puppet_ssl_path."/certs/".$self->cert_name.".pem";
$ssl_opts->{SSL_key_file} = $self->puppet_ssl_path."/private_keys/".$self->cert_name.".pem";
} else {
%headers = ( 'X-Authentication' => $self->access_token );
}
my $ua = LWP::UserAgent->new( timeout => $self->timeout, ssl_opts => $ssl_opts );
my $response = $ua->delete( $uri, %headers );
die $response->status_line."\n".$response->decoded_content if not $response->is_success( 204 );
}
lib/Puppet/Classify.pm view on Meta::CPAN
sub do_web_request {
my $self = shift;
my $type = shift;
my $action = shift;
my $data = shift;
my $uri = "https://".$self->server_name.":".$self->server_port."/classifier-api/v1/$action";
my $req = HTTP::Request->new( $type, $uri );
my $ssl_opts = { verify_hostname => 1, SSL_ca_file => $self->puppet_ssl_path."/certs/ca.pem" };
if( $self->cert_name ){
$ssl_opts->{SSL_cert_file} = $self->puppet_ssl_path."/certs/".$self->cert_name.".pem";
$ssl_opts->{SSL_key_file} = $self->puppet_ssl_path."/private_keys/".$self->cert_name.".pem";
} else {
$req->header( 'X-Authentication' => $self->access_token );
}
my $ua = LWP::UserAgent->new( timeout => $self->timeout, ssl_opts => $ssl_opts );
if( $type eq 'POST' ){
$data = encode_json( $data ) if ref $data;
$req->header( 'Content-Type' => 'application/json' );
$req->content( $data );
}
my $response = $ua->request( $req );
lib/Puppet/Classify.pm view on Meta::CPAN
return $self->do_web_request( 'GET', $action );
}
sub get_data_old {
my $self = shift;
my $action = shift;
my $uri = "https://".$self->server_name.":".$self->server_port."/classifier-api/v1/$action";
my $req = HTTP::Request->new( 'GET', $uri );
my $ssl_opts = { verify_hostname => 1, SSL_ca_file => $self->puppet_ssl_path."/certs/ca.pem" };
if( $self->has_cert_name ){
$ssl_opts->{SSL_cert_file} = $self->puppet_ssl_path."/certs/".$self->cert_name.".pem";
$ssl_opts->{SSL_key_file} = $self->puppet_ssl_path."/private_keys/".$self->cert_name.".pem";
} else {
$req->header( 'X-Authentication' => $self->access_token );
}
my $ua = LWP::UserAgent->new( timeout => $self->timeout, ssl_opts => $ssl_opts );
my $response = $ua->request( $req );
my $output;
if ($response->is_success) {
$output = $response->decoded_content;
} else {
die $response->status_line."\n".$response->decoded_content;
lib/Puppet/Classify.pm view on Meta::CPAN
sub push_data_old {
my $self = shift;
my $action = shift;
my $data = shift;
$data = encode_json( $data ) if ref $data;
my $uri = "https://".$self->server_name.":".$self->server_port."/classifier-api/v1/$action";
my $req = HTTP::Request->new( 'POST', $uri );
my $ssl_opts = { verify_hostname => 1, SSL_ca_file => $self->puppet_ssl_path."/certs/ca.pem" };
if( $self->has_cert_name ){
$ssl_opts->{SSL_cert_file} = $self->puppet_ssl_path."/certs/".$self->cert_name.".pem";
$ssl_opts->{SSL_key_file} = $self->puppet_ssl_path."/private_keys/".$self->cert_name.".pem";
} else {
$req->header( 'X-Authentication' => $self->access_token );
}
my $ua = LWP::UserAgent->new( timeout => $self->timeout, ssl_opts => $ssl_opts );
$req->header( 'Content-Type' => 'application/json' );
$req->content( $data );
my $response = $ua->request( $req );
my $output;
if ($response->is_redirect( 303 ) or $response->is_success( 201 )) {
$output = $response->decoded_content;
( run in 0.226 second using v1.01-cache-2.11-cpan-4d50c553e7e )