Skip to content

Commit 1940a0b

Browse files
committed
Merge branch 'upstream-main' into acl-empty
2 parents 7d6e43a + 44e46ed commit 1940a0b

File tree

1,007 files changed

+62325
-36153
lines changed

Some content is hidden

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

1,007 files changed

+62325
-36153
lines changed

.github/CODEOWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ go.sum @ajm188 @deepthi @harshit-gangal @mattlord @rohit-nayak-ps @systay @froui
2828
/go/test/endtoend/onlineddl @rohit-nayak-ps @shlomi-noach
2929
/go/test/endtoend/messaging @mattlord @rohit-nayak-ps @derekperkins
3030
/go/test/endtoend/schemadiff @shlomi-noach @mattlord
31+
/go/test/endtoend/transaction @harshit-gangal @systay @frouioui @GuptaManan100
3132
/go/test/endtoend/*throttler* @shlomi-noach @mattlord @timvaillancourt
3233
/go/test/endtoend/vtgate @harshit-gangal @systay @frouioui
3334
/go/test/endtoend/vtorc @deepthi @shlomi-noach @GuptaManan100 @timvaillancourt

.github/workflows/assign_milestone.yml

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,27 +4,35 @@ on:
44
pull_request_target:
55
types: [opened]
66

7-
permissions: read-all
7+
permissions:
8+
pull-requests: write
9+
contents: read
810

911
env:
1012
GH_TOKEN: ${{ github.token }}
1113

1214
jobs:
1315
build:
1416
name: Assign Milestone
15-
runs-on: ubuntu-latest
16-
permissions:
17-
pull-requests: write
17+
runs-on: ubuntu-24.04
1818

1919
steps:
2020
- name: Checkout code
21-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
22-
23-
- name: Set up Go
24-
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
21+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
2522
with:
26-
go-version-file: go.mod
23+
# We must explicitly checkout the base's SHA to avoid executing any code coming from
24+
# the PR's SHA - Which would be executed in the base branch's context.
25+
# This is really important to limit any sort of pwn requests.
26+
ref: ${{ github.base_ref }}
27+
persist-credentials: 'false'
2728

2829
- name: Assign Milestone
2930
run: |
30-
gh pr edit ${{ github.event.number }} --milestone "v$(sed -n 's/.*versionName.*\"\([[:digit:]\.]*\).*\"/\1/p' ./go/vt/servenv/version.go)"
31+
# Ensure the content we sed from version.go is sanitized and match the correct format
32+
VERSION=$(sed -n 's/.*versionName.*\"\([[:digit:]\.]*\).*\"/\1/p' ./go/vt/servenv/version.go)
33+
if [[ ! "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
34+
echo "Invalid version format: $VERSION"
35+
exit 1
36+
fi
37+
38+
gh pr edit ${{ github.event.number }} --milestone "v$VERSION"

.github/workflows/auto_approve_pr.yml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,17 @@ permissions:
99
jobs:
1010
auto_approve:
1111
name: Auto Approve Pull Request
12-
runs-on: ubuntu-latest
12+
runs-on: ubuntu-24.04
1313

1414
permissions:
1515
pull-requests: write # only given on local PRs, forks run with `read` access
1616

1717
steps:
1818
- name: Checkout code
19-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
19+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
20+
with:
21+
persist-credentials: 'false'
22+
2023
- name: Auto Approve Pull Request
2124
env:
2225
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/check_label.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
check_pull_request_labels:
1010
name: Check Pull Request labels
1111
timeout-minutes: 10
12-
runs-on: ubuntu-latest
12+
runs-on: ubuntu-24.04
1313
if: github.repository == 'vitessio/vitess'
1414
steps:
1515
- name: Release Notes label

.github/workflows/check_make_vtadmin_authz_testgen.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ permissions: read-all
66
jobs:
77
build:
88
name: Check Make vtadmin_authz_testgen
9-
runs-on: ubuntu-latest
9+
runs-on: ubuntu-24.04
1010
steps:
1111
- name: Skip CI
1212
run: |
@@ -27,7 +27,9 @@ jobs:
2727
2828
- name: Check out code
2929
if: steps.skip-workflow.outputs.skip-workflow == 'false'
30-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
30+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
31+
with:
32+
persist-credentials: 'false'
3133

3234
- name: Check for changes in relevant files
3335
if: steps.skip-workflow.outputs.skip-workflow == 'false'
@@ -61,7 +63,7 @@ jobs:
6163
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.vtadmin_changes == 'true'
6264
run: |
6365
sudo apt-get update
64-
sudo apt-get install -y make unzip g++ etcd curl git wget
66+
sudo apt-get install -y make unzip g++ etcd-client etcd-server curl git wget
6567
sudo service etcd stop
6668
go mod download
6769
go install golang.org/x/tools/cmd/goimports@latest

.github/workflows/check_make_vtadmin_web_proto.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ permissions: read-all
66
jobs:
77
build:
88
name: Check Make VTAdmin Web Proto
9-
runs-on: ubuntu-latest
9+
runs-on: ubuntu-24.04
1010
steps:
1111
- name: Skip CI
1212
run: |
@@ -27,7 +27,9 @@ jobs:
2727
2828
- name: Check out code
2929
if: steps.skip-workflow.outputs.skip-workflow == 'false'
30-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
30+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
31+
with:
32+
persist-credentials: 'false'
3133

3234
- name: Check for changes in relevant files
3335
if: steps.skip-workflow.outputs.skip-workflow == 'false'
@@ -59,7 +61,7 @@ jobs:
5961
uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v4.0.3
6062
with:
6163
# node-version should match package.json
62-
node-version: '20.12.2'
64+
node-version: '22.13.1'
6365

6466
- name: Install npm dependencies
6567
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.proto_changes == 'true'

.github/workflows/close_stale_pull_requests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ permissions: read-all
99

1010
jobs:
1111
close_stale_pull_requests:
12-
runs-on: ubuntu-latest
12+
runs-on: ubuntu-24.04
1313
permissions:
1414
pull-requests: write
1515

.github/workflows/cluster_endtoend_12.yml

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,9 @@ env:
1515

1616
jobs:
1717
build:
18+
timeout-minutes: 60
1819
name: Run endtoend tests on Cluster (12)
19-
runs-on: ubuntu-latest
20+
runs-on: ubuntu-24.04
2021

2122
steps:
2223
- name: Skip CI
@@ -45,7 +46,9 @@ jobs:
4546
4647
- name: Check out code
4748
if: steps.skip-workflow.outputs.skip-workflow == 'false'
48-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
49+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
50+
with:
51+
persist-credentials: 'false'
4952

5053
- name: Check for changes in relevant files
5154
if: steps.skip-workflow.outputs.skip-workflow == 'false'
@@ -55,6 +58,7 @@ jobs:
5558
token: ''
5659
filters: |
5760
end_to_end:
61+
- 'test/config.json'
5862
- 'go/**/*.go'
5963
- 'go/vt/sidecardb/**/*.sql'
6064
- 'go/test/endtoend/onlineddl/vrepl_suite/**'
@@ -91,15 +95,25 @@ jobs:
9195
9296
- name: Get dependencies
9397
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
98+
timeout-minutes: 10
9499
run: |
95100
96101
# Get key to latest MySQL repo
97102
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A8D3785C
98103
# Setup MySQL 8.0
99-
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.32-1_all.deb
104+
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.33-1_all.deb
100105
echo mysql-apt-config mysql-apt-config/select-server select mysql-8.0 | sudo debconf-set-selections
101106
sudo DEBIAN_FRONTEND="noninteractive" dpkg -i mysql-apt-config*
102107
sudo apt-get -qq update
108+
109+
# We have to install this old version of libaio1 in case we end up testing with MySQL 5.7. See also:
110+
# https://bugs.launchpad.net/ubuntu/+source/libaio/+bug/2067501
111+
curl -L -O http://mirrors.kernel.org/ubuntu/pool/main/liba/libaio/libaio1_0.3.112-13build1_amd64.deb
112+
sudo dpkg -i libaio1_0.3.112-13build1_amd64.deb
113+
# libtinfo5 is also needed for older MySQL 5.7 builds.
114+
curl -L -O http://mirrors.kernel.org/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.1_amd64.deb
115+
sudo dpkg -i libtinfo5_6.3-2ubuntu0.1_amd64.deb
116+
103117
# Install everything else we need, and configure
104118
sudo apt-get -qq install -y mysql-server mysql-shell mysql-client make unzip g++ etcd-client etcd-server curl git wget eatmydata xz-utils libncurses6
105119

