Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
285 commits
Select commit Hold shift + click to select a range
3e413f8
Turn off cargo parallelization to see if it helps Go
jduo Oct 21, 2025
4e039e8
Install python3 on Windows
jduo Oct 22, 2025
7de89c7
Create batch file wrappers for valkey server commands
jduo Oct 22, 2025
68dacbd
Change cluster_manager.py to use where on Windows in addition to which
jduo Oct 22, 2025
60816f2
Use the full path when invokign subprocess in cluster_manager.py
jduo Oct 22, 2025
a3450dd
Handle Windows specifics in gradle and cluster_manager.py
jduo Oct 22, 2025
ac5c5e8
Change gradle to make the host for integration tests customizable
jduo Oct 22, 2025
946e92c
Change cluster integration tests to not hardcode python3
jduo Oct 22, 2025
68673bd
Fix host parameterization for integration tests
jduo Oct 22, 2025
b405c75
Fix bug in cluster_manager.py where the host parameter was unsupported
jduo Oct 22, 2025
98aeda6
Normalize log file path
jduo Oct 22, 2025
16ba1cf
spotless
jduo Oct 22, 2025
d67ff74
Normalize paths in wait_for_message
jduo Oct 22, 2025
251f315
Call cluster_manager.py using wsl
jduo Oct 22, 2025
d70f9d8
Remove normalization
jduo Oct 22, 2025
719d7f4
Increase the timeout for cluster initialization
jduo Oct 22, 2025
f0aa88f
Debugging cluster_manager.py issues on WSL
jduo Oct 22, 2025
d64e0be
Fix python syntax error
jduo Oct 22, 2025
13d9ed3
Python indentation fix
jduo Oct 22, 2025
9830fcf
Speed up cluster_manager debugging
jduo Oct 22, 2025
47f2a6c
More logging info
jduo Oct 22, 2025
dc1f8d9
Bind to 0.0.0.0 for cluster communication to work in containerized en…
jduo Oct 22, 2025
554490d
Try turning off replication
jduo Oct 22, 2025
01e89d7
Enable one replica
jduo Oct 23, 2025
e9e0303
Add cluster bus diagnostics for WSL
jduo Oct 23, 2025
1052d44
Handle slower replica syncing on WSL
jduo Oct 23, 2025
53071cc
Revert to 3 replicas as before
jduo Oct 23, 2025
f373bae
Add specialization for replica detection for WSL environments
jduo Oct 23, 2025
815fa8f
Fix cluster_manager.py argument order
jduo Oct 23, 2025
1d8a334
Spotless
jduo Oct 23, 2025
3cb51b7
Debugging replica issues
jduo Oct 24, 2025
8b2fa49
Move debugging sooner
jduo Oct 24, 2025
50efefa
Increase workflow timeout on Windows specifically
jduo Oct 24, 2025
375373c
Use the system temp directory for OpenTelemetryTests
jduo Oct 24, 2025
edc4214
More diagnostics for replica issue
jduo Oct 24, 2025
abbe526
spotless
jduo Oct 24, 2025
487972c
Fix OpenTelemetry test issue with filename
jduo Oct 24, 2025
3d21446
Track if the native lib is already loaded
jduo Oct 24, 2025
1075964
spotless
jduo Oct 24, 2025
9a061d0
More
jduo Oct 24, 2025
5686156
Run the build after optimizing WSL
jduo Oct 24, 2025
d30b5b7
Use only 1 replica to reduce resource usage
jduo Oct 24, 2025
6e77c58
More diagnostics
jduo Oct 24, 2025
1e0c609
Fix YAML syntax error
jduo Oct 24, 2025
dca3f79
Remove faulty valkey server check in optimize WSL step
jduo Oct 24, 2025
a2cc52f
Add more diagnostics for replica issue
jduo Oct 25, 2025
52c22a7
Various test fixes
jduo Oct 25, 2025
74e83f9
Optimize WSL
jduo Oct 25, 2025
7180b7a
Remove WSL-specific behavior
jduo Oct 27, 2025
3ad68c6
Add use of self-hosted external Valkey cluster and Windows runner
jduo Oct 29, 2025
513f961
Use remote administration in ValkeyCluster
jduo Oct 29, 2025
a8cc06d
Fix semgrep and use powershell instead of pwsh
jduo Oct 29, 2025
7cc130f
Fix powershell syntax error
jduo Oct 29, 2025
0d18fc9
Fix more syntax issues
jduo Oct 29, 2025
cad4eb5
Fix incorrect attempt to run Valkey locally
jduo Oct 29, 2025
ddc96a7
Fix python detection
jduo Oct 29, 2025
19549b5
Python checking
jduo Oct 29, 2025
1d37031
Fix Windows trying to run valkey locally
jduo Oct 29, 2025
1f5d2b4
Python detection
jduo Oct 29, 2025
4f76f9e
Python detection
jduo Oct 29, 2025
cd479fe
Python differs on Windows
jduo Oct 29, 2025
8a4c6ea
More python detection
jduo Oct 29, 2025
535ba04
Move windows workflow into its own github action
jduo Oct 29, 2025
af4ceb8
python detection debugging
jduo Oct 29, 2025
0e879a9
Python detection
jduo Oct 29, 2025
3bcd0cb
Fix Python installation
jduo Oct 29, 2025
d6b4b8a
Debugging python on Windows
jduo Oct 30, 2025
92f36d7
CodeQL violations
jduo Oct 30, 2025
a9c10d4
Continue after finding python on Windows
jduo Oct 30, 2025
6a35ad4
Fix host argument to be before the subcommand
jduo Oct 30, 2025
7a7218b
Skip python test
jduo Oct 30, 2025
bb13cf8
Windows python debugging
jduo Oct 30, 2025
de6358a
Fix gradle caches together
jduo Oct 30, 2025
0d61d28
Remove unneeded valkey test
jduo Oct 30, 2025
a8e390c
Fix Rust toolchain on Windows
jduo Oct 30, 2025
1c5004d
Rust toolchain
jduo Oct 30, 2025
5e0aa33
Custom Rust configuration on Windows
jduo Oct 30, 2025
9966c70
Protoc extraction on windows
jduo Oct 30, 2025
05244d8
Fix syntax issue
jduo Oct 30, 2025
674ce6a
protoc idempodency
jduo Oct 30, 2025
22dce99
Python lint fixes
jduo Oct 30, 2025
093d4c7
Windows protoc extraction fixes
jduo Oct 30, 2025
fe1e53e
Authenticate requests
jduo Oct 30, 2025
dbe1a1c
Windows protoc
jduo Oct 30, 2025
6fc48ea
Remove optimize WSL
jduo Oct 30, 2025
1a669c0
Fix pubsub and python symlink
jduo Oct 30, 2025
6eb980c
Python linting
jduo Oct 30, 2025
1957e4c
Add cargo to the PATH
jduo Oct 30, 2025
2549a05
Fix wsl in gradle
jduo Oct 30, 2025
6fb5bb6
Fix wsl in gradle
jduo Oct 30, 2025
534fa64
Don't use WSL
jduo Oct 30, 2025
bfdedf3
Install Visual Studio
jduo Oct 30, 2025
aac3f49
Fix leftover diagnostic info
jduo Oct 30, 2025
4aab4d2
Python fixes
jduo Oct 30, 2025
12a7d7d
Python linting
jduo Oct 30, 2025
a4ea6b4
Run remote_cluster-manager.py in gradle
jduo Oct 30, 2025
64cda53
Explicitly set the source code to be UTF-8 encoded since it breaks on…
jduo Oct 30, 2025
1c6e562
Debugging missing MSVC
jduo Oct 30, 2025
062fa55
Python linting errors
jduo Oct 30, 2025
844e0ae
YAMl syntax error
jduo Oct 30, 2025
35f26bb
YAML syntax issue
jduo Oct 30, 2025
b2bca14
Remove duplicated step
jduo Oct 30, 2025
e4c5b3d
Fix Windows setup
jduo Oct 30, 2025
b719443
Enforce unix line endings in spotless
jduo Oct 30, 2025
a84a439
Debugging missing link.exe
jduo Oct 30, 2025
b51e2b1
Debugging MSVC installation
jduo Oct 30, 2025
0988688
Fix --host argument in cluster_manager.py
jduo Oct 30, 2025
9372af5
Retry on missing MSVC instead of failing the job
jduo Oct 30, 2025
5fb2212
Use choclately to install MSVC
jduo Oct 30, 2025
e869f4a
Set the VPC target cluster
jduo Oct 30, 2025
b046c9b
Fix chocolately detection
jduo Oct 30, 2025
6e94f15
Improve chocolatey search
jduo Oct 30, 2025
f6bb4e1
MSVC diagnostics
jduo Oct 30, 2025
2d66bf1
Only use self-hosted runners
jduo Oct 30, 2025
d66cdf4
Debugging java installation
jduo Oct 30, 2025
02fc2c7
Install MSVC prerequisites
jduo Oct 30, 2025
0c1225d
More MSVC debugging
jduo Oct 30, 2025
84ef7bc
More debugging of missing java on Windows
jduo Oct 30, 2025
894ed27
Download Java directly if Winget isn't available
jduo Oct 30, 2025
bbd853a
Change download method on windows runner to more reliable webclient t…
jduo Oct 30, 2025
57ed3e9
Try creating an offline MSVC installer
jduo Oct 30, 2025
3768ed2
Try to use more stable WebClient
jduo Oct 30, 2025
558c22a
Diagnostics for downloads failing
jduo Oct 30, 2025
b57551f
Try WebClient
jduo Oct 30, 2025
8d065ca
Python detection
jduo Oct 30, 2025
8b44c1c
Fix wrong package name for java
jduo Oct 30, 2025
a9d11a0
Use chocolatey for python
jduo Oct 30, 2025
09f9185
Install java with chocolatey
jduo Oct 30, 2025
6f18b4f
Avoid Windows Store alias for python
jduo Oct 30, 2025
d7262ae
Python and java installation fixes
jduo Oct 30, 2025
9583c19
Remove outdated Python step
jduo Oct 30, 2025
e33ec9d
Try to fix python again
jduo Oct 30, 2025
9559c21
Explicitly install chocolatey earlier
jduo Oct 30, 2025
1a44346
Try putting chocolatey on the PATH
jduo Oct 30, 2025
1f23ccf
Diagnosing python errors
jduo Oct 30, 2025
3267d8c
Remove corrupt chocolatey installs
jduo Oct 30, 2025
092f6e1
Remove corrupt chocolatey
jduo Oct 30, 2025
c094fa3
Update PATH after chocolatey install
jduo Oct 30, 2025
62379da
Install C++ MSVC components
jduo Oct 30, 2025
c059e47
Install the C++ build tools specifically
jduo Oct 30, 2025
0ff884b
Install 2022 build tools
jduo Oct 30, 2025
52bd132
Powershell syntax error
jduo Oct 30, 2025
996a022
Debugging VS install
jduo Oct 31, 2025
1808ac3
Try manual install of VS instead of chocolatey
jduo Oct 31, 2025
f4a8f48
Cmd.exe lookup
jduo Oct 31, 2025
e92ab23
Prettier
jduo Oct 31, 2025
3012c45
Skip MSVC validation
jduo Oct 31, 2025
167a25a
Rust installation
jduo Oct 31, 2025
f9e7316
Use shell conditionally
jduo Oct 31, 2025
9b100dd
Install Rust through chocolatey
jduo Oct 31, 2025
8b0f53c
Add missing rust commands and explicitly get protoc 29.1
jduo Oct 31, 2025
79541e3
Install rust-ms to use the MSVC toolchain
jduo Oct 31, 2025
7fa64bf
Add rustfmt and clippy to the PATH
jduo Oct 31, 2025
e2ba099
Try finding link.exe and adding it to the PATH
jduo Oct 31, 2025
e158667
Remove non-ascii symbols
jduo Oct 31, 2025
84afc9a
Add Windows SDK to library PATH
jduo Oct 31, 2025
ca55833
Install the Windows SDK
jduo Oct 31, 2025
b97f3c1
Use vcvars.bat
jduo Oct 31, 2025
d44b801
Install Windows SDK with Chocolatey
jduo Oct 31, 2025
8a5399a
Caching build tools
jduo Oct 31, 2025
393a1ba
Use remote valkey for Jedis integration tests
jduo Oct 31, 2025
8f2d78a
Don't look for windows store versions of dependencies
jduo Oct 31, 2025
2cb3068
Use proper protoc path
jduo Oct 31, 2025
5dfc62f
Various build tool issues
jduo Oct 31, 2025
ed10dbf
Update the GITHUB_PATH
jduo Oct 31, 2025
2c292a0
Remote clusters in gradle
jduo Oct 31, 2025
d5bb052
Logging variables
jduo Oct 31, 2025
cb6f048
Make pubsub consistent with non-pubsub tests workflows
jduo Oct 31, 2025
1177d8d
debugging variables
jduo Oct 31, 2025
14745f8
More diagnostics
jduo Oct 31, 2025
feebd5d
Test renaming some files to see if they are used
jduo Oct 31, 2025
ac42e71
Correctly log environment
jduo Oct 31, 2025
82332e5
Avoid reinstalling chocolatey
jduo Oct 31, 2025
d670731
Consistency between pubsub and non-pubsub
jduo Oct 31, 2025
c6c2b0b
Dummy test of an existing, working repository variable
jduo Oct 31, 2025
3ba1e49
Fix dangling quote
jduo Oct 31, 2025
145b7ae
Typo
jduo Oct 31, 2025
c76f1d5
More debugging gradle
jduo Oct 31, 2025
52c7845
Add logging to remote_cluster_manager
jduo Oct 31, 2025
d2a3082
hardcode the logfile
jduo Oct 31, 2025
777c2ff
log files
jduo Oct 31, 2025
dbba146
More logging
jduo Oct 31, 2025
747ade6
Start the remote cluster on its localhost rather than 0.0.0.0
jduo Oct 31, 2025
543528c
Add installation of valkey to remote_cluster_manager.py
jduo Nov 1, 2025
eaae67c
Remove dead code
jduo Nov 1, 2025
b92a88f
Remove VPC-specific behavior
jduo Nov 1, 2025
8a317d1
Make the manager type an enum
jduo Nov 1, 2025
e5bffe6
Spotless
jduo Nov 1, 2025
5b51a1a
Quote the engine version when passing to gradle
jduo Nov 1, 2025
d6edd4c
Support TLS clusters in remote_cluster_manager.py
jduo Nov 1, 2025
5efc215
Correct the output from remote_cluster_manager.py
jduo Nov 1, 2025
aeb65cb
Rework integration tests to fail fast if the clusters failed to start
jduo Nov 1, 2025
2d0cb38
Do not run Redis 6.2 against Windows
jduo Nov 1, 2025
c2817cf
Correct issues reading TLS parameters
jduo Nov 1, 2025
320658e
Have remote_cluster_manager.py generate default certs
jduo Nov 1, 2025
914ad0a
Generate certs on the Linux server and copy them back to WIndows with…
jduo Nov 1, 2025
ab0d3d0
Speed up builds on Windows
jduo Nov 1, 2025
3332bcb
Remove use of stale --tls flag
jduo Nov 1, 2025
9fd0dd9
TLS fixes
jduo Nov 1, 2025
b44f2e9
Explicitly copy the current branch's cluster_manager.py to the remote…
jduo Nov 1, 2025
4e6bee1
Correct and standardize the endpoint listing
jduo Nov 1, 2025
e4e2fc9
Fix incorrect skipping of redis 6.2 on Linux/Mac
jduo Nov 1, 2025
9cc5baf
Fix linting issue due to rust update
jduo Nov 1, 2025
1771db2
Fixes for allowing remote connections to the started external valkey …
jduo Nov 1, 2025
7b1890e
Fix cargo formatting
jduo Nov 1, 2025
ddae28b
Don't use non-ASCII characters in source code
jduo Nov 1, 2025
e2076a6
Fix trailing whitespace in endpoint output
jduo Nov 1, 2025
2a1f195
Handle line feeds on different OSes
jduo Nov 1, 2025
338a9aa
Handle line endings correctly in gradle
jduo Nov 2, 2025
0f216d5
Try to restore Redis 6.2 runs
jduo Nov 2, 2025
e6ccc16
Use a proper cross-platform temp directory for OpenTelemetry tests
jduo Nov 2, 2025
32f2345
More logging for TLS certs
jduo Nov 2, 2025
2c906f6
Allow specifying IPs on generated certs
jduo Nov 2, 2025
1be10d2
Temporarily disable some tests for debugging
jduo Nov 2, 2025
55e00f7
Add more logging during certificate generation
jduo Nov 2, 2025
b117d7a
Add logging for debugging TLS cluster issues
jduo Nov 3, 2025
cc9d2ab
Disable TLS across nodes, only encrypt client/server
jduo Nov 3, 2025
344ec7c
Fix incorrect cluster manager being used for cleanup tasks
jduo Nov 3, 2025
e973241
Use TLS for the client port but not internally
jduo Nov 3, 2025
9222736
Turn internal cluster TLS back on
jduo Nov 3, 2025
8461a38
Fix failure to shutdown remote servers
jduo Nov 3, 2025
9d56a31
Skip tests other than TLS failures
jduo Nov 3, 2025
eb599c3
Fix gradle syntax error
jduo Nov 3, 2025
af60580
Test using --tls-port and setting --port to 0
jduo Nov 3, 2025
1c8f971
Python syntax error
jduo Nov 3, 2025
fa9fc19
Re-enable tls-cluster and add more logging
jduo Nov 3, 2025
72902ee
More logging for investigating the appearance of surprise ports
jduo Nov 3, 2025
8f66383
Test all endpoints
jduo Nov 3, 2025
7d72cc0
Check that insecure TLS works with remote clusters
jduo Nov 3, 2025
6a11c31
TLS issue debugging
jduo Nov 3, 2025
a1abdf3
Increase number of replicas to see if the problem is always the last …
jduo Nov 3, 2025
f86e6a8
Spotless
jduo Nov 3, 2025
f738946
Remove invalid test
jduo Nov 3, 2025
41302f2
Try 0 replicas and 6 masters to determine if the issue is on the last…
jduo Nov 4, 2025
4eff46d
Try sequential connections
jduo Nov 4, 2025
7684563
Test to skip the last address
jduo Nov 5, 2025
dab8235
Fix issue with only the last error in a cluster connection is reported
jduo Nov 5, 2025
2c4e354
Add TLS diagnostics
jduo Nov 5, 2025
759558f
Add more diagnostics and test the core alone
jduo Nov 5, 2025
8fee757
Update rustls
jduo Nov 5, 2025
9de5de7
Update connection + TLS-related libraries
jduo Nov 5, 2025
5a89c4f
Fix rust core test
jduo Nov 5, 2025
e420cf4
Diagnostics for verifying the certificate content
jduo Nov 5, 2025
51daf4b
Add newlines when concatenating certs
jduo Nov 6, 2025
c749b2b
Just execute one test
jduo Nov 6, 2025
7d39c5a
Log more debugging info about certs in Rust
jduo Nov 6, 2025
2d0d9f8
Explicitly copy the TLS cert rather than using clone()
jduo Nov 6, 2025
37c9eef
Call retrieve_tls_certificates on the copied data
jduo Nov 6, 2025
d6fb9d5
Test valkey-cli using cluster mode
jduo Nov 6, 2025
d8ea0ca
Log if the copied cert has line endings
jduo Nov 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
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature-request.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
name: 🚀 Feature Request
name: Feature Request
description: Suggest an idea for this project
title: "(topic): (short issue description)"
labels: [feature-request, needs-triage]
Expand Down
11 changes: 11 additions & 0 deletions .github/json_matrices/build-matrix.json
Original file line number Diff line number Diff line change
Expand Up @@ -81,5 +81,16 @@
"IMAGE": "amazonlinux:latest",
"PACKAGE_MANAGERS": [],
"languages": ["python", "node", "java", "go"]
},
{
"OS": "windows",
"NAMED_OS": "windows",
"RUNNER": ["self-hosted", "windows", "x64"],
Copy link
Collaborator

Choose a reason for hiding this comment

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

why to use self-hosted? - this is last ditch resolve when where is no runners of github

"ARCH": "x64",
"TARGET": "x86_64-pc-windows-msvc",
"PACKAGE_MANAGERS": ["maven"],
"languages": ["java"],
"run": "always",
"comment": "Self-hosted Windows runner for Java tests with remote Valkey cluster"
}
]
22 changes: 20 additions & 2 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -85,12 +85,21 @@ jobs:
- name: Install protoc compiler
if: matrix.language == 'go'
shell: bash
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
# Check if protoc is already installed with correct version
if ! command -v protoc &> /dev/null || ! protoc --version | grep -q "29.1"; then
echo "Installing protoc 29.1..."
PB_REL="https://github.com/protocolbuffers/protobuf/releases"
curl -LO $PB_REL/download/v29.1/protoc-29.1-linux-x86_64.zip

