@@ -9,8 +9,12 @@ Summary: An agent to enable remote management of EC2 instances
9
9
License: Apache-2.0
10
10
URL: https://github.com/aws/amazon-ssm-agent
11
11
Source0: %{gorepo }-%{version }.tar.gz
12
+ Source1: amazon-ssm-agent.service
13
+ Source2: amazon-ssm-agent.json
12
14
Source1000: clarify.toml
13
15
16
+ Patch0001: 0001-agent-Add-config-to-make-shell-optional.patch
17
+
14
18
BuildRequires: %{_cross_os }glibc-devel
15
19
Requires: %{name }(binaries)
16
20
@@ -35,11 +39,36 @@ Conflicts: (%{_cross_os}image-feature(no-fips) or %{name}-bin)
35
39
%description fips-bin
36
40
%{summary }.
37
41
42
+ %package plugin
43
+ Summary: A statically-linked agent to enable remote management of EC2 instances
44
+ Requires: %{name }-plugin(binaries)
45
+
46
+ %description plugin
47
+ %{summary }.
48
+
49
+ %package plugin-bin
50
+ Summary: Statically-linked remote management agent binaries
51
+ Provides: %{name }-plugin(binaries)
52
+ Requires: (%{_cross_os }image-feature(no-fips) and %{name }-plugin)
53
+ Conflicts: (%{_cross_os }image-feature(fips) or %{name }-plugin-fips-bin)
54
+
55
+ %description plugin-bin
56
+ %{summary }.
57
+
58
+ %package plugin-fips-bin
59
+ Summary: Statically-linked remote management agent binaries, FIPS edition
60
+ Provides: %{name }-plugin(binaries)
61
+ Requires: (%{_cross_os }image-feature(fips) and %{name }-plugin)
62
+ Conflicts: (%{_cross_os }image-feature(no-fips) or %{name }-plugin-bin)
63
+
64
+ %description plugin-fips-bin
65
+ %{summary }.
66
+
38
67
%prep
39
- %setup -n %{gorepo }-%{version }
68
+ %autosetup -n %{gorepo }-%{version } -p0001
40
69
41
70
%build
42
- %set_cross_go_flags_static
71
+ %set_cross_go_flags
43
72
44
73
go build -ldflags "${GOLDFLAGS}" -o amazon-ssm-agent \
45
74
./core/agent.go ./core/agent_unix.go ./core/agent_parser.go
@@ -59,12 +88,43 @@ go build -ldflags "${GOLDFLAGS}" -o ssm-session-worker \
59
88
gofips build -ldflags "${GOLDFLAGS}" -o fips/ssm-session-worker \
60
89
./agent/framework/processor/executer/outofproc/sessionworker/main.go
61
90
91
+ %set_cross_go_flags_static
92
+
93
+ go build -ldflags "${GOLDFLAGS}" -o static/amazon-ssm-agent \
94
+ ./core/agent.go ./core/agent_unix.go ./core/agent_parser.go
95
+
96
+ gofips build -ldflags "${GOLDFLAGS}" -o fips-static/amazon-ssm-agent \
97
+ ./core/agent.go ./core/agent_unix.go ./core/agent_parser.go
98
+
99
+ go build -ldflags "${GOLDFLAGS}" -o static/ssm-agent-worker \
100
+ ./agent/agent.go ./agent/agent_unix.go ./agent/agent_parser.go
101
+
102
+ gofips build -ldflags "${GOLDFLAGS}" -o fips-static/ssm-agent-worker \
103
+ ./agent/agent.go ./agent/agent_unix.go ./agent/agent_parser.go
104
+
105
+ go build -ldflags "${GOLDFLAGS}" -o static/ssm-session-worker \
106
+ ./agent/framework/processor/executer/outofproc/sessionworker/main.go
107
+
108
+ gofips build -ldflags "${GOLDFLAGS}" -o fips-static/ssm-session-worker \
109
+ ./agent/framework/processor/executer/outofproc/sessionworker/main.go
110
+
62
111
%install
63
- # Install the SSM agent under 'libexecdir', since it is meant to be used by other programs
112
+ install -D -p -m 0644 %{S:1 } %{buildroot }%{_cross_unitdir }/amazon-ssm-agent.service
113
+
114
+ install -d %{buildroot }%{_cross_factorydir }%{_cross_sysconfdir }/amazon/ssm
115
+ install -m 0644 %{S:2 } %{buildroot }%{_cross_factorydir }%{_cross_sysconfdir }/amazon/ssm/amazon-ssm-agent.json
116
+
117
+ install -d %{buildroot }{%{_cross_bindir },%{_cross_fips_bindir }}
118
+ for b in amazon-ssm-agent ssm-agent-worker ssm-session-worker; do
119
+ install -p -m 0755 ${b} %{buildroot }%{_cross_bindir }
120
+ install -p -m 0755 fips/${b} %{buildroot }%{_cross_fips_bindir }
121
+ done
122
+
123
+ # Install the statically-linked SSM agent under 'libexecdir', since it is meant to be used by other programs
64
124
install -d %{buildroot }{%{_cross_libexecdir },%{_cross_fips_libexecdir }}/amazon-ssm-agent/bin/%{version }
65
125
for b in amazon-ssm-agent ssm-agent-worker ssm-session-worker; do
66
- install -p -m 0755 ${b} %{buildroot}%{_cross_libexecdir}/amazon-ssm-agent/bin/%{version}
67
- install -p -m 0755 fips/${b} %{buildroot}%{_cross_fips_libexecdir}/amazon-ssm-agent/bin/%{version}
126
+ install -p -m 0755 static/ ${b} %{buildroot }%{_cross_libexecdir }/amazon-ssm-agent/bin/%{version }
127
+ install -p -m 0755 fips-static /${b} %{buildroot }%{_cross_fips_libexecdir }/amazon-ssm-agent/bin/%{version }
68
128
done
69
129
70
130
%cross_scan_attribution --clarify %{S:1000 } go-vendor vendor
@@ -76,15 +136,30 @@ ln -sf %{version} %{buildroot}%{_cross_fips_libexecdir}/amazon-ssm-agent/bin/lat
76
136
%license LICENSE
77
137
%{_cross_attribution_file }
78
138
%{_cross_attribution_vendor_dir }
139
+ %{_cross_unitdir }/amazon-ssm-agent.service
140
+ %dir %{_cross_factorydir }%{_cross_sysconfdir }/amazon/ssm
141
+ %{_cross_factorydir }%{_cross_sysconfdir }/amazon/ssm/amazon-ssm-agent.json
79
142
80
143
%files bin
144
+ %{_cross_bindir }/amazon-ssm-agent
145
+ %{_cross_bindir }/ssm-agent-worker
146
+ %{_cross_bindir }/ssm-session-worker
147
+
148
+ %files fips-bin
149
+ %{_cross_fips_bindir }/amazon-ssm-agent
150
+ %{_cross_fips_bindir }/ssm-agent-worker
151
+ %{_cross_fips_bindir }/ssm-session-worker
152
+
153
+ %files plugin
154
+
155
+ %files plugin-bin
81
156
%dir %{_cross_libexecdir }/amazon-ssm-agent
82
157
%{_cross_libexecdir }/amazon-ssm-agent/bin/%{version }/amazon-ssm-agent
83
158
%{_cross_libexecdir }/amazon-ssm-agent/bin/%{version }/ssm-agent-worker
84
159
%{_cross_libexecdir }/amazon-ssm-agent/bin/%{version }/ssm-session-worker
85
160
%{_cross_libexecdir }/amazon-ssm-agent/bin/latest
86
161
87
- %files fips-bin
162
+ %files plugin- fips-bin
88
163
%dir %{_cross_fips_libexecdir }/amazon-ssm-agent
89
164
%{_cross_fips_libexecdir }/amazon-ssm-agent/bin/%{version }/amazon-ssm-agent
90
165
%{_cross_fips_libexecdir }/amazon-ssm-agent/bin/%{version }/ssm-agent-worker
0 commit comments