Skip to content

Commit d3967ba

Browse files
Merge branch 'main' into COMPASS-8333
2 parents 99aaf60 + 2b44d26 commit d3967ba

File tree

110 files changed

+3679
-4290
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

110 files changed

+3679
-4290
lines changed

.evergreen/buildvariants-and-tasks.in.yml

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,10 @@ const PACKAGE_BUILD_VARIANTS = [
2828
name: 'package-ubuntu',
2929
display_name: 'Package Ubuntu',
3030
31-
// # NOTE: We are packaging on Ubuntu 16.04 in order to use glibc 2.23
31+
// # NOTE: We are packaging on Ubuntu 18.04 in order to use glibc 2.27
3232
// # when compiling/re-building addons. This ensures compatibility with other
33-
// # debian platforms that have glibc 2.23 or newer.
34-
run_on: 'ubuntu1604-large',
33+
// # debian platforms that have glibc 2.27 or newer.
34+
run_on: 'ubuntu1804-large',
3535
silk_asset_group: 'compass-ubuntu',
3636
},
3737
{
@@ -275,6 +275,12 @@ buildvariants:
275275
<% } %>
276276
<% } %>
277277

278+
- name: test-web-sandbox-atlas-cloud
279+
display_name: Test Web Sandbox (w/ Atlas Cloud login)
280+
run_on: ubuntu2004-large
281+
tasks:
282+
- name: test-web-sandbox-atlas-cloud
283+
278284
- name: generate-vulnerability-report
279285
display_name: Vulnerability Report
280286
run_on: ubuntu2004-large
@@ -504,6 +510,21 @@ tasks:
504510
<% } %>
505511
<% } %>
506512

513+
- name: test-web-sandbox-atlas-cloud
514+
tags:
515+
- required-for-publish
516+
- run-on-pr
517+
- assigned_to_jira_team_compass_compass
518+
- foliage_check_task_only
519+
commands:
520+
- func: prepare
521+
- func: install
522+
- func: bootstrap
523+
- func: test-web-sandbox-atlas-cloud
524+
vars:
525+
compass_distribution: compass
526+
debug: 'compass-e2e-tests*,electron*,hadron*,mongo*'
527+
507528
- name: create_static_analysis_report
508529
tags: ['required-for-publish', 'run-on-pr']
509530
depends_on:

.evergreen/buildvariants-and-tasks.yml

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ buildvariants:
3535
expansions:
3636
silk_asset_group: compass-ubuntu
3737
display_name: Package Ubuntu
38-
run_on: ubuntu1604-large
38+
run_on: ubuntu1804-large
3939
tasks:
4040
- name: package-compass
4141
- name: package-compass-isolated
@@ -257,6 +257,11 @@ buildvariants:
257257
- name: test-web-sandbox-firefox-1
258258
- name: test-web-sandbox-firefox-2
259259
- name: test-web-sandbox-firefox-3
260+
- name: test-web-sandbox-atlas-cloud
261+
display_name: Test Web Sandbox (w/ Atlas Cloud login)
262+
run_on: ubuntu2004-large
263+
tasks:
264+
- name: test-web-sandbox-atlas-cloud
260265
- name: generate-vulnerability-report
261266
display_name: Vulnerability Report
262267
run_on: ubuntu2004-large
@@ -1715,6 +1720,20 @@ tasks:
17151720
e2e_test_groups: 3
17161721
e2e_test_group: 3
17171722
debug: compass-e2e-tests*,electron*,hadron*,mongo*
1723+
- name: test-web-sandbox-atlas-cloud
1724+
tags:
1725+
- required-for-publish
1726+
- run-on-pr
1727+
- assigned_to_jira_team_compass_compass
1728+
- foliage_check_task_only
1729+
commands:
1730+
- func: prepare
1731+
- func: install
1732+
- func: bootstrap
1733+
- func: test-web-sandbox-atlas-cloud
1734+
vars:
1735+
compass_distribution: compass
1736+
debug: compass-e2e-tests*,electron*,hadron*,mongo*
17181737
- name: create_static_analysis_report
17191738
tags:
17201739
- required-for-publish

