Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
665557f
Revert "Allow configuring the process startup method to be used for c…
fressi-elastic Aug 26, 2025
41a544a
Merge branch 'master' of github.com:elastic/rally
fressi-elastic Sep 18, 2025
0925770
Merge branch 'master' of github.com:elastic/rally
fressi-elastic Sep 29, 2025
d32aee7
Add support for Python3.13 (pass unit tests).
fressi-elastic Sep 29, 2025
dff998d
Revert unnecessary changes.
fressi-elastic Sep 30, 2025
8e4f56f
Revert unnecessary changes.
fressi-elastic Sep 30, 2025
df04aa1
Revert unnecessary changes.
fressi-elastic Sep 30, 2025
91ae14a
Update the uv.lock file.
fressi-elastic Sep 30, 2025
f2965c7
Add entries for Python v3.13 to the CI testing matrix.
fressi-elastic Sep 30, 2025
e37d7b9
It drops support for Python 3.9
fressi-elastic Sep 30, 2025
7f4fee3
Fix docs/migrate.rst
fressi-elastic Sep 30, 2025
4ca911d
Remove statement: from __future__ import annotations
fressi-elastic Sep 30, 2025
cb01f3a
Fix esrally/track/params.py and update uv.lock file.
fressi-elastic Sep 30, 2025
001f33b
Revert changes to esrally/storage/_range.py
fressi-elastic Sep 30, 2025
78d294f
Skip testing version 3.12 in buildkite pipeline.
fressi-elastic Sep 30, 2025
4f20116
Fix some other annotation and one pylint founding.
fressi-elastic Sep 30, 2025
9e217ef
Update CI python versions file.
fressi-elastic Oct 2, 2025
23e1314
Remove unnecessary changes.
fressi-elastic Oct 2, 2025
ab11c9b
Update CI python versions.
fressi-elastic Oct 2, 2025
4e06935
Set Python3.13 as the default version.
fressi-elastic Oct 2, 2025
45a9015
Let `make test` and `make it` use python 3.13
fressi-elastic Oct 2, 2025
0e9cc67
Add standard-imghdr because imghdr has been removed from python 3.13
fressi-elastic Oct 2, 2025
48f3da0
Update docker image version.
fressi-elastic Oct 2, 2025
0699feb
Use managed python version for preparing venv directory.
fressi-elastic Oct 2, 2025
8c75c66
Refactor Makefile:
fressi-elastic Oct 2, 2025
073d5f4
Add goal to run IT for serverless.
fressi-elastic Oct 2, 2025
210565c
Add goal for rally_tracks_compat
fressi-elastic Oct 2, 2025
bf47095
Fix PHONY goals.
fressi-elastic Oct 2, 2025
7ff36ad
Update python versions for mypy and black
fressi-elastic Oct 2, 2025
6cbea73
Update .buildkite pipeline files.
fressi-elastic Oct 2, 2025
e3f2857
Fix UV installation step.
fressi-elastic Oct 2, 2025
0678a19
Debug CI scripts
fressi-elastic Oct 2, 2025
6fbff06
Fix Dockerfile and CI scripts.
fressi-elastic Oct 2, 2025
d2ffdb5
Fix VENV path in Dockerfile.
fressi-elastic Oct 2, 2025
a92dbf6
Use levacy VIRTUAL_ENV as name for VENV_DIR
fressi-elastic Oct 2, 2025
5ceb63e
Force Python version when running it_serverless test cases.
fressi-elastic Oct 3, 2025
35a216f
Export PY_VERSION as an environment variable.
fressi-elastic Oct 3, 2025
930ac3a
Update uv version in Docerfile.
fressi-elastic Oct 3, 2025
caea1a3
It drops the check for max python version.
fressi-elastic Oct 4, 2025
9dea73e
Drop dependency on tox/nox.
fressi-elastic Oct 4, 2025
a08fa72
It ensures the rally plugin is installed before using for tests.
fressi-elastic Oct 4, 2025
f408e14
It renames Makefile goal rally_tracks_compat -> it_tracks_compat
fressi-elastic Oct 4, 2025
a7a0e6e
It adds some comment in the Makefile.
fressi-elastic Oct 4, 2025
9b38493
Remove unnecessary requirements and update wheel version.
fressi-elastic Oct 6, 2025
70a88c2
Update Makefile error message.
fressi-elastic Oct 6, 2025
3f943fe
Update add_missing_loggers_to_config to make it a little easier to read.
fressi-elastic Oct 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions .buildkite/it/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ agents:
machineType: "n1-standard-8"