# Add authentication header if token is available
if [ -n "$GITHUB_TOKEN" ]; then
curl -H "Authorization: Bearer $GITHUB_TOKEN" -LO $PB_REL/download/v29.1/protoc-29.1-linux-x86_64.zip
Copy link
Collaborator

Choose a reason for hiding this comment

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

why needed?

else
curl -LO $PB_REL/download/v29.1/protoc-29.1-linux-x86_64.zip
fi

sudo unzip protoc-29.1-linux-x86_64.zip -d /usr/local
sudo chmod +x /usr/local/bin/protoc
else
Expand Down Expand Up @@ -125,12 +134,21 @@ jobs:
- name: Build Java/Kotlin components
if: matrix.language == 'java-kotlin'
shell: bash
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
# Check if protoc is already installed with correct version
if ! command -v protoc &> /dev/null || ! protoc --version | grep -q "29.1"; then
echo "Installing protoc 29.1..."
PB_REL="https://github.com/protocolbuffers/protobuf/releases"
curl -LO $PB_REL/download/v29.1/protoc-29.1-linux-x86_64.zip

# Add authentication header if token is available
if [ -n "$GITHUB_TOKEN" ]; then
curl -H "Authorization: Bearer $GITHUB_TOKEN" -LO $PB_REL/download/v29.1/protoc-29.1-linux-x86_64.zip
else
curl -LO $PB_REL/download/v29.1/protoc-29.1-linux-x86_64.zip
fi