.evergreen/functions.yml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -672,6 +672,42 @@ functions:
672672
eval $(.evergreen/print-compass-env.sh)
673673
npm run --unsafe-perm --workspace compass-e2e-tests test-ci web
674674
675+
676+
test-web-sandbox-atlas-cloud:
677+
- command: shell.exec
678+
# It can take a very long time for Atlas cluster to get deployed
679+
timeout_secs: 2400
680+
params:
681+
working_dir: src
682+
shell: bash
683+
env:
684+
<<: *compass-env
685+
DEBUG: ${debug|}
686+
COMPASS_E2E_ATLAS_CLOUD_SANDBOX_CLOUD_CONFIG: 'qa'
687+
COMPASS_E2E_ATLAS_CLOUD_SANDBOX_USERNAME: ${e2e_tests_compass_web_atlas_username}
688+
COMPASS_E2E_ATLAS_CLOUD_SANDBOX_PASSWORD: ${e2e_tests_compass_web_atlas_password}
689+
COMPASS_E2E_ATLAS_CLOUD_SANDBOX_DBUSER_USERNAME: ${e2e_tests_compass_web_atlas_db_username}
690+
COMPASS_E2E_ATLAS_CLOUD_SANDBOX_DBUSER_PASSWORD: ${e2e_tests_compass_web_atlas_password}
691+
MCLI_PUBLIC_API_KEY: ${e2e_tests_mcli_public_api_key}
692+
MCLI_PRIVATE_API_KEY: ${e2e_tests_mcli_private_api_key}
693+
MCLI_ORG_ID: ${e2e_tests_mcli_org_id}
694+
MCLI_PROJECT_ID: ${e2e_tests_mcli_project_id}
695+
MCLI_OPS_MANAGER_URL: ${e2e_tests_mcli_ops_manager_url}
696+
script: |
697+
set -e
698+
# Load environment variables
699+
eval $(.evergreen/print-compass-env.sh)
700+
# Create Atlas cluster for test project
701+
source .evergreen/start-atlas-cloud-cluster.sh
702+
# Run the tests
703+
echo "Starting e2e tests..."
704+
# We're only running a special subset of tests as provisioning atlas
705+
# clusters in CI is both pricey and flakey, so we want to limit the
706+
# coverage to reduce those factors (at least for now)
707+
npm run --unsafe-perm --workspace compass-e2e-tests test-ci -- -- web \
708+
--test-atlas-cloud-sandbox \
709+
--test-filter="atlas-cloud/**/*"
710+
675711
test-connectivity:
676712
- command: shell.exec
677713
# Fail the task if it's idle for 10 mins

.evergreen/print-compass-env.js

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ function printCompassEnv() {
7171
// To build node modules on linux post electron 13 we need a newer c++
7272
// compiler version and at least python v3.9, this adds it.
7373
// https://jira.mongodb.org/browse/COMPASS-5150
74-
pathsToPrepend.unshift('/opt/mongodbtoolchain/v3/bin');
74+
pathsToPrepend.unshift('/opt/mongodbtoolchain/v4/bin');
7575
}
7676

7777
PATH = maybePrependPaths(PATH, pathsToPrepend);
@@ -111,12 +111,8 @@ function printCompassEnv() {
111111
process.env.EVERGREEN_REVISION_ORDER_ID
112112
);
113113

114-
if (process.platform === 'darwin') {
115-
// Without this, kerberos 2.1.1 is broken on macOS, but this flag is only
116-
// really relevant for Linux.
117-
// https://jira.mongodb.org/browse/NODE-6320
118-
printVar('GYP_DEFINES', 'kerberos_use_rtld=false');
119-
}
114+
// https://jira.mongodb.org/browse/NODE-6320
115+
printVar('GYP_DEFINES', `kerberos_use_rtld=${process.platform === 'linux'}`);
120116
}
121117