steps:
- label: "Run 3.9 integration tests :test_tube:"
command: bash .buildkite/it/run.sh 3.9
- label: "Run 3.12 integration tests :test_tube:"
command: bash .buildkite/it/run.sh 3.12
- label: "Run 3.10 integration tests :test_tube:"
command: bash .buildkite/it/run.sh 3.10

- label: "Run 3.13 integration tests :test_tube:"
command: bash .buildkite/it/run.sh 3.13
23 changes: 14 additions & 9 deletions .buildkite/it/run.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash

set -eo pipefail
set -exo pipefail

source .buildkite/retry.sh

Expand All @@ -24,16 +24,25 @@ cat /proc/cpuinfo

echo "--- System dependencies"

PYTHON_VERSION="$1"
export PY_VERSION="$1"
retry 5 sudo add-apt-repository --yes ppa:deadsnakes/ppa
retry 5 sudo apt-get update
retry 5 sudo apt-get install -y \
"python${PYTHON_VERSION}" "python${PYTHON_VERSION}-dev" "python${PYTHON_VERSION}-venv" \
"python${PY_VERSION}" "python${PY_VERSION}-dev" "python${PY_VERSION}-venv" \
git make jq docker \
openjdk-21-jdk-headless openjdk-11-jdk-headless
export JAVA11_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export JAVA21_HOME=/usr/lib/jvm/java-21-openjdk-amd64

echo "--- Install UV"

curl -LsSf https://astral.sh/uv/install.sh | sh
source "${HOME}/.local/bin/env"

echo "--- Create virtual environment"

make venv

echo "--- Run IT test :pytest:"

export RALLY_HOME=$HOME
Expand All @@ -45,12 +54,8 @@ export THESPLOG_THRESHOLD="INFO"
export TERM=dumb
export LC_ALL=en_US.UTF-8

"python${PYTHON_VERSION}" -m venv .venv
source .venv/bin/activate

pip install nox

trap upload_logs ERR
nox -s "it-${PYTHON_VERSION}"

make it

upload_logs
25 changes: 15 additions & 10 deletions .buildkite/it/run_serverless.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash

set -eo pipefail
set -exo pipefail

source .buildkite/retry.sh

Expand All @@ -17,22 +17,26 @@ export DEBIAN_FRONTEND=noninteractive
sudo mkdir -p /etc/needrestart
echo "\$nrconf{restart} = 'a';" | sudo tee -a /etc/needrestart/needrestart.conf > /dev/null

PYTHON_VERSION="$1"
export PY_VERSION="$1"
TEST_NAME="$2"

echo "--- System dependencies"

retry 5 sudo add-apt-repository --yes ppa:deadsnakes/ppa
retry 5 sudo apt-get update
retry 5 sudo apt-get install -y \
"python${PYTHON_VERSION}" "python${PYTHON_VERSION}-dev" "python${PYTHON_VERSION}-venv" \
dnsutils # provides nslookup
"python${PY_VERSION}" "python${PY_VERSION}-dev" "python${PY_VERSION}-venv" \
make \
dnsutils # provides nslookup

echo "--- Python modules"
echo "--- Install UV"

"python${PYTHON_VERSION}" -m venv .venv
source .venv/bin/activate
pip install nox
curl -LsSf https://astral.sh/uv/install.sh | sh
source "${HOME}/.local/bin/env"

echo "--- Create virtual environment"

make venv

echo "--- Run IT serverless test \"$TEST_NAME\" :pytest:"

Expand All @@ -45,12 +49,13 @@ export THESPLOG_THRESHOLD="INFO"