sudo unzip protoc-29.1-linux-x86_64.zip -d /usr/local
sudo chmod +x /usr/local/bin/protoc
else
Expand Down
25 changes: 21 additions & 4 deletions .github/workflows/create-test-matrices/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@ inputs:
- use-self-hosted
- use-github
default: false
run-with-windows-self-hosted:
description: "Include self-hosted Windows runners"
type: boolean
default: false
containers:
description: "Run in containers"
required: true
Expand All @@ -46,12 +50,14 @@ runs:
EVENT_NAME: ${{ github.event_name }}
RUN_FULL_MATRIX: ${{ inputs.run-full-matrix }}
RUN_WITH_MACOS: ${{ inputs.run-with-macos }}
RUN_WITH_WINDOWS_SELF_HOSTED: ${{ inputs.run-with-windows-self-hosted }}
CONTAINERS: ${{ inputs.containers }}
LANGUAGE_NAME: ${{ inputs.language-name }}
run: |
echo "EVENT_NAME=$EVENT_NAME" >> $GITHUB_ENV
echo "RUN_FULL_MATRIX=$RUN_FULL_MATRIX" >> $GITHUB_ENV
echo "RUN_WITH_MACOS=$RUN_WITH_MACOS" >> $GITHUB_ENV
echo "RUN_WITH_WINDOWS_SELF_HOSTED=$RUN_WITH_WINDOWS_SELF_HOSTED" >> $GITHUB_ENV
echo "CONTAINERS=$CONTAINERS" >> $GITHUB_ENV
echo "LANGUAGE_NAME=$LANGUAGE_NAME" >> $GITHUB_ENV

