@@ -268,6 +268,60 @@ The new branch should be continuously tested on Evergreen. Create a BUILD ticket
268
268
to request the build team create new Evergreen project to track the
269
269
` releases/vx.y ` branch (see BUILD-5666 for an example).
270
270
271
+ ## Docker Image Build and Publish
272
+
273
+ We maintain the docker images found in the
274
+ [ mongodb/mongo-cxx-driver] ( https://hub.docker.com/r/mongodb/mongo-cxx-driver/ )
275
+ Docker Hub repo.
276
+
277
+ To publish a new image here, you will need the password for the following
278
+ service account: ` svcmongodbcxxdriverdockerbo219 ` . The team lead can share
279
+ this password with you as needed.
280
+
281
+ First, in ` mongo-cxx-driver/extras/docker/generate.py ` bump the following
282
+ version numbers as appropriate:
283
+ - MONGOCXX_VERSION
284
+ - MONGOC_VERSION
285
+ - MONGOCRYPT_VERSION
286
+
287
+ Next, build the image. Prefer doing a no-cache-build with a clean docker cache.
288
+
289
+ > As of now, company policy only allows for redhat-ubi images, so only build and
290
+ > push the redhat-ubi based image.
291
+
292
+ ```
293
+ $ yes | docker system prune -a
294
+ $ cd mongo-cxx-driver/extras/docker/redhat-ubi-9.2
295
+ $ make nocachebuild
296
+ ```
297
+
298
+ Then, test that the image works as expected:
299
+ ```
300
+ $ cd redhat-ubi-9.2/
301
+ $ make test
302
+ ```
303
+
304
+ If the test passes, you will see the following output with the version number
305
+ of the driver that you are currently releasing:
306
+ ```
307
+ mongo-cxx-driver version: 3.8.0
308
+ THE redhat-ubi-9.2 IMAGE WORKS!
309
+ ```
310
+
311
+ If the test passes, then check in the bumped version numbers, and get it merged
312
+ into master.
313
+
314
+ Once the Evergreen docker tests pass, login to the service account:
315
+ ```
316
+ $ docker login --username svcmongodbcxxdriverdockerbo219
317
+ Password: <INSERT PASSWORD HERE>
318
+ ```
319
+
320
+ Finally, push the image:
321
+ ```
322
+ $ docker push mongodb/mongo-cxx-driver:<VERSION NUMBER>-redhat-ubi-9.2
323
+ ```
324
+
271
325
## Handle Linux Distribution Packages
272
326
273
327
Note: updates to these instructions should be synced to the corresponding C
0 commit comments