Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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
52 changes: 51 additions & 1 deletion .github/workflows/integration-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ env:
branches:
- '**'
jobs:
build-and-run-tests:
linux-integration-tests:
strategy:
fail-fast: false
matrix:
Expand Down Expand Up @@ -52,3 +52,53 @@ jobs:
CCM_IS_SCYLLA: "true"
CCM_PATH: "./scylla-ccm"
run: npm run integration
macos-integration-tests:
strategy:
fail-fast: false
matrix:
settings:
- host: macos-15-intel
target: x86_64-apple-darwin
build: npm run build -- --target x86_64-apple-darwin
name: Build and run integration tests - ${{ matrix.settings.target }} - node@20
runs-on: ${{ matrix.settings.host }}
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: ./.github/setup
with:
host: ${{ matrix.settings.host }}
target: ${{ matrix.settings.target }}
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '8'
- name: Install ccm
# We need a copy of the repo for the ssl tests.
# When installing ccm as a package, we do not save the certificates,
# that are present in the ./ssl directory
run: |
git clone https://github.com/scylladb/scylla-ccm.git
python3 -m venv ./venv
source ./venv/bin/activate
pip install https://github.com/adespawn/scylla-ccm/archive/macos-proper-fix.zip
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Note: I'm using a fork branch at the moment: will have to get those changes merged to main

Copy link
Contributor

Choose a reason for hiding this comment

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

So let's wait until they get merged.

Copy link
Contributor

Choose a reason for hiding this comment

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

What's the status of this?

- name: Enable interfaces
# We need to manually enable the interfaces on macos
# https://github.com/scylladb/scylla-ccm?tab=readme-ov-file#requirements
run: |
sudo ifconfig lo0 alias 127.0.0.2 up
sudo ifconfig lo0 alias 127.0.0.3 up
sudo ifconfig lo0 alias 127.0.0.4 up
sudo ifconfig lo0 alias 127.0.0.5 up
sudo ifconfig lo0 alias 127.0.0.6 up
- name: Build
run: ${{ matrix.settings.build }}
shell: bash
- name: Run integration tests on cassandra
env:
CUSTOM_JAVA_HOME: __USE_JAVA_IN_PATH__
CCM_IS_SCYLLA: "false"
CCM_PATH: "./scylla-ccm"
Comment on lines +97 to +101
Copy link
Contributor

Choose a reason for hiding this comment

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

D o c u m e n t a t i o n

Copy link
Contributor

Choose a reason for hiding this comment

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

still unresolved.
What's __USE_JAVA_IN_PATH__ ???

run: |
source ./venv/bin/activate
npm run integration
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@
"napi": {
"binary-name": "scylladb-driver-alpha",
"targets": [
"x86_64-unknown-linux-gnu"
"x86_64-unknown-linux-gnu",
"x86_64-apple-darwin"
]
Comment on lines 22 to 25
Copy link
Contributor Author

Choose a reason for hiding this comment

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

A small inconsistency on may part here. For linux arm I planned to add this, when adding it to release CI. Here I added it alongside CI. Doesn't really matter if it's here or there

Copy link
Contributor

Choose a reason for hiding this comment

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

❓ Why doesn't it matter where it is: in release CI or in (regular?) CI?

},
"repository": {
Expand Down