@@ -73,7 +73,7 @@ get_mongodb_download_url_for ()
73
73
case " $_DISTRO " in
74
74
darwin--arm64)
75
75
MONGODB_LATEST=" http://downloads.10gen.com/osx/mongodb-macos-arm64-enterprise-latest.tgz"
76
- MONGODB_RAPID=" http://downloads.10gen.com/osx/mongodb-macos-x86_64 -enterprise-${VERSION_RAPID} .tgz"
76
+ MONGODB_RAPID=" http://downloads.10gen.com/osx/mongodb-macos-arm64 -enterprise-${VERSION_RAPID} .tgz"
77
77
MONGODB_60_LATEST=" http://downloads.10gen.com/osx/mongodb-macos-arm64-enterprise-${VERSION_60_LATEST} .tgz"
78
78
MONGODB_60=" http://downloads.10gen.com/osx/mongodb-macos-arm64-enterprise-${VERSION_60} .tgz"
79
79
MONGODB_50=" http://downloads.10gen.com/osx/mongodb-macos-x86_64-enterprise-${VERSION_50} .tgz"
@@ -162,6 +162,7 @@ get_mongodb_download_url_for ()
162
162
;;
163
163
linux-rhel-7.1-ppc64le)
164
164
MONGODB_LATEST=" http://downloads.10gen.com/linux/mongodb-linux-ppc64le-enterprise-rhel71-latest.tgz"
165
+ MONGODB_50=" http://downloads.10gen.com/linux/mongodb-linux-ppc64le-enterprise-rhel71-${VERSION_50} .tgz"
165
166
MONGODB_44=" http://downloads.10gen.com/linux/mongodb-linux-ppc64le-enterprise-rhel71-${VERSION_44} .tgz"
166
167
MONGODB_42=" http://downloads.10gen.com/linux/mongodb-linux-ppc64le-enterprise-rhel71-${VERSION_42} .tgz"
167
168
MONGODB_40=" http://downloads.10gen.com/linux/mongodb-linux-ppc64le-enterprise-rhel71-${VERSION_40} .tgz"
@@ -486,46 +487,55 @@ get_mongodb_download_url_for ()
486
487
;;
487
488
esac
488
489
489
- # The crypt_shared package is available on server 6.0 and newer.
490
- VERSION_INCLUDES_CRYPT_SHARED=YES
491
490
case " $_VERSION " in
492
- latest) MONGODB_DOWNLOAD_URL=$MONGODB_LATEST
493
- # If latest is not at least 6.0 on this OS, the crypt_shared package will not be available.
494
- if [ -z $MONGODB_60 ]; then
495
- VERSION_INCLUDES_CRYPT_SHARED=NO
496
- fi ;;
497
- rapid) MONGODB_DOWNLOAD_URL=$MONGODB_RAPID
498
- VERSION_INCLUDES_CRYPT_SHARED=NO ;;
491
+ latest) MONGODB_DOWNLOAD_URL=$MONGODB_LATEST ;;
492
+ rapid) MONGODB_DOWNLOAD_URL=$MONGODB_RAPID ;;
499
493
v6.0-latest) MONGODB_DOWNLOAD_URL=$MONGODB_60_LATEST ;;
500
494
6.0) MONGODB_DOWNLOAD_URL=$MONGODB_60 ;;
501
- 5.0) MONGODB_DOWNLOAD_URL=$MONGODB_50
502
- VERSION_INCLUDES_CRYPT_SHARED=NO ;;
503
- 4.4) MONGODB_DOWNLOAD_URL=$MONGODB_44
504
- VERSION_INCLUDES_CRYPT_SHARED=NO ;;
505
- 4.2) MONGODB_DOWNLOAD_URL=$MONGODB_42
506
- VERSION_INCLUDES_CRYPT_SHARED=NO ;;
507
- 4.0) MONGODB_DOWNLOAD_URL=$MONGODB_40
508
- VERSION_INCLUDES_CRYPT_SHARED=NO ;;
509
- 3.6) MONGODB_DOWNLOAD_URL=$MONGODB_36
510
- VERSION_INCLUDES_CRYPT_SHARED=NO ;;
511
- 3.4) MONGODB_DOWNLOAD_URL=$MONGODB_34
512
- VERSION_INCLUDES_CRYPT_SHARED=NO ;;
513
- 3.2) MONGODB_DOWNLOAD_URL=$MONGODB_32
514
- VERSION_INCLUDES_CRYPT_SHARED=NO ;;
515
- 3.0) MONGODB_DOWNLOAD_URL=$MONGODB_30
516
- VERSION_INCLUDES_CRYPT_SHARED=NO ;;
517
- 2.6) MONGODB_DOWNLOAD_URL=$MONGODB_26
518
- VERSION_INCLUDES_CRYPT_SHARED=NO ;;
519
- 2.4) MONGODB_DOWNLOAD_URL=$MONGODB_24
520
- VERSION_INCLUDES_CRYPT_SHARED=NO ;;
495
+ 5.0) MONGODB_DOWNLOAD_URL=$MONGODB_50 ;;
496
+ 4.4) MONGODB_DOWNLOAD_URL=$MONGODB_44 ;;
497
+ 4.2) MONGODB_DOWNLOAD_URL=$MONGODB_42 ;;
498
+ 4.0) MONGODB_DOWNLOAD_URL=$MONGODB_40 ;;
499
+ 3.6) MONGODB_DOWNLOAD_URL=$MONGODB_36 ;;
500
+ 3.4) MONGODB_DOWNLOAD_URL=$MONGODB_34 ;;
501
+ 3.2) MONGODB_DOWNLOAD_URL=$MONGODB_32 ;;
502
+ 3.0) MONGODB_DOWNLOAD_URL=$MONGODB_30 ;;
503
+ 2.6) MONGODB_DOWNLOAD_URL=$MONGODB_26 ;;
504
+ 2.4) MONGODB_DOWNLOAD_URL=$MONGODB_24 ;;
521
505
esac
522
506
523
- [ -z " $MONGODB_DOWNLOAD_URL " ] && MONGODB_DOWNLOAD_URL=" Unknown version: $_VERSION for $_DISTRO "
507
+ if [ -z " $MONGODB_DOWNLOAD_URL " ]; then
508
+ echo " Unknown version: $_VERSION for $_DISTRO "
509
+ exit 1
510
+ fi
511
+
512
+ # Get the download URL for crypt_shared.
513
+ # The crypt_shared package is available on server 6.0 and newer.
514
+ # Try to download a version of crypt_shared matching the server version.
515
+ # If no matching version is available, try to download the latest Major release of crypt_shared.
516
+ case " $_VERSION " in
517
+ latest)
518
+ # If latest is not at least 6.0 on this OS, the crypt_shared package will not be available.
519
+ if [ -n " $MONGODB_60 " ]; then
520
+ MONGO_CRYPT_SHARED_DOWNLOAD_URL=$MONGODB_LATEST
521
+ fi ;;
522
+ rapid) MONGO_CRYPT_SHARED_DOWNLOAD_URL=$MONGODB_RAPID ;;
523
+ v6.0-latest) MONGO_CRYPT_SHARED_DOWNLOAD_URL=$MONGODB_60_LATEST ;;
524
+ 6.0) MONGO_CRYPT_SHARED_DOWNLOAD_URL=$MONGODB_60 ;;
525
+ 5.0 | 4.4 | 4.2 | 4.0 | 3.6 | 3.4 | 3.2 | 3.0 | 2.6 | 2.4)
526
+ # Default to using the latest Major release. Major releases are expected yearly.
527
+ # MONGODB_60 may be empty if there is no 6.0 download available for this platform.
528
+ MONGO_CRYPT_SHARED_DOWNLOAD_URL=" $MONGODB_60 "
529
+ ;;
530
+ * ) echo " Unknown version '$_VERSION '" ;
531
+ exit 1;
532
+ ;;
533
+ esac
524
534
525
- if [ " $VERSION_INCLUDES_CRYPT_SHARED " = " YES " ]; then
535
+ if [ -n " $MONGO_CRYPT_SHARED_DOWNLOAD_URL " ]; then
526
536
# The crypt_shared package is simply the same file URL with the "mongodb-"
527
537
# prefix replaced with "mongo_crypt_shared_v1-"
528
- MONGO_CRYPT_SHARED_DOWNLOAD_URL=" $( printf ' %s' " $MONGODB_DOWNLOAD_URL " | sed ' s|/mongodb-|/mongo_crypt_shared_v1-|' ) "
538
+ MONGO_CRYPT_SHARED_DOWNLOAD_URL=" $( printf ' %s' " $MONGO_CRYPT_SHARED_DOWNLOAD_URL " | sed ' s|/mongodb-|/mongo_crypt_shared_v1-|' ) "
529
539
fi
530
540
echo $MONGODB_DOWNLOAD_URL
531
541
}
@@ -563,12 +573,16 @@ download_and_extract ()
563
573
# Download 5.0 package to get the legacy mongo shell as a workaround until DRIVERS-2328 is addressed.
564
574
echo " Legacy 'mongo' shell not detected."
565
575
echo " Download legacy shell from 5.0 ... begin"
566
- get_mongodb_download_url_for " $DISTRO " " 5.0"
576
+ # Use a subshell to avoid overwriting MONGODB_DOWNLOAD_URL and MONGO_CRYPT_SHARED_DOWNLOAD_URL.
577
+ MONGODB50_DOWNLOAD_URL=$(
578
+ get_mongodb_download_url_for " $DISTRO " " 5.0" > /dev/null
579
+ echo $MONGODB_DOWNLOAD_URL
580
+ )
567
581
568
582
SAVED_DRIVERS_TOOLS=$DRIVERS_TOOLS
569
583
mkdir $DRIVERS_TOOLS /legacy-shell-download
570
584
DRIVERS_TOOLS=$DRIVERS_TOOLS /legacy-shell-download
571
- download_and_extract_package " $MONGODB_DOWNLOAD_URL " " $EXTRACT "
585
+ download_and_extract_package " $MONGODB50_DOWNLOAD_URL " " $EXTRACT "
572
586
if [ -e $DRIVERS_TOOLS /mongodb/bin/mongo ]; then
573
587
cp $DRIVERS_TOOLS /mongodb/bin/mongo $SAVED_DRIVERS_TOOLS /mongodb/bin
574
588
elif [ -e $DRIVERS_TOOLS /mongodb/bin/mongo.exe ]; then
0 commit comments