sysutils/pxp-agent: New port

This is the agent for the PCP Execution Protocol (PXP), based on the the Puppet
Communications Protocol (PCP). It enables the execution of actions on remote
nodes.

WWW: https://github.com/puppetlabs/pxp-agent

With hat:	puppet
This commit is contained in:
Romain Tartière 2021-05-23 09:32:31 -10:00
parent 07d6d600e8
commit af41f55753
9 changed files with 82 additions and 0 deletions

View File

@ -993,6 +993,7 @@
SUBDIR += pwol
SUBDIR += pwsafe
SUBDIR += pxattr
SUBDIR += pxp-agent
SUBDIR += py-ansible-base
SUBDIR += py-ansible-core
SUBDIR += py-ansible-lint

View File

@ -0,0 +1,24 @@
PORTNAME= pxp-agent
PORTVERSION= 1.15.11
CATEGORIES= sysutils
MAINTAINER= puppet@FreeBSD.org
COMMENT= PCP eXecution Protocol Agent
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS= liblibcpp-pcp-client.so:net/cpp-pcp-client \
libboost_thread.so:devel/boost-libs \
liblibcpp-hocon.so:devel/cpp-hocon \
libleatherman_util.so:devel/leatherman
USES= cmake ssl
USE_GITHUB= yes
GH_ACCOUNT= puppetlabs
CMAKE_OFF= ENABLE_CXX_WERROR
LDFLAGS+= -lthr
.include <bsd.port.mk>

View File

@ -0,0 +1,3 @@
TIMESTAMP = 1621202732
SHA256 (puppetlabs-pxp-agent-1.15.11_GH0.tar.gz) = 43ef13199f461c15df6526bdf07cda11a17dd40ae471b7055574c2ad18690def
SIZE (puppetlabs-pxp-agent-1.15.11_GH0.tar.gz) = 318528

View File

@ -0,0 +1,9 @@
--- cmake/FindCPPHOCON.cmake.orig 2018-09-28 17:04:38 UTC
+++ cmake/FindCPPHOCON.cmake
@@ -1,5 +1,5 @@
include(FindDependency)
-find_dependency(CPPHOCON DISPLAY "cpp-hocon" HEADERS "hocon/config.hpp" LIBRARIES "libcpp-hocon.a")
+find_dependency(CPPHOCON DISPLAY "cpp-hocon" HEADERS "hocon/config.hpp" LIBRARIES "liblibcpp-hocon.so")
include(FeatureSummary)
set_package_properties(CPPHOCON PROPERTIES DESCRIPTION "A C++ parser for the HOCON configuration language" URL "https://github.com/puppetlabs/cpp-hocon")

View File

@ -0,0 +1,9 @@
--- cmake/Findcpp-pcp-client.cmake.orig 2018-09-28 17:04:38 UTC
+++ cmake/Findcpp-pcp-client.cmake
@@ -2,5 +2,5 @@ include(FindDependency)
find_dependency(cpp-pcp-client
DISPLAY "cpp-pcp-client"
HEADERS "cpp-pcp-client/connector/connection.hpp"
- LIBRARIES "libcpp-pcp-client.so" "libcpp-pcp-client.dylib" "cpp-pcp-client"
+ LIBRARIES "liblibcpp-pcp-client.so" "libcpp-pcp-client.dylib" "cpp-pcp-client"
REQUIRED)

View File

@ -0,0 +1,17 @@
--- lib/tests/unit/action_request_test.cc.orig 2021-05-16 22:32:47 UTC
+++ lib/tests/unit/action_request_test.cc
@@ -38,12 +38,14 @@ TEST_CASE("ActionRequest::ActionRequest", "[request]")
ActionRequest::Error);
}
+ /* Does not compile with a modern compiler
SECTION("throw a ActionRequest::Error if binary data") {
const PCPClient::ParsedChunks p_c { envelope, "bin data", debug, 0 };
REQUIRE_THROWS_AS(ActionRequest(RequestType::Blocking, p_c),
ActionRequest::Error);
}
+ */
SECTION("throw a ActionRequest::Error if invalid data") {
const PCPClient::ParsedChunks p_c { envelope, false, debug, 0 };

View File

@ -0,0 +1,8 @@
--- modules/pxp-module-puppet.orig 2018-09-28 17:04:38 UTC
+++ modules/pxp-module-puppet
@@ -1,4 +1,4 @@
-#!/opt/puppetlabs/puppet/bin/ruby
+#!/usr/bin/env ruby
# encoding: UTF-8
require 'json'

View File

@ -0,0 +1,5 @@
This is the agent for the PCP Execution Protocol (PXP), based on the the Puppet
Communications Protocol (PCP). It enables the execution of actions on remote
nodes.
WWW: https://github.com/puppetlabs/pxp-agent

View File

@ -0,0 +1,6 @@
bin/PowershellShim-Helper.ps1
bin/PowershellShim.ps1
bin/execution_wrapper
bin/pxp-agent
lib/libpxp-agent.a
pxp-agent/modules/pxp-module-puppet