Expand All @@ -63,12 +69,16 @@ runs:
echo 'Select server engines to run tests against'
if [[ "$EVENT_NAME" == "pull_request" || "$EVENT_NAME" == "push" || "$RUN_FULL_MATRIX" == "false" ]]; then
echo 'Pick engines marked as `"run": "always"` only - on PR, push or manually triggered job which does not require full matrix'
jq -c '[.[] | select(.run == "always")]' < .github/json_matrices/engine-matrix.json | awk '{ printf "engine-matrix=%s\n", $0 }' | tee -a $GITHUB_OUTPUT
ENGINES=$(jq -c '[.[] | select(.run == "always")]' < .github/json_matrices/engine-matrix.json)
Copy link
Collaborator

Choose a reason for hiding this comment

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

why isnt awk required? and why to touch it anyway?

else
echo 'Pick all engines - on cron (schedule) or if manually triggered job requires a full matrix'
jq -c . < .github/json_matrices/engine-matrix.json | awk '{ printf "engine-matrix=%s\n", $0 }' | tee -a $GITHUB_OUTPUT
ENGINES=$(jq -c . < .github/json_matrices/engine-matrix.json)
fi

# Note: Redis 6.2 exclusion for Windows is handled in the host matrix filtering
Copy link
Collaborator