122118
printCompassEnv();
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
#!/bin/bash
2+
3+
# Atlas limits the naming to something like /^[\w\d-]{,23}$/ (and will auto
4+
# truncate if it's too long) so we're very limited in terms of how unique this
5+
# name can be. Hopefully the epoch + part of git hash is enough for these to not
6+
# overlap when tests are running
7+
ATLAS_CLOUD_TEST_CLUSTER_NAME="e2e-$(date +"%s")-$(git rev-parse HEAD)"
8+
9+
function atlascli() {
10+
docker run \
11+
-e MCLI_PUBLIC_API_KEY \
12+
-e MCLI_PRIVATE_API_KEY \
13+
-e MCLI_ORG_ID \
14+
-e MCLI_PROJECT_ID \
15+
-e MCLI_OPS_MANAGER_URL \
16+
mongodb/atlas atlas $@
17+
}
18+
19+
cleanup() {
20+
echo "Scheduling Atlas deployment \`$ATLAS_CLOUD_TEST_CLUSTER_NAME\` for deletion..."
21+
atlascli clusters delete $ATLAS_CLOUD_TEST_CLUSTER_NAME --force
22+
}
23+
24+
trap cleanup EXIT
25+
26+
echo "Creating Atlas deployment \`$ATLAS_CLOUD_TEST_CLUSTER_NAME\` to test against..."
27+
atlascli clusters create $ATLAS_CLOUD_TEST_CLUSTER_NAME \
28+
--provider AWS \
29+
--region US_EAST_1 \
30+
--tier M10
31+
32+
echo "Waiting for the deployment to be provisioned..."
33+
atlascli clusters watch "$ATLAS_CLOUD_TEST_CLUSTER_NAME"
34+
35+
echo "Getting connection string for provisioned cluster..."
36+
ATLAS_CLOUD_TEST_CLUSTER_CONNECTION_STRING_JSON="$(atlascli clusters connectionStrings describe $ATLAS_CLOUD_TEST_CLUSTER_NAME -o json)"
37+
38+
export COMPASS_E2E_ATLAS_CLOUD_SANDBOX_DEFAULT_CONNECTIONS="{\"$ATLAS_CLOUD_TEST_CLUSTER_NAME\": $ATLAS_CLOUD_TEST_CLUSTER_CONNECTION_STRING_JSON}"
39+
echo "Cluster connections: $COMPASS_E2E_ATLAS_CLOUD_SANDBOX_DEFAULT_CONNECTIONS"

.github/workflows/bump-packages.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,5 +55,6 @@ jobs:
5555
commit-message: 'chore(release): bump package versions'
5656
branch: ci/bump-packages
5757
title: 'chore(release): bump package versions'
58+
labels: no-title-validation
5859
body: |
5960
- Bump package versions

.github/workflows/update-electron.yaml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,15 @@ jobs:
4040
run: |
4141
node scripts/update-electron.js
4242
git add .
43-
git commit --no-allow-empty -m "chore: update electron" || true
43+
git commit --no-allow-empty -m "chore(deps): update electron" || true
4444
- name: Create Pull Request
4545
id: cpr
4646
uses: peter-evans/create-pull-request@v6
4747
with:
4848
token: ${{ secrets.SVC_DEVTOOLSBOT_TOKEN }}
49-
commit-message: 'chore: update electron'
49+
commit-message: 'chore(deps): update electron'
5050
branch: ci/update-electron
51-
title: 'chore: update electron'
51+
title: 'chore(deps): update electron'
52+
labels: no-title-validation
5253
body: |
5354
- Update electron

THIRD-PARTY-NOTICES.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
The following third-party software is used by and included in **Mongodb Compass**.
2-
This document was automatically generated on Mon Oct 28 2024.
2+
This document was automatically generated on Tue Oct 29 2024.
33

44
## List of dependencies
55

