From 6c15047dca60c7ad6f1f83f248bde35a37fb18ab Mon Sep 17 00:00:00 2001 From: Nitish Tiwari Date: Fri, 29 Sep 2023 19:28:50 +0530 Subject: [PATCH 1/2] Use clone_from() as it performs better in some cases Fixes #519 --- server/src/rbac/map.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/server/src/rbac/map.rs b/server/src/rbac/map.rs index 13d558829..7afac7090 100644 --- a/server/src/rbac/map.rs +++ b/server/src/rbac/map.rs @@ -91,7 +91,10 @@ pub fn init(metadata: &StorageMetadata) { let users = metadata.users.clone(); let mut roles = metadata.roles.clone(); - *DEFAULT_ROLE.lock().unwrap() = metadata.default_role.clone(); + DEFAULT_ROLE + .lock() + .unwrap() + .clone_from(&metadata.default_role); let admin_privilege = DefaultPrivilege::Admin; let admin_permissions = RoleBuilder::from(&admin_privilege).build(); From a552187c9fa8e21092e29e346bff72da4d1c54a3 Mon Sep 17 00:00:00 2001 From: Nitish Tiwari Date: Sat, 30 Sep 2023 16:45:05 +0530 Subject: [PATCH 2/2] Update gh workflow to use new quest format --- .../docker-compose-test.yaml | 2 +- .github/workflows/integration-test.yaml | 8 +-- .github/workflows/load-test.yaml | 23 ------ docker-compose-smoke-test.yaml | 72 ------------------- 4 files changed, 5 insertions(+), 100 deletions(-) rename docker-compose-load-test.yaml => .github/docker-compose-test.yaml (99%) delete mode 100644 .github/workflows/load-test.yaml delete mode 100644 docker-compose-smoke-test.yaml diff --git a/docker-compose-load-test.yaml b/.github/docker-compose-test.yaml similarity index 99% rename from docker-compose-load-test.yaml rename to .github/docker-compose-test.yaml index 3f959c59f..2a7be46f4 100644 --- a/docker-compose-load-test.yaml +++ b/.github/docker-compose-test.yaml @@ -58,7 +58,7 @@ services: delay: 20s max_attempts: 3 - quest-load: + quest: image: ghcr.io/parseablehq/quest:main command: ["load", "http://parseable:8000", "parseableadmin", "parseableadmin", "20"] networks: diff --git a/.github/workflows/integration-test.yaml b/.github/workflows/integration-test.yaml index 5fdf3052b..24c4d1b30 100644 --- a/.github/workflows/integration-test.yaml +++ b/.github/workflows/integration-test.yaml @@ -1,4 +1,4 @@ -name: Integration tests +name: Load tests on: pull_request: @@ -11,13 +11,13 @@ on: jobs: docker-compose-test: - name: Docker Compose integration tests + name: Docker Compose based load tests runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 - name: Start compose - run: docker-compose -f docker-compose-smoke-test.yaml up --build --exit-code-from quest-smoke + run: docker-compose -f ./.github/docker-compose-test.yaml up --build --exit-code-from quest - name: Stop compose if: always() - run: docker-compose -f docker-compose-smoke-test.yaml down + run: docker-compose -f ./.github/docker-compose-test.yaml down diff --git a/.github/workflows/load-test.yaml b/.github/workflows/load-test.yaml deleted file mode 100644 index 4fe975e78..000000000 --- a/.github/workflows/load-test.yaml +++ /dev/null @@ -1,23 +0,0 @@ -name: Load tests - -on: - pull_request: - paths-ignore: - - 'docs/**' - - 'helm/**' - - 'assets/**' - - '**.md' - -jobs: - - docker-compose-test: - name: Docker Compose based load tests - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v3 - - name: Start compose - run: docker-compose -f docker-compose-load-test.yaml up --build --exit-code-from quest-load - - name: Stop compose - if: always() - run: docker-compose -f docker-compose-load-test.yaml down diff --git a/docker-compose-smoke-test.yaml b/docker-compose-smoke-test.yaml deleted file mode 100644 index 8cd564e75..000000000 --- a/docker-compose-smoke-test.yaml +++ /dev/null @@ -1,72 +0,0 @@ -version: "3.7" - -networks: - parseable-internal: - -services: - minio: - image: minio/minio:RELEASE.2023-02-10T18-48-39Z - entrypoint: - - sh - - -euc - - | - mkdir -p /tmp/minio/parseable && \ - minio server /tmp/minio - environment: - - MINIO_ROOT_USER=parseable - - MINIO_ROOT_PASSWORD=supersecret - - MINIO_UPDATE=off - ports: - - 9000 - healthcheck: - test: [ "CMD", "curl", "-f", "http://localhost:9000/minio/health/live" ] - interval: 15s - timeout: 20s - retries: 5 - networks: - - parseable-internal - - parseable: - build: - context: . - dockerfile: Dockerfile - command: ["parseable", "s3-store"] - ports: - - 8000 - environment: - - P_S3_URL=http://minio:9000 - - P_S3_ACCESS_KEY=parseable - - P_S3_SECRET_KEY=supersecret - - P_S3_REGION=us-east-1 - - P_S3_BUCKET=parseable - - P_STAGING_DIR=/tmp/data - - P_USERNAME=parseableadmin - - P_PASSWORD=parseableadmin - - P_CHECK_UPDATE=false - networks: - - parseable-internal - healthcheck: - test: [ "CMD", "curl", "-f", "http://localhost:8000/api/v1/liveness" ] - interval: 15s - timeout: 20s - retries: 5 - depends_on: - - minio - deploy: - restart_policy: - condition: on-failure - delay: 20s - max_attempts: 3 - - quest-smoke: - image: ghcr.io/parseablehq/quest:main - command: ["smoke", "http://parseable:8000", "parseableadmin", "parseableadmin"] - networks: - - parseable-internal - depends_on: - - parseable - deploy: - restart_policy: - condition: on-failure - delay: 20s - max_attempts: 3