Choose a reason for hiding this comment

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

we should have it here (since its the centralized script that builds the permutations) instead having it in the specific language CI script...

Copy link
Collaborator

Choose a reason for hiding this comment

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

maybe better yet - "run: always" should be removed from the engine-matrix.json for 6.2, because it is not run always anymore

# rather than globally excluding it from all platforms
echo "engine-matrix=$ENGINES" >> $GITHUB_OUTPUT

- name: Load host matrix
id: load-host-matrix
shell: bash
Expand All @@ -78,8 +88,8 @@ runs:
echo 'Select runners (VMs) to run tests on'

if [[ "$EVENT_NAME" == "pull_request" || "$EVENT_NAME" == "push" || "$RUN_FULL_MATRIX" == "false" ]]; then
echo 'Getting "always run" runners'
BASE_MATRIX=$(jq -c '[.[] | select(.run == "always")]' < .github/json_matrices/build-matrix.json)
echo 'Getting "always run" runners for this language'
BASE_MATRIX=$(jq --arg lang "$LANGUAGE_NAME" -c '[.[] | select(.run == "always" and .languages? and any(.languages[] == $lang; .) and '"$CONDITION"')]' < .github/json_matrices/build-matrix.json)
Copy link
Collaborator

Choose a reason for hiding this comment

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

