diff --git a/.github/workflows/authenticate_test.yml b/.github/workflows/authenticate_test.yml index 7c9643f66b..58451caa42 100644 --- a/.github/workflows/authenticate_test.yml +++ b/.github/workflows/authenticate_test.yml @@ -13,22 +13,29 @@ on: env: CARGO_TERM_COLOR: always RUST_BACKTRACE: full + DOCKER_COMPOSE_VERSION: 2.32.4 jobs: - # PasswordAuthenticator build: - timeout-minutes: 60 + name: Run Authentication tests runs-on: ubuntu-latest - services: - scylladb: - image: scylladb/scylla - command: --authenticator PasswordAuthenticator - ports: - - 9042:9042 - options: --health-cmd "cqlsh --username cassandra --password cassandra --debug" --health-interval 5s --health-retries 30 steps: - - uses: actions/checkout@v3 + - name: Checkout + uses: actions/checkout@v3 + - name: Update rust toolchain run: rustup update + + - name: Start the cluster + run: docker compose -f test/cluster/docker-compose-passauth.yml up + - name: Run tests run: RUST_LOG=trace cargo test --verbose authenticate_superuser -- custom_authentication --ignored + + - name: Stop the cluster + if: ${{ always() }} + run: docker compose -f test/cluster/docker-compose-passauth.yml stop + + - name: Print the cluster logs + if: ${{ always() }} + run: docker compose -f test/cluster/docker-compose-passauth.yml logs diff --git a/scylla/tests/integration/authenticate.rs b/scylla/tests/integration/authenticate.rs index 792d1f1ad8..55214ba65a 100644 --- a/scylla/tests/integration/authenticate.rs +++ b/scylla/tests/integration/authenticate.rs @@ -64,7 +64,7 @@ impl AuthenticatorProvider for CustomAuthenticatorProvider { #[ignore] async fn custom_authentication() { setup_tracing(); - let uri = std::env::var("SCYLLA_URI").unwrap_or_else(|_| "127.0.0.1:9042".to_string()); + let uri = std::env::var("SCYLLA_URI").unwrap_or_else(|_| "172.43.0.2:9042".to_string()); println!("Connecting to {} with cassandra superuser ...", uri); diff --git a/test/cluster/docker-compose-passauth.yml b/test/cluster/docker-compose-passauth.yml new file mode 100644 index 0000000000..6076063227 --- /dev/null +++ b/test/cluster/docker-compose-passauth.yml @@ -0,0 +1,28 @@ +networks: + public: + name: scylla_rust_driver_passauth_public + driver: bridge + ipam: + driver: default + config: + - subnet: 172.43.0.0/24 + +services: + scylla: + networks: + public: + ipv4_address: 172.43.0.2 + image: scylladb/scylla + command: | + --skip-wait-for-gossip-to-settle 0 + --ring-delay-ms 0 + --smp 1 + --memory 512M + --authenticator PasswordAuthenticator + ports: + - "9042:9042" + healthcheck: + test: [ "CMD", "cqlsh", "scylla1", "-e", "select * from system.local" ] + interval: 5s + timeout: 5s + retries: 60