Date: Tue, 17 Jan 2023 17:07:22 GMT From: Mikael Urankar <mikael@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: b3cf3d7a4587 - main - sysutils/amazon-ssm-plugin: Add new port Message-ID: <202301171707.30HH7M5M035422@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by mikael: URL: https://cgit.FreeBSD.org/ports/commit/?id=b3cf3d7a458712063e30e35c45b2adf886010656 commit b3cf3d7a458712063e30e35c45b2adf886010656 Author: Norikatsu Shigemura <nork@ninth-nine.com> AuthorDate: 2023-01-17 17:05:01 +0000 Commit: Mikael Urankar <mikael@FreeBSD.org> CommitDate: 2023-01-17 17:07:19 +0000 sysutils/amazon-ssm-plugin: Add new port This package provides Amazon SSM SessionManager and CLI for managing shell experience using SSM APIs. PR: 268142 --- sysutils/Makefile | 1 + sysutils/amazon-ssm-plugin/Makefile | 57 ++++++++++++++++++++++ sysutils/amazon-ssm-plugin/distinfo | 3 ++ .../amazon-ssm-plugin/files/patch-seelog__unix.xml | 14 ++++++ .../files/patch-src_log_log__unix.go | 22 +++++++++ .../files/patch-src_version_version.go | 8 +++ sysutils/amazon-ssm-plugin/pkg-descr | 7 +++ 7 files changed, 112 insertions(+) diff --git a/sysutils/Makefile b/sysutils/Makefile index eaaefae400a7..411ea575708f 100644 --- a/sysutils/Makefile +++ b/sysutils/Makefile @@ -32,6 +32,7 @@ SUBDIR += alfio SUBDIR += am-utils SUBDIR += amazon-ssm-agent + SUBDIR += amazon-ssm-plugin SUBDIR += amdmsrtweaker SUBDIR += amrstat SUBDIR += amtc diff --git a/sysutils/amazon-ssm-plugin/Makefile b/sysutils/amazon-ssm-plugin/Makefile new file mode 100644 index 000000000000..bd7a8e47ace0 --- /dev/null +++ b/sysutils/amazon-ssm-plugin/Makefile @@ -0,0 +1,57 @@ +PORTNAME= amazon-ssm-plugin +DISTVERSION= 1.2.398.0 +CATEGORIES= sysutils + +MAINTAINER= nork@FreeBSD.org +COMMENT= Amazon AWS Manages shell experience using SSM APIs +WWW= https://github.com/aws/session-manager-plugin/ + +LICENSE= APACHE20 +LICENSE_FILE= ${WRKSRC}/LICENSE + +RUN_DEPENDS= aws:devel/py-awscli@${PY_FLAVOR} + +USES= go python:env +GO_BUILDFLAGS= -ldflags "-s -w" +GO_TARGET= src/sessionmanagerplugin-main/main.go:${PREFIX}/bin/session-manager-plugin \ + src/ssmcli-main/main.go:${PREFIX}/bin/ssmcli + +USE_GITHUB= yes +GH_ACCOUNT= aws +GH_PROJECT= session-manager-plugin +GH_TAGNAME= ${DISTVERSION} +GH_SUBDIR= ${GH_PROJECT} + +PORTDOCS= NOTICE README.md RELEASENOTES.md THIRD-PARTY VERSION +PLIST_FILES= ${ETCDIR}/sessionmanagerplugin/seelog.xml.template \ + ${ETCDIR}/SSMCLI/seelog.xml.template \ + bin/session-manager-plugin \ + bin/ssmcli \ + '@dir /var/log/amazon-ssm-plugin' + +LOGDIR= ${DESTDIR}/var/log/${PORTNAME} + +OPTIONS_DEFINE= DOCS + +post-extract: + ${MKDIR} ${WRKDIR}/src + ${LN} -s ${WRKSRC} ${GO_WRKSRC} + ${MKDIR} ${WRKSRC}/vendor/src/github.com/aws/session-manager-plugin + ${LN} -s ${WRKSRC}/vendor/src/* ${GO_WRKSRC}/vendor/ + ${LN} -s ${WRKSRC}/src ${GO_WRKSRC}/vendor/github.com/aws/session-manager-plugin/ + +post-patch: + ${REINPLACE_CMD} -e 's|%%VERSION%%|${DISTVERSION}|' ${WRKSRC}/src/version/version.go + ${REINPLACE_CMD} -e 's|%%ETCDIR%%|${ETCDIR}|g; s|%%LOGDIR%%|${LOGDIR}|g' ${WRKSRC}/seelog_unix.xml + ${REINPLACE_CMD} -e 's|%%ETCDIR%%|${ETCDIR}|g; s|%%LOGDIR%%|${LOGDIR}|g' ${WRKSRC}/src/log/log_unix.go + +post-install: + @${MKDIR} ${STAGEDIR}${LOGDIR} ${STAGEDIR}${ETCDIR}/SSMCLI ${STAGEDIR}${ETCDIR}/sessionmanagerplugin + ${INSTALL_DATA} ${WRKSRC}/seelog_unix.xml ${STAGEDIR}${ETCDIR}/SSMCLI/seelog.xml.template + ${INSTALL_DATA} ${WRKSRC}/seelog_unix.xml ${STAGEDIR}${ETCDIR}/sessionmanagerplugin/seelog.xml.template + +post-install-DOCS-on: + @${MKDIR} ${STAGEDIR}${DOCSDIR} + cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR} + +.include <bsd.port.mk> diff --git a/sysutils/amazon-ssm-plugin/distinfo b/sysutils/amazon-ssm-plugin/distinfo new file mode 100644 index 000000000000..738797c65d70 --- /dev/null +++ b/sysutils/amazon-ssm-plugin/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1673833159 +SHA256 (aws-session-manager-plugin-1.2.398.0_GH0.tar.gz) = 85a511b849f480613b9119f4c800c6ae427b366da463714ade1ccf470de43a99 +SIZE (aws-session-manager-plugin-1.2.398.0_GH0.tar.gz) = 21657464 diff --git a/sysutils/amazon-ssm-plugin/files/patch-seelog__unix.xml b/sysutils/amazon-ssm-plugin/files/patch-seelog__unix.xml new file mode 100644 index 000000000000..457193587a5b --- /dev/null +++ b/sysutils/amazon-ssm-plugin/files/patch-seelog__unix.xml @@ -0,0 +1,14 @@ +--- seelog_unix.xml.orig 2021-08-17 20:31:44 UTC ++++ seelog_unix.xml +@@ -6,9 +6,9 @@ + <exception filepattern="test*" minlevel="error"/> + </exceptions> + <outputs formatid="fmtinfo"> +- <rollingfile type="size" filename="/usr/local/sessionmanagerplugin/logs/session-manager-plugin.log" maxsize="30000000" maxrolls="5"/> ++ <rollingfile type="size" filename="%%LOGDIR%%/session-manager-plugin.log" maxsize="30000000" maxrolls="5"/> + <filter levels="error,critical" formatid="fmterror"> +- <rollingfile type="size" filename="/usr/local/sessionmanagerplugin/logs/errors.log" maxsize="10000000" maxrolls="5"/> ++ <rollingfile type="size" filename="%%LOGDIR%%/session-manager-plugin-errors.log" maxsize="10000000" maxrolls="5"/> + </filter> + </outputs> + <formats> diff --git a/sysutils/amazon-ssm-plugin/files/patch-src_log_log__unix.go b/sysutils/amazon-ssm-plugin/files/patch-src_log_log__unix.go new file mode 100644 index 000000000000..b31d3f95cf82 --- /dev/null +++ b/sysutils/amazon-ssm-plugin/files/patch-src_log_log__unix.go @@ -0,0 +1,22 @@ +--- src/log/log_unix.go.orig 2022-06-17 20:08:49 UTC ++++ src/log/log_unix.go +@@ -23,8 +23,8 @@ import ( + ) + + const ( +- LogsDirectory = "logs" +- DefaultInstallLocationPrefix = "/usr/local" ++ DefaultLogsDirectory = "%%LOGDIR%%" ++ DefaultInstallLocationPrefix = "%%ETCDIR%%" + ) + + func getApplicationName(clientName string) string { +@@ -45,7 +45,7 @@ func getLogConfigBytes(clientName string) (logConfigBy + + applicationName := getApplicationName(clientName) + DefaultSeelogConfigFilePath = filepath.Join(DefaultInstallLocationPrefix, applicationName, SeelogConfigFileName) +- DefaultLogDir = filepath.Join(DefaultInstallLocationPrefix, applicationName, LogsDirectory) ++ DefaultLogDir = filepath.Join(DefaultLogsDirectory, applicationName) + ApplicationLogFile = fmt.Sprintf("%s%s", clientName, LogFileExtension) + ErrorLogFile = fmt.Sprintf("%s%s", ErrorLogFileSuffix, LogFileExtension) + if logConfigBytes, err = ioutil.ReadFile(DefaultSeelogConfigFilePath); err != nil { diff --git a/sysutils/amazon-ssm-plugin/files/patch-src_version_version.go b/sysutils/amazon-ssm-plugin/files/patch-src_version_version.go new file mode 100644 index 000000000000..cf5b8d5233cb --- /dev/null +++ b/sysutils/amazon-ssm-plugin/files/patch-src_version_version.go @@ -0,0 +1,8 @@ +--- src/version/version.go.orig 2022-06-17 20:08:49 UTC ++++ src/version/version.go +@@ -9,4 +9,4 @@ + package version + + // Version is the version of the CLI +-const Version = "1.2.0.0" ++const Version = "%%VERSION%%" diff --git a/sysutils/amazon-ssm-plugin/pkg-descr b/sysutils/amazon-ssm-plugin/pkg-descr new file mode 100644 index 000000000000..3c7d2b64bfdf --- /dev/null +++ b/sysutils/amazon-ssm-plugin/pkg-descr @@ -0,0 +1,7 @@ +This package provides Amazon SSM SessionManager and CLI for managing +shell experience using SSM APIs. + +HOW TO USE: + aws ssm start-session --target "your instance-id" + +SEE ALSO: https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202301171707.30HH7M5M035422>