Merge pull request #1572 from flatcar/tormath1/ssm-agent

app-emulation/amazon-ssm-agent: use upstream makefile
This commit is contained in:
Jeremi Piotrowski 2024-01-16 15:26:19 +01:00 committed by GitHub
commit 625fe5c2c8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 50 additions and 57 deletions

View File

@ -0,0 +1 @@
- AWS: Fixed the Amazon SSM agent that was crashing. ([Flatcar#1307](https://github.com/flatcar/Flatcar/issues/1307))

View File

@ -1,57 +0,0 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
COREOS_GO_PACKAGE="${GITHUB_URI}"
COREOS_GO_VERSION="go1.19"
inherit coreos-go-depend golang-vcs-snapshot systemd
EGO_PN="github.com/aws/${PN}"
DESCRIPTION="AWS Systems Manager Agent"
HOMEPAGE="https://github.com/aws/amazon-ssm-agent"
LICENSE="Apache-2.0"
SRC_URI="https://${EGO_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz ${EGO_VENDOR_URI}"
SLOT="0"
KEYWORDS="amd64 arm64"
S="${WORKDIR}/${PN}-${PV}/src/${EGO_PN}"
PATCHES=(
)
src_prepare() {
default
ln -s ${PWD}/vendor/src/* ${PWD}/vendor/
}
src_compile() {
go_export
# this is replication of commands from the vendor makefile
# but without network activity during build phase
local GO_LDFLAGS="-s -w -extldflags=-Wl,-z,now,-z,relro,-z,defs"
export GOPATH="${WORKDIR}/${PN}-${PV}"
# set agent release version
BRAZIL_PACKAGE_VERSION=${PV} ${EGO} run ./agent/version/versiongenerator/version-gen.go
# build all the tools
${EGO} build -v -ldflags "${GO_LDFLAGS}" -buildmode=pie \
-o bin/amazon-ssm-agent ./agent || die
${EGO} build -v -ldflags "${GO_LDFLAGS}" -buildmode=pie \
-o bin/ssm-cli ./agent/cli-main || die
${EGO} build -v -ldflags "${GO_LDFLAGS}" -buildmode=pie \
-o bin/ssm-document-worker ./agent/framework/processor/executer/outofproc/worker || die
${EGO} build -v -ldflags "${GO_LDFLAGS}" -buildmode=pie \
-o bin/ssm-session-logger ./agent/session/logging || die
${EGO} build -v -ldflags "${GO_LDFLAGS}" -buildmode=pie \
-o bin/ssm-session-worker ./agent/framework/processor/executer/outofproc/sessionworker || die
}
src_install() {
dobin bin/amazon-ssm-agent bin/ssm-cli bin/ssm-document-worker bin/ssm-session-logger bin/ssm-session-worker
insinto "/usr/share/amazon/ssm"
newins seelog_unix.xml seelog.xml.template
doins amazon-ssm-agent.json.template
systemd_dounit packaging/linux/amazon-ssm-agent.service
}

View File

@ -0,0 +1,49 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
COREOS_GO_PACKAGE="${GITHUB_URI}"
COREOS_GO_VERSION="go1.19"
inherit coreos-go-depend golang-vcs-snapshot systemd
EGO_PN="github.com/aws/${PN}"
DESCRIPTION="AWS Systems Manager Agent"
HOMEPAGE="https://github.com/aws/amazon-ssm-agent"
LICENSE="Apache-2.0"
SRC_URI="https://${EGO_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz ${EGO_VENDOR_URI}"
SLOT="0"
KEYWORDS="amd64 arm64"
S="${WORKDIR}/${PN}-${PV}/src/${EGO_PN}"
PATCHES=(
)
src_prepare() {
default
ln -s ${PWD}/vendor/src/* ${PWD}/vendor/
}
src_compile() {
go_export
# set agent release version
BRAZIL_PACKAGE_VERSION=${PV} ${EGO} run ./agent/version/versiongenerator/version-gen.go
# build all the tools
if [[ "${ARCH}" == "arm64" ]]; then
emake build-arm64
else
emake build-linux
fi
}
src_install() {
# Folder is like bin/linux_amd64/
dobin bin/*/*
insinto "/usr/share/amazon/ssm"
newins seelog_unix.xml seelog.xml.template
doins amazon-ssm-agent.json.template
systemd_dounit packaging/linux/amazon-ssm-agent.service
}