@@ -248,7 +248,7 @@ Package|Version|License
248248
**[ee-first](#e2746902c758ae8a6f91ffb9618cd53717f936cb33c6323e65b6b7b24f7ebefe)**|1.1.1|MIT
249249
**[electron-dl](#e97e034c7b93c63e7a433d75f6f1de3e0668764225ebbd61dbde8d1b55d6f3b7)**|3.5.0|MIT
250250
**[electron-squirrel-startup](#09fb8168e8fda2e174f8d1a1c392ffd8f762c5637c788edd00d1e2486d060349)**|1.0.1|Apache-2.0
251-
**[electron](#b8949aa8130b5ef5da1efc84f1a58e30028db62c230eb1da216dcfd7b263f55f)**|30.5.1|MIT
251+
**[electron](#ddfad0a406da8c661d832155ebc87c378ac67db5d3c70f33126149f0084c639b)**|32.2.2|MIT
252252
**[encodeurl](#b89152db475e86531e570f87b45d8a51aa5e5d87d4cc3b960cee7b8febf1d26a)**|1.0.2|MIT
253253
**[encodeurl](#177948a319ae0aeebbd65742c53c62b37c75ec1d021afa5a188d10a7ceae6623)**|2.0.0|MIT
254254
**[end-of-stream](#fadc10994f5fa767d06fb25cfff35fb17a895daf3bc3477c782907668ed16563)**|1.4.4|MIT
@@ -476,8 +476,8 @@ Package|Version|License
476476
**[napi-build-utils](#26912b5ff7632f262d64273f99cd1a869376c5c378960e24501585e35b31054a)**|1.0.2|MIT
477477
**[negotiator](#e3856213d8f0a7d28cd4166e53ec7e2c019cb7becf4a8535097bac28d21e8579)**|0.6.3|MIT
478478
**[netmask](#2bd5b8ff7fab9adace6c38d3fd32e7328484939fdd07836635b0155d0afc35b2)**|2.0.2|MIT
479-
**[node-abi](#e95a83ce4ffe7621819fbbceed23c54f12e0e1066aad9e5b3093bbdc7c958e0b)**|3.68.0|MIT
480-
**[node-addon-api](#af9f7588524ca4e68f4efe7b24aea46d9c8004263b1d7cf3b558f86d87a163e8)**|4.3.0|MIT
479+
**[node-abi](#26b0c85ed4add770fa688d81ed25b3e4018a6114f488c70ab5b36b25cf4084d3)**|3.71.0|MIT
480+
**[node-addon-api](#75c2a47526765afc024a6641ec7b1b37935dc672a211ebdd9773d74bc43a95b4)**|6.1.0|MIT
481481
**[node-domexception](#3c25065fd2bc1b6b56856e30ac5b8f34ddae33ca87b225854f8d855b0ccabfbe)**|1.0.0|MIT
482482
**[node-fetch](#364527ef1b51cc6ac34872b931049c9e25b5014f9b40e3898c84e1a830e21720)**|2.6.7|MIT
483483
**[node-fetch](#23d7d5a419e9a25e6384dee4aa24f7162544418f0cdc2d92e94e2cf924507b8c)**|2.7.0|MIT
@@ -19215,8 +19215,8 @@ License files:
1921519215

1921619216

1921719217

19218-
<a id="b8949aa8130b5ef5da1efc84f1a58e30028db62c230eb1da216dcfd7b263f55f"></a>
19219-
### [electron](https://www.npmjs.com/package/electron) (version 30.5.1)
19218+
<a id="ddfad0a406da8c661d832155ebc87c378ac67db5d3c70f33126149f0084c639b"></a>
19219+
### [electron](https://www.npmjs.com/package/electron) (version 32.2.2)
1922019220
License tags: MIT
1922119221

1922219222
License files:
@@ -28649,8 +28649,8 @@ License files:
2864928649
License tags: MIT
2865028650

2865128651

28652-
<a id="e95a83ce4ffe7621819fbbceed23c54f12e0e1066aad9e5b3093bbdc7c958e0b"></a>
28653-
### [node-abi](https://www.npmjs.com/package/node-abi) (version 3.68.0)
28652+
<a id="26b0c85ed4add770fa688d81ed25b3e4018a6114f488c70ab5b36b25cf4084d3"></a>
28653+
### [node-abi](https://www.npmjs.com/package/node-abi) (version 3.71.0)
2865428654
License tags: MIT
2865528655

2865628656
License files:
@@ -28680,8 +28680,8 @@ License files:
2868028680

2868128681

2868228682

28683-
<a id="af9f7588524ca4e68f4efe7b24aea46d9c8004263b1d7cf3b558f86d87a163e8"></a>
28684-
### [node-addon-api](https://www.npmjs.com/package/node-addon-api) (version 4.3.0)
28683+
<a id="75c2a47526765afc024a6641ec7b1b37935dc672a211ebdd9773d74bc43a95b4"></a>
28684+
### [node-addon-api](https://www.npmjs.com/package/node-addon-api) (version 6.1.0)
2868528685
License tags: MIT
2868628686

2868728687
License files:

configs/webpack-config-compass/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
"email": "[email protected]"
1414
},
1515
"homepage": "https://github.com/mongodb-js/compass",
16-
"version": "1.4.4",
16+
"version": "1.4.5",
1717
"repository": {
1818
"type": "git",
1919
"url": "https://github.com/mongodb-js/compass.git"
@@ -68,12 +68,12 @@
6868
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.15",
6969
"babel-loader": "^8.2.5",
7070
"babel-plugin-istanbul": "^5.2.0",
71-
"browserslist": "^4.24.0",
71+
"browserslist": "^4.24.2",
7272
"chalk": "^4.1.2",
7373
"cli-progress": "^3.9.1",
7474
"core-js": "^3.17.3",
7575
"css-loader": "^4.3.0",
76-
"electron": "^30.5.1",
76+
"electron": "^32.2.2",
7777
"html-webpack-plugin": "^5.6.0",
7878
"less": "^3.13.1",
7979
"less-loader": "^10.0.1",

docs/tracking-plan.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
# Compass Tracking Plan
33

4-
Generated on Mon, Oct 28, 2024 at 12:44 PM
4+
Generated on Tue, Oct 29, 2024 at 05:29 PM
55

66
## Table of Contents
77

0 commit comments

Comments
 (0)