why do we need to change the conditions? - it should work for java on windows as added in build-matrix.json...

else
echo 'Getting full matrix for language excluding macOS'
BASE_MATRIX=$(jq --arg lang "$LANGUAGE_NAME" -c '[.[] | select(.languages? and any(.languages[] == $lang; .) and '"$CONDITION"' and .TARGET != "aarch64-apple-darwin")]' < .github/json_matrices/build-matrix.json)
Expand All @@ -97,6 +107,13 @@ runs:
else
FINAL_MATRIX="$BASE_MATRIX"
fi

# Add Windows self-hosted runners if specified
if [[ "$RUN_WITH_WINDOWS_SELF_HOSTED" == "true" ]]; then
echo "Including self-hosted Windows runners"
WIN_RUNNERS=$(jq --arg lang "$LANGUAGE_NAME" -c '[.[] | select(.languages? and any(.languages[] == $lang; .) and '"$CONDITION"' and .TARGET == "x86_64-pc-windows-msvc" and (.RUNNER == ["self-hosted","windows","x64"]))]' < .github/json_matrices/build-matrix.json)
FINAL_MATRIX=$(echo "$FINAL_MATRIX" "$WIN_RUNNERS" | jq -sc 'add')
fi

echo "host-matrix=$(echo $FINAL_MATRIX | tr -d '\n')" >> $GITHUB_OUTPUT

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/dependabot-management.yml
Original file line number Diff line number Diff line change
Expand Up @@ -250,7 +250,7 @@ jobs:
}