.github/workflows/cluster_endtoend_13.yml

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,9 @@ env:
1515

1616
jobs:
1717
build:
18+
timeout-minutes: 60
1819
name: Run endtoend tests on Cluster (13)
19-
runs-on: ubuntu-latest
20+
runs-on: ubuntu-24.04
2021

2122
steps:
2223
- name: Skip CI
@@ -45,7 +46,9 @@ jobs:
4546
4647
- name: Check out code
4748
if: steps.skip-workflow.outputs.skip-workflow == 'false'
48-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
49+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
50+
with:
51+
persist-credentials: 'false'
4952

5053
- name: Check for changes in relevant files
5154
if: steps.skip-workflow.outputs.skip-workflow == 'false'
@@ -55,6 +58,7 @@ jobs:
5558
token: ''
5659
filters: |
5760
end_to_end:
61+
- 'test/config.json'
5862
- 'go/**/*.go'
5963
- 'go/vt/sidecardb/**/*.sql'
6064
- 'go/test/endtoend/onlineddl/vrepl_suite/**'
@@ -91,15 +95,25 @@ jobs:
9195
9296
- name: Get dependencies
9397
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
98+
timeout-minutes: 10
9499
run: |
95100
96101
# Get key to latest MySQL repo
97102
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A8D3785C
98103
# Setup MySQL 8.0
99-
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.32-1_all.deb
104+
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.33-1_all.deb
100105
echo mysql-apt-config mysql-apt-config/select-server select mysql-8.0 | sudo debconf-set-selections
101106
sudo DEBIAN_FRONTEND="noninteractive" dpkg -i mysql-apt-config*
102107
sudo apt-get -qq update
108+
109+
# We have to install this old version of libaio1 in case we end up testing with MySQL 5.7. See also:
110+
# https://bugs.launchpad.net/ubuntu/+source/libaio/+bug/2067501
111+
curl -L -O http://mirrors.kernel.org/ubuntu/pool/main/liba/libaio/libaio1_0.3.112-13build1_amd64.deb
112+
sudo dpkg -i libaio1_0.3.112-13build1_amd64.deb
113+
# libtinfo5 is also needed for older MySQL 5.7 builds.
114+
curl -L -O http://mirrors.kernel.org/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.1_amd64.deb
115+
sudo dpkg -i libtinfo5_6.3-2ubuntu0.1_amd64.deb
116+
103117
# Install everything else we need, and configure
104118
sudo apt-get -qq install -y mysql-server mysql-shell mysql-client make unzip g++ etcd-client etcd-server curl git wget eatmydata xz-utils libncurses6
105119

