aboutsummaryrefslogtreecommitdiffstats
path: root/sdc-os-chef/pom.xml
blob: f82542639331d0396f038a53eca02c7798f60260 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

	<modelVersion>4.0.0</modelVersion>

	<artifactId>sdc-os-chef</artifactId>

	<parent>
		<groupId>org.openecomp.sdc</groupId>
		<artifactId>sdc-main</artifactId>
		<version>1.1.0-SNAPSHOT</version>
	</parent>


	<properties>
		<docker.tag>${project.version}-${maven.build.timestamp}</docker.tag>
		<docker.latest.tag>${project.version}-latest</docker.latest.tag>
	</properties>

	<build>
		<plugins>
			<plugin>
				<groupId>com.google.code.maven-replacer-plugin</groupId>
				<artifactId>replacer</artifactId>
				<version>1.5.3</version>
				<executions>
					<execution>
						<phase>prepare-package</phase>
						<goals>
							<goal>replace</goal>
						</goals>
					</execution>
				</executions>

				<configuration>
					<basedir>${project.basedir}</basedir>
					<includes>
						<include>sdc-backend/Dockerfile</include>
						<include>sdc-frontend/Dockerfile</include>
						<include>scripts/docker_run.sh</include>
					</includes>
					<replacements>
						<replacement>
							<token>__SDC-RELEASE__</token>
							<value>${project.version}</value>
						</replacement>
					</replacements>
				</configuration>
			</plugin>
		</plugins>
	</build>

	<profiles>
		<profile>
			<id>docker-staging</id>
			<properties>
				<docker.tag>${project.version}-STAGING-${maven.build.timestamp}</docker.tag>
				<docker.latest.tag>${project.version}-STAGING-latest</docker.latest.tag>
			</properties>
		</profile>

		<profile>
			<id>docker</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>
			<build>
				<plugins>
					<plugin>
						<artifactId>maven-resources-plugin</artifactId>
						<version>3.0.2</version>
						<executions>
							<execution>
								<id>copy-resources-be</id>
								<phase>validate</phase>
								<goals>
									<goal>copy-resources</goal>
								</goals>
								<configuration>
									<outputDirectory>${basedir}/sdc-backend</outputDirectory>
									<resources>
										<resource>
											<directory>${project.parent.basedir}/openecomp-be/api/openecomp-sdc-rest-webapp/onboarding-rest-war/target</directory>
											<includes>
												<include>onboarding-be-${project.version}.war</include>
											</includes>
										</resource>
									</resources>
								</configuration>
							</execution>
							<execution>
								<id>copy-resources-fe</id>
								<phase>validate</phase>
								<goals>
									<goal>copy-resources</goal>
								</goals>
								<configuration>
									<outputDirectory>${basedir}/sdc-frontend</outputDirectory>
									<resources>
										<resource>
											<directory>${project.parent.basedir}/openecomp-ui/target</directory>
											<includes>
												<include>onboarding-fe-${project.version}.war</include>
											</includes>
										</resource>
									</resources>
								</configuration>
							</execution>
						</executions>
					</plugin>



					<plugin>
						<groupId>io.fabric8</groupId>
						<artifactId>docker-maven-plugin</artifactId>
						<version>0.19.1</version>

						<configuration>
							<verbose>true</verbose>
							<apiVersion>1.23</apiVersion>

							<images>

								<!-- Build backend image -->
								<image>
									<name>openecomp/sdc-backend</name>
									<alias>sdc-backend</alias>
									<build>
										<cleanup>try</cleanup>
										<dockerFileDir>${project.basedir}/sdc-backend</dockerFileDir>
										<tags>
											<tag>${docker.tag}</tag>
											<tag>${docker.latest.tag}</tag>
										</tags>
									</build>
								</image>

								<!-- Build frontend image -->
								<image>
									<name>openecomp/sdc-frontend</name>
									<alias>sdc-frontend</alias>
									<build>
										<cleanup>try</cleanup>
										<dockerFileDir>${project.basedir}/sdc-frontend</dockerFileDir>
										<tags>
											<tag>${docker.tag}</tag>
											<tag>${docker.latest.tag}</tag>
										</tags>
									</build>
								</image>

								<!-- Build elastic search image -->
								<image>
									<name>openecomp/sdc-elasticsearch</name>
									<alias>sdc-elasticsearch</alias>
									<build>
										<cleanup>try</cleanup>
										<dockerFileDir>${project.basedir}/sdc-elasticsearch</dockerFileDir>
										<tags>
											<tag>${docker.tag}</tag>
											<tag>${docker.latest.tag}</tag>
										</tags>
									</build>
								</image>

								<!-- Build kibana image -->
								<image>
									<name>openecomp/sdc-kibana</name>
									<alias>sdc-kibana</alias>
									<build>
										<cleanup>try</cleanup>
										<dockerFileDir>${project.basedir}/sdc-kibana</dockerFileDir>
										<tags>
											<tag>${docker.tag}</tag>
											<tag>${docker.latest.tag}</tag>
										</tags>
									</build>
								</image>

								<!-- Build cassandra image -->
								<image>
									<name>openecomp/sdc-cassandra</name>
									<alias>sdc-cassandra</alias>
									<build>
										<cleanup>try</cleanup>
										<dockerFileDir>${project.basedir}/sdc-cassandra</dockerFileDir>
										<tags>
											<tag>${docker.tag}</tag>
											<tag>${docker.latest.tag}</tag>
										</tags>
									</build>
								</image>

								<!-- Build sanity image -->
								<image>
									<name>openecomp/sdc-sanity</name>
									<alias>sdc-sanity</alias>
									<build>
										<cleanup>try</cleanup>
										<dockerFileDir>${project.basedir}/sdc-sanity</dockerFileDir>
										<tags>
											<tag>${docker.tag}</tag>
											<tag>${docker.latest.tag}</tag>
										</tags>
									</build>
								</image>

							</images>
						</configuration>
						<executions>
							<execution>
                                <id>clean-images</id>
                                <phase>pre-clean</phase>
                                <goals>
                                <goal>remove</goal>
                                </goals>
                                <configuration>
                                <removeAll>true</removeAll>
                                <image>openecomp/sdc-backend,openecomp/sdc-frontend,openecomp/sdc-elasticsearch,openecomp/sdc-kibana,openecomp/sdc-sanity</image>
                                </configuration>
							</execution>

							<execution>
								<id>generate-images</id>
								<phase>package</phase>
								<goals>
									<goal>build</goal>
								</goals>
							</execution>

							<execution>
                                <id>push-images</id>
                                <phase>deploy</phase>
                                <goals>
									<goal>build</goal>
									<goal>push</goal>
                                </goals>
                                <configuration>
                                <image>openecomp/sdc-backend,openecomp/sdc-frontend,openecomp/sdc-elasticsearch,openecomp/sdc-kibana,openecomp/sdc-sanity</image>
                                </configuration>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>
</project>