trap upload_logs ERR


case $TEST_NAME in
"user")
nox -s it_serverless
make -s it_serverless
Comment on lines -50 to +55
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-s in nox has different meaning than in make, is this intentional?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is not intentional! It's a mistake.

;;
"operator")
nox -s it_serverless -- --operator
make -s it_serverless "ARGS=--operator"
;;
*)
echo "Unknown test type."
Expand Down
4 changes: 2 additions & 2 deletions .buildkite/it/serverless-pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@ steps:
- elastic/vault-secrets#v0.0.2: *vault-base_url
- elastic/vault-secrets#v0.0.2: *vault-get_credentials_endpoint
- elastic/vault-secrets#v0.0.2: *vault-api_key
command: bash .buildkite/it/run_serverless.sh 3.12 user
command: bash .buildkite/it/run_serverless.sh 3.13 user
- label: "Run IT serverless tests with operator privileges"
plugins:
- elastic/vault-secrets#v0.0.2: *vault-base_url
- elastic/vault-secrets#v0.0.2: *vault-get_credentials_endpoint
- elastic/vault-secrets#v0.0.2: *vault-api_key
command: bash .buildkite/it/run_serverless.sh 3.12 operator
command: bash .buildkite/it/run_serverless.sh 3.13 operator
12 changes: 6 additions & 6 deletions .ci/variables.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
{
"python_versions": {
"PY39": "3.9.16",
"PY310": "3.10.10",
"PY311": "3.11.7",
"PY312": "3.12.2",
"MIN_PY_VER": "3.9.16",
"DEFAULT_PY_VER": "3.12.2"
"PY310": "3.10.18",
"PY311": "3.11.13",
"PY312": "3.12.11",
"PY313": "3.13.7",
"MIN_PY_VER": "3.10.0",
"DEFAULT_PY_VER": "3.13.7"
}
}
18 changes: 9 additions & 9 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: "3.12"
python-version: "3.13"
cache: pip
cache-dependency-path: pyproject.toml
- name: "Install dependencies"
Expand All @@ -39,7 +39,7 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12"]
python-version: ["3.10", "3.11", "3.12", "3.13"]
os:
- macos-13
- ubuntu-latest
Expand All @@ -53,10 +53,10 @@ jobs:
python-version: ${{ matrix.python-version }}
cache: pip
cache-dependency-path: pyproject.toml
- name: "Install dependencies"
run: python -m pip install --upgrade nox
- name: "Install UV"
run: curl -LsSf https://astral.sh/uv/install.sh | sh
- name: "Run tests"
run: nox -s test-${{matrix.python-version}}
run: make test-${{matrix.python-version}}
- uses: elastic/es-perf-github-status@v2
if: ${{ failure() && ( github.event_name == 'schedule' || ( github.event_name == 'push' && github.ref_name == env.DEFAULT_BRANCH ) ) }}
with:
Expand All @@ -71,7 +71,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: "3.12"
python-version: "3.13"
cache: pip
cache-dependency-path: pyproject.toml
- uses: actions/setup-java@v4
Expand All @@ -80,10 +80,10 @@ jobs:
java-version: "21"
- run: echo "JAVA21_HOME=$JAVA_HOME_21_X64" >> $GITHUB_ENV
- run: echo "JAVA11_HOME=$JAVA_HOME_11_X64" >> $GITHUB_ENV
- name: "Install dependencies"
run: python -m pip install --upgrade nox
- name: "Install UV"
run: curl -LsSf https://astral.sh/uv/install.sh | sh
- name: "Run tests"
run: nox -s rally_tracks_compat
run: make it_tracks_compat
timeout-minutes: 120
env:
# elastic/endpoint fetches assets from GitHub, authenticate to avoid
Expand Down
1 change: 1 addition & 0 deletions .pylintrc
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,7 @@ disable=raw-checker-failed,
redefined-outer-name,
consider-using-f-string, # pyupgrade will cover that
use-implicit-booleaness-not-comparison,
too-many-positional-arguments,


# Enable the message, report, category or checker with the given id(s). You can
Expand Down
Loading