Skip to content

Commit 45f36cd

Browse files
committed
Merge branch 'main' into package-allow-lists
2 parents cdce15b + 87a94bd commit 45f36cd

File tree

186 files changed

+8796
-4926
lines changed

Some content is hidden

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

186 files changed

+8796
-4926
lines changed

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

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -61,24 +61,24 @@ const PACKAGE_BUILD_VARIANTS = [
6161
];
6262
6363
const SMOKETEST_BUILD_VARIANTS = [
64-
// {
65-
// name: 'smoketest-ubuntu',
66-
// display_name: 'Smoketest Ubuntu',
67-
// run_on: 'ubuntu2004-large',
68-
// depends_on: 'package-ubuntu',
69-
// },
64+
{
65+
name: 'smoketest-ubuntu',
66+
display_name: 'Smoketest Ubuntu',
67+
run_on: 'ubuntu2004-large',
68+
depends_on: 'package-ubuntu',
69+
},
7070
{
7171
name: 'smoketest-windows',
7272
display_name: 'Smoketest Windows',
7373
run_on: 'windows-vsCurrent-large',
7474
depends_on: 'package-windows',
7575
},
76-
// {
77-
// name: 'smoketest-rhel',
78-
// display_name: 'Smoketest RHEL',
79-
// run_on: 'rhel80-large',
80-
// depends_on: 'package-rhel',
81-
// },
76+
{
77+
name: 'smoketest-rhel',
78+
display_name: 'Smoketest RHEL',
79+
run_on: 'rhel80-large',
80+
depends_on: 'package-rhel',
81+
},
8282
{
8383
name: 'smoketest-macos-x64',
8484
display_name: 'Smoketest MacOS Intel',

.evergreen/buildvariants-and-tasks.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,14 @@ buildvariants:
7676
- name: package-compass
7777
- name: package-compass-isolated
7878
- name: package-compass-readonly
79+
- name: smoketest-ubuntu-compass
80+
display_name: Smoketest Ubuntu (compass)
81+
run_on: ubuntu2004-large
82+
depends_on:
83+
- name: package-compass
84+
variant: package-ubuntu
85+
tasks:
86+
- name: smoketest-compass
7987
- name: smoketest-windows-compass
8088
display_name: Smoketest Windows (compass)
8189
run_on: windows-vsCurrent-large
@@ -84,6 +92,14 @@ buildvariants:
8492
variant: package-windows
8593
tasks:
8694
- name: smoketest-compass
95+
- name: smoketest-rhel-compass
96+
display_name: Smoketest RHEL (compass)
97+
run_on: rhel80-large
98+
depends_on:
99+
- name: package-compass
100+
variant: package-rhel
101+
tasks:
102+
- name: smoketest-compass
87103
- name: smoketest-macos-x64-compass
88104
display_name: Smoketest MacOS Intel (compass)
89105
run_on: macos-14-gui

.evergreen/functions.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -692,15 +692,15 @@ functions:
692692
npm run --unsafe-perm --workspace @mongodb-js/compass-smoke-tests start -- --package=osx_dmg --tests=time-to-first-query
693693
fi
694694
695-
#if [[ "$IS_UBUNTU" == "true" ]]; then
696-
# TODO: linux_deb
697-
# TODO: linux_tar
698-
#fi
699-
700-
#if [[ "$IS_RHEL" == "true" ]]; then
701-
# TODO: linux_rpm
702-
# TODO: rhel_tar
703-
#fi
695+
if [[ "$IS_UBUNTU" == "true" ]]; then
696+
npm run --unsafe-perm --workspace @mongodb-js/compass-smoke-tests start -- --package=linux_deb --tests=time-to-first-query
697+
npm run --unsafe-perm --workspace @mongodb-js/compass-smoke-tests start -- --package=linux_tar --tests=time-to-first-query
698+
fi
699+
700+
if [[ "$IS_RHEL" == "true" ]]; then
701+
# npm run --unsafe-perm --workspace @mongodb-js/compass-smoke-tests start -- --package=linux_rpm --tests=time-to-first-query
702+
npm run --unsafe-perm --workspace @mongodb-js/compass-smoke-tests start -- --package=linux_tar --tests=time-to-first-query
703+
fi
704704
705705
test-web-sandbox:
706706
- command: shell.exec

.evergreen/verify-artifacts.sh

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,13 @@ verify_using_gpg() {
3434
verify_using_powershell() {
3535
echo "Verifying $1 using powershell"
3636
powershell Get-AuthenticodeSignature -FilePath $ARTIFACTS_DIR/$1 > "$TMP_FILE" 2>&1
37+
38+
# Get-AuthenticodeSignature just outputs text, it doesn't exit with a non-zero
39+
# code if the file is not signed
40+
if grep -q NotSigned "$TMP_FILE"; then
41+
echo "File $1 is not signed"
42+
exit 1
43+
fi
3744
}
3845

3946
verify_using_codesign() {

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,4 @@ contact_links:
99
- name: General Questions and Inquiries
1010
url: https://www.mongodb.com/community/forums/tags/c/data/developer-tools/49/compass
1111
about: Visit our forums for public community discussion and collaboration.
12+

.github/workflows/publish-packages.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Publish
1+
name: Publish packages to npm
22
on:
33
# NOTE: avoid using the manual execution unless is the only way to fix some issue,
44
# rather retry failed jobs in case of flakes. The manual execution can potentially
@@ -59,7 +59,7 @@ jobs:
5959
6060
- name: "Publish tags"
6161
run: |
62-
npx lerna list -a --json | \
62+
npx lerna list --json | \
6363
jq -r '.[] | .name + "@" + .version' | \
6464
xargs -i sh -c "git tag -a {} -m {} || true"
6565
git push --follow-tags

.github/workflows/start-beta.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ on:
1616

1717
permissions:
1818
contents: write # To create the new branch and push it
19+
actions: write # To trigger the codeql action for the commit from which we're releasing
1920

2021
jobs:
2122
startRelease:

.github/workflows/start-ga.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ on:
1616

1717
permissions:
1818
contents: write # To create the new branch and push it
19+
actions: write # To trigger the codeql action for the commit from which we're releasing
1920

2021
jobs:
2122
startRelease:

.github/workflows/test-installers.yml

Lines changed: 172 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,126 @@ on:
2121

2222
jobs:
2323
test:
24-
name: Dummy action
25-
runs-on: ubuntu-latest
24+
name: ${{ matrix.package }} test ${{ matrix.test }} (${{ matrix.hadron-distribution }})
25+
strategy:
26+
fail-fast: false
27+
matrix:
28+
test:
29+
- time-to-first-query
30+
- auto-update-from
31+
- auto-update-to
32+
package:
33+
- osx_dmg
34+
- osx_zip
35+
- windows_zip
36+
- windows_msi
37+
- windows_setup
38+
- linux_deb
39+
# TODO: Re-enable (see https://github.com/mongodb-js/compass/actions/runs/13281152689/job/37079619474)
40+
# - linux_tar
41+
# TODO: Enable (needs a docker container)
42+
- linux_rpm
43+
hadron-distribution:
44+
- compass
45+
- compass-readonly
46+
- compass-isolated
47+
include:
48+
# MacOS
49+
- package: osx_dmg
50+
runs-on: macos-13
51+
arch: x64
52+
hadron-platform: darwin
53+
- package: osx_zip
54+
runs-on: macos-latest
55+
arch: arm64
56+
hadron-platform: darwin
57+
58+
# Windows
59+
- package: windows_zip
60+
runs-on: windows-latest
61+
arch: x64
62+
hadron-platform: windows
63+
- package: windows_msi
64+
runs-on: windows-latest
65+
arch: x64
66+
hadron-platform: windows
67+
- package: windows_setup
68+
runs-on: windows-latest
69+
arch: x64
70+
hadron-platform: windows
71+
72+
# Linux
73+
- package: linux_deb
74+
runs-on: ubuntu-latest
75+
arch: x64
76+
hadron-platform: linux
77+
# - package: linux_tar
78+
# runs-on: ubuntu-latest
79+
# arch: x64
80+
# hadron-platform: linux
81+
- package: linux_rpm
82+
runs-on: ubuntu-latest
83+
arch: x64
84+
hadron-platform: linux
85+
distro-id: rhel80
86+
post-checkout-command: |
87+
dnf install -y gcc gcc-c++ make git nss dbus xorg-x11-server-Xvfb yum-utils
88+
# Enable the devel repo to install compat-openssl11 (bringing libcrupto.so.1.1 to run mongod)
89+
dnf config-manager --set-enabled devel
90+
dnf update -y
91+
dnf install -y compat-openssl11
92+
container:
93+
image: rockylinux:9
94+
volumes:
95+
- ${{ github.workspace }}:/compass
96+
97+
# Install the update server for auto-update tests
98+
- test: auto-update-from
99+
install-update-server: true
100+
- test: auto-update-to
101+
install-update-server: true
102+
103+
exclude:
104+
# TODO: See https://github.com/mongodb-js/compass/actions/runs/13281152689/job/37079620322
105+
- package: osx_dmg
106+
test: auto-update-from
107+
# TODO: See https://github.com/mongodb-js/compass/actions/runs/13281152689/job/37079621700
108+
- package: windows_setup
109+
test: auto-update-from
110+
# Skip auto-update tests for isolated and readonly distributions for now
111+
# This is not supported by the update server we're using in the test harness
112+
- hadron-distribution: compass-isolated
113+
test: auto-update-from
114+
- hadron-distribution: compass-isolated
115+
test: auto-update-to
116+
- hadron-distribution: compass-readonly
117+
test: auto-update-from
118+
- hadron-distribution: compass-readonly
119+
test: auto-update-to
120+
# Temporary skip failing auto-update-to tests
121+
- test: auto-update-to
122+
package: osx_dmg
123+
- test: auto-update-to
124+
package: windows_zip
125+
- test: auto-update-to
126+
package: windows_msi
127+
- test: auto-update-to
128+
package: windows_setup
129+
# Waiting for https://github.com/10gen/compass-mongodb-com/pull/122 to be released
130+
- test: auto-update-to
131+
package: linux_deb
132+
- test: auto-update-to
133+
package: linux_rpm
134+
135+
# Skip time-to-first-query tests for readonly because it doesn't have editable documents
136+
# See https://github.com/mongodb-js/compass/actions/runs/13286945911/job/37097791601
137+
- hadron-distribution: compass-readonly
138+
test: time-to-first-query
139+
140+
runs-on: ${{ matrix.runs-on }}
141+
container: ${{ matrix.container }}
142+
env:
143+
DEBUG: compass:smoketests:*
26144
steps:
27145
- name: Checkout
28146
uses: actions/checkout@v2
@@ -31,6 +149,56 @@ jobs:
31149
with:
32150
node-version: 20
33151
cache: "npm"
34-
- name: Install dependencies
152+
153+
- name: Run post-checkout command
154+
if: matrix.post-checkout-command
155+
run: ${{ matrix.post-checkout-command }}
156+
157+
- name: Cache downloads
158+
uses: actions/cache@v4
159+
with:
160+
key: smoke-tests-downloads-${{ inputs.version }}-${{ runner.os }}-${{ runner.arch }}-${{ matrix.package }}
161+
path: packages/compass-smoke-tests/.downloads
162+
- name: Install dependencies and build packages
35163
run: npm ci
36-
164+
- name: Bootstrap packages
165+
run: npx lerna run bootstrap --scope @mongodb-js/compass-smoke-tests --include-dependencies
166+
167+
- name: Create GitHub App Token
168+
if: matrix.install-update-server
169+
uses: actions/create-github-app-token@v1
170+
id: app-token
171+
with:
172+
app-id: ${{ vars.DEVTOOLS_BOT_APP_ID }}
173+
private-key: ${{ secrets.DEVTOOLS_BOT_PRIVATE_KEY }}
174+
owner: 10gen
175+
repositories: compass-mongodb-com
176+
- name: Checkout Compass Update server
177+
if: matrix.install-update-server
178+
uses: actions/checkout@v4
179+
with:
180+
repository: 10gen/compass-mongodb-com
181+
token: ${{ steps.app-token.outputs.token }}
182+
# Make sure the value of GITHUB_TOKEN will not be persisted in repo's config
183+
persist-credentials: false
184+
path: compass-mongodb-com
185+
- name: Install Compass Update server
186+
if: matrix.install-update-server
187+
run: npm install --no-save --workspace packages/compass-smoke-tests ./compass-mongodb-com
188+
189+
- name: Run tests
190+
env:
191+
EVERGREEN_BUCKET_NAME: ${{ inputs.bucket_name }}
192+
EVERGREEN_BUCKET_KEY_PREFIX: ${{ inputs.bucket_key_prefix }}
193+
DEV_VERSION_IDENTIFIER: ${{ inputs.version }}
194+
HADRON_DISTRIBUTION: ${{ matrix.hadron-distribution }}
195+
PLATFORM: ${{ matrix.hadron-platform }}
196+
ARCH: ${{ matrix.arch }}
197+
# Useful to pass a "fake" DISTRO_ID environment to inform the "mongodb-download-url" package
198+
# See https://github.com/mongodb-js/devtools-shared/blob/aff66db7b7fc4f8ecaec2383fd4e8c116733a7e4/packages/download-url/src/linux-distro.ts#L14
199+
DISTRO_ID: ${{ matrix.distro-id }}
200+
# Exposing token to prevent update server from being rate limited
201+
GITHUB_TOKEN: ${{ github.token }}
202+
working-directory: packages/compass-smoke-tests
203+
# Using --skipUninstalling --skipCleanup because the runners are ephemeral
204+
run: npm start -- --package ${{ matrix.package }} --tests ${{ matrix.test }} --skipUninstall --skipCleanup

.mailmap

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,23 @@ Anna Herlihy <[email protected]> aherlihy <[email protected]>
1010
Anna Herlihy <[email protected]> anna herlihy <[email protected]>
1111
1212
Brahm Gardner <[email protected]> brahmgardner <[email protected]>
13+
1314
Fred Truman <[email protected]> Fred Truman <[email protected]>
15+
1416
Greenkeeper[bot] <[email protected]> Greenkeeper <[email protected]>
1517
1618
Irina Shestak <[email protected]> Irina Shestak <[email protected]>
1719
Irina Shestak <[email protected]> Irina Shestak <[email protected]>
1820
Irina Shestak <[email protected]> lrlna <[email protected]>
1921
Jack Mulrow <[email protected]> Jack Mulrow <[email protected]>
22+
2023
Jonathan Balsano <[email protected]> Jonathan Balsano <[email protected]>
2124
Jonathan Balsano <[email protected]> Jonathan Balsano <[email protected]>
2225
Joy Sampoonachot <[email protected]> Joy Sampoonachot <[email protected]>
2326
Joy Sampoonachot <[email protected]> Joy Sampoonachot <[email protected]>
2427
2528
Kevin Meyer <[email protected]> kevinat10gen <[email protected]>
29+
2630
Le Roux Bodenstein <[email protected]> <[email protected]>
2731
Lucas Hrabovsky <[email protected]> Lucas Hrabovsky <[email protected]>
2832
Marc Schäffner-Gurney <[email protected]> Marc Schaffner-Gurney <[email protected]>
@@ -36,6 +40,8 @@ Maurizio Casimirri <[email protected]> [email protected] <maur
3640
Maurizio Casimirri <[email protected]> mcasimir <[email protected]>
3741
Maurizio Casimirri <[email protected]> <[email protected]>
3842
Michael Rose <[email protected]> rosem <[email protected]>
43+
44+
3945
Paul Thurlow <[email protected]> Paul Thurlow <[email protected]>
4046
4147
Preston Vasquez <[email protected]> Preston Vasquez <[email protected]>
@@ -49,6 +55,7 @@ Sean Oh <[email protected]> Sean Oh <[email protected]>
4955
Sergey Petushkov <[email protected]> Sergey <[email protected]>
5056
Sergey Petushkov <[email protected]> Sergey Petushkov <[email protected]>
5157
58+
5259
snyk-bot[bot] <[email protected]> snyk-bot <[email protected]>
5360
Thomas Rueckstiess <[email protected]> Thomas Rückstieß <[email protected]>
5461
Thomas Rueckstiess <[email protected]> Thomas Rueckstiess <[email protected]>

0 commit comments

Comments
 (0)