// Add basic changelog information
const changelog = `## Changelog\n\nUpdated ${depName} from ${fromVersion} to ${toVersion}\n\n📋 To view detailed changes, visit the package repository or release notes.`;
const changelog = `## Changelog\n\nUpdated ${depName} from ${fromVersion} to ${toVersion}\n\n[INFO] To view detailed changes, visit the package repository or release notes.`;
Copy link
Collaborator

Choose a reason for hiding this comment

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

why required in this PR?


const newBody = `${body}\n\n${changelog}`;

Expand Down
6 changes: 6 additions & 0 deletions .github/workflows/go.yml
Original file line number Diff line number Diff line change
Expand Up @@ -152,8 +152,10 @@ jobs:

- name: Install & build & test
working-directory: go
shell: bash
env:
RC_VERSION: ${{ github.event.inputs.rc-version }}
CARGO_BUILD_JOBS: 1
Copy link
Collaborator

Choose a reason for hiding this comment

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

what for?

run: |
if [[ -n "$RC_VERSION" ]]; then
make install-tools
Expand Down Expand Up @@ -223,6 +225,8 @@ jobs:

- name: Install and run linters
working-directory: go
env:
CARGO_BUILD_JOBS: 1
run: |
make install-dev-tools install-build-tools gen-c-bindings generate-protobuf lint-ci

Expand Down Expand Up @@ -384,6 +388,7 @@ jobs:

- name: Build and test
working-directory: ./go
shell: bash
env:
RC_VERSION: ${{ github.event.inputs.rc-version }}
run: |
Expand Down Expand Up @@ -457,6 +462,7 @@ jobs:

- name: Install & build & test
working-directory: go
shell: bash
env:
RC_VERSION: ${{ github.event.inputs.rc-version }}
run: |
Expand Down
Loading
Loading