.github/workflows/cluster_endtoend_15.yml

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,9 @@ env:
1515

1616
jobs:
1717
build:
18+
timeout-minutes: 60
1819
name: Run endtoend tests on Cluster (15)
19-
runs-on: ubuntu-latest
20+
runs-on: ubuntu-24.04
2021

2122
steps:
2223
- name: Skip CI
@@ -45,7 +46,9 @@ jobs:
4546
4647
- name: Check out code
4748
if: steps.skip-workflow.outputs.skip-workflow == 'false'
48-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
49+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
50+
with:
51+
persist-credentials: 'false'
4952

5053
- name: Check for changes in relevant files
5154
if: steps.skip-workflow.outputs.skip-workflow == 'false'
@@ -55,6 +58,7 @@ jobs:
5558
token: ''
5659
filters: |
5760
end_to_end:
61+
- 'test/config.json'
5862
- 'go/**/*.go'
5963
- 'go/vt/sidecardb/**/*.sql'
6064
- 'go/test/endtoend/onlineddl/vrepl_suite/**'
@@ -91,15 +95,25 @@ jobs:
9195
9296
- name: Get dependencies
9397
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
98+
timeout-minutes: 10
9499
run: |
95100
96101
# Get key to latest MySQL repo
97102
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A8D3785C
98103
# Setup MySQL 8.0
99-
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.32-1_all.deb
104+
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.33-1_all.deb
100105
echo mysql-apt-config mysql-apt-config/select-server select mysql-8.0 | sudo debconf-set-selections
101106
sudo DEBIAN_FRONTEND="noninteractive" dpkg -i mysql-apt-config*
102107
sudo apt-get -qq update
108+
109+
# We have to install this old version of libaio1 in case we end up testing with MySQL 5.7. See also:
110+
# https://bugs.launchpad.net/ubuntu/+source/libaio/+bug/2067501
111+
curl -L -O http://mirrors.kernel.org/ubuntu/pool/main/liba/libaio/libaio1_0.3.112-13build1_amd64.deb
112+
sudo dpkg -i libaio1_0.3.112-13build1_amd64.deb
113+
# libtinfo5 is also needed for older MySQL 5.7 builds.
114+
curl -L -O http://mirrors.kernel.org/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.1_amd64.deb
115+
sudo dpkg -i libtinfo5_6.3-2ubuntu0.1_amd64.deb
116+
103117
# Install everything else we need, and configure
104118
sudo apt-get -qq install -y mysql-server mysql-shell mysql-client make unzip g++ etcd-client etcd-server curl git wget eatmydata xz-utils libncurses6
105119

0 commit comments

Comments
 (0)