Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add security check before docker publish #625

Closed
wants to merge 1 commit into from
Closed

Conversation

gkorland
Copy link
Contributor

@gkorland gkorland commented Jan 24, 2025

User description

Fix #624


PR Type

Enhancement, Bug fix


Description

  • Added a security vulnerability scan step before pushing Docker images.

  • Integrated aquasecurity/trivy-action for scanning Docker images.

  • Updated the GitHub Actions workflow to ensure secure image publishing.


Changes walkthrough 📝

Relevant files
Enhancement
release-image.yml
Add security scan step to Docker workflow                               

.github/workflows/release-image.yml

  • Added a step to scan Docker images for vulnerabilities using
    aquasecurity/trivy-action.
  • Configured the scan to check for CRITICAL and HIGH severity issues.
  • Modified the workflow to push images only after passing the scan.
  • +15/-0   

    Need help?
  • Type /help how to ... in the comments thread for any questions about Qodo Merge usage.
  • Check out the documentation for more information.
  • Summary by CodeRabbit

    • Security
      • Added vulnerability scanning for Docker images before release
      • Enhanced release process with pre-push security checks

    @gkorland gkorland requested a review from dudizimber January 24, 2025 06:24
    Copy link

    vercel bot commented Jan 24, 2025

    The latest updates on your projects. Learn more about Vercel for Git ↗︎

    Name Status Preview Comments Updated (UTC)
    falkordb-browser ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jan 24, 2025 6:29am

    Copy link
    Contributor

    coderabbitai bot commented Jan 24, 2025

    Walkthrough

    The pull request modifies the GitHub Actions workflow for Docker image release by introducing a vulnerability scanning step using Trivy before pushing the image. The workflow now separates the image build and push processes, with an intermediate security scanning step. This ensures that only images passing critical and high-severity vulnerability checks are pushed to the Docker registry.

    Changes

    File Change Summary
    .github/workflows/release-image.yml Added Trivy vulnerability scanning step
    Split image build and push steps
    Configure image scan with critical and high severity filters

    Sequence Diagram

    sequenceDiagram
        participant Workflow as GitHub Actions
        participant Builder as Docker Build
        participant Scanner as Trivy
        participant Registry as DockerHub
    
        Workflow->>Builder: Build Docker image
        Builder-->>Workflow: Image built (not pushed)
        Workflow->>Scanner: Scan image for vulnerabilities
        alt Scan Passes
            Scanner-->>Workflow: No critical/high vulnerabilities
            Workflow->>Registry: Push image
        else Scan Fails
            Scanner-->>Workflow: Critical/high vulnerabilities detected
            Workflow->>Workflow: Halt deployment
        end
    
    Loading

    Poem

    🐰 A Rabbit's Release Rhyme 🐰

    In workflows where images take flight,
    Trivy scans with security's might
    Build, check, then push with care
    No vulnerabilities shall we bear!
    Safe containers, our digital delight 🔒


    Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

    ❤️ Share
    🪧 Tips

    Chat

    There are 3 ways to chat with CodeRabbit:

    • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
      • I pushed a fix in commit <commit_id>, please review it.
      • Generate unit testing code for this file.
      • Open a follow-up GitHub issue for this discussion.
    • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
      • @coderabbitai generate unit testing code for this file.
      • @coderabbitai modularize this function.
    • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
      • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
      • @coderabbitai read src/utils.ts and generate unit testing code.
      • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
      • @coderabbitai help me debug CodeRabbit configuration file.

    Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

    CodeRabbit Commands (Invoked using PR comments)

    • @coderabbitai pause to pause the reviews on a PR.
    • @coderabbitai resume to resume the paused reviews.
    • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
    • @coderabbitai full review to do a full review from scratch and review all the files again.
    • @coderabbitai summary to regenerate the summary of the PR.
    • @coderabbitai generate docstrings to generate docstrings for this PR. (Beta)
    • @coderabbitai resolve resolve all the CodeRabbit review comments.
    • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
    • @coderabbitai help to get help.

    Other keywords and placeholders

    • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
    • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
    • Add @coderabbitai anywhere in the PR title to generate the title automatically.

    CodeRabbit Configuration File (.coderabbit.yaml)

    • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
    • Please see the configuration documentation for more information.
    • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

    Documentation and Community

    • Visit our Documentation for detailed information on how to use CodeRabbit.
    • Join our Discord Community to get help, request features, and share feedback.
    • Follow us on X/Twitter for updates and announcements.

    Copy link

    PR Reviewer Guide 🔍

    Here are some key observations to aid the review process:

    🎫 Ticket compliance analysis ✅

    624 - Fully compliant

    Compliant requirements:

    • Add security vulnerability scanning before Docker image publishing
    • Scan should prevent publishing images with critical/high vulnerabilities
    • Integrate security scanning into the CI/CD pipeline
    ⏱️ Estimated effort to review: 1 🔵⚪⚪⚪⚪
    🧪 No relevant tests
    🔒 No security concerns identified
    ⚡ Recommended focus areas for review

    Workflow Efficiency

    The workflow builds the Docker image twice - once for scanning and once for pushing. Consider using the same built image for both steps to improve efficiency.

    - name: Build image
      uses: docker/build-push-action@v5
      with:
        context: .
        file: ./Dockerfile
        push: false
        tags: ${{ env.TAGS }}
    
    - name: Scan image for vulnerabilities
      uses: aquasecurity/[email protected]
      with:
        image-ref: ${{ env.TAGS }}
        format: 'table'
        exit-code: '1'
        severity: 'CRITICAL,HIGH'
    
    - name: Push image
      uses: docker/build-push-action@v5
      with:
        context: .
        push: true
        tags: ${{ env.TAGS }}

    Copy link

    PR Code Suggestions ✨

    Explore these optional code suggestions:

    CategorySuggestion                                                                                                                                    Score
    General
    Optimize Docker build workflow efficiency

    The second build step is redundant and wastes resources. Instead, use the output
    from the first build step to push the image.

    .github/workflows/release-image.yml [47-52]

     - name: Push image
       uses: docker/build-push-action@v5
       with:
    -    context: .
         push: true
         tags: ${{ env.TAGS }}
    +    load: false
    • Apply this suggestion
    Suggestion importance[1-10]: 8

    Why: The suggestion correctly identifies a significant inefficiency where the image is being built twice. Removing the redundant build step would save considerable CI/CD time and resources.

    8
    Security
    Update security scanner version

    The Trivy scanner version is outdated (0.29.0). Using an outdated scanner might miss
    recent vulnerabilities.

    .github/workflows/release-image.yml [39-40]

     - name: Scan image for vulnerabilities
    -  uses: aquasecurity/[email protected]
    +  uses: aquasecurity/trivy-action@master
    • Apply this suggestion
    Suggestion importance[1-10]: 7

    Why: Using an outdated security scanner version could miss critical vulnerabilities. The suggestion to use the latest version is important for maintaining robust security scanning.

    7

    Copy link
    Contributor

    @coderabbitai coderabbitai bot left a comment

    Choose a reason for hiding this comment

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

    Actionable comments posted: 0

    🧹 Nitpick comments (3)
    .github/workflows/release-image.yml (3)

    39-45: Update Trivy configuration for better security coverage.

    Consider the following improvements:

    1. Update Trivy to the latest version (current is 0.49.1)
    2. Include MEDIUM severity for better coverage
    3. Use 'sarif' format for better CI/CD integration and GitHub Security tab support
    -        uses: aquasecurity/[email protected]
    +        uses: aquasecurity/[email protected]
             with:
               image-ref: ${{ env.TAGS }}
    -          format: 'table'
    +          format: 'sarif'
    +          output: 'trivy-results.sarif'
               exit-code: '1'
    -          severity: 'CRITICAL,HIGH'
    +          severity: 'CRITICAL,HIGH,MEDIUM'

    47-50: Consider adding error handling for the push step.

    While the implementation is correct, consider adding error handling using continue-on-error: false and a notification step (e.g., Slack) on failure.

           - name: Push image
             uses: docker/build-push-action@v5
    +        continue-on-error: false
             with:
               context: .
               push: true
               tags: ${{ env.TAGS }}
    +      - name: Notify on failure
    +        if: failure()
    +        uses: 8398a7/action-slack@v3
    +        with:
    +          status: ${{ job.status }}
    +          fields: repo,message,commit,author,action,eventName,ref,workflow,job,took
    +        env:
    +          SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}

    38-38: Remove trailing spaces.

    The yamllint tool detected trailing spaces on lines 38 and 46.

    -          tags: ${{ env.TAGS }}    
    +          tags: ${{ env.TAGS }}
     
    -          severity: 'CRITICAL,HIGH'    
    +          severity: 'CRITICAL,HIGH'

    Also applies to: 46-46

    🧰 Tools
    🪛 yamllint (1.35.1)

    [error] 38-38: trailing spaces

    (trailing-spaces)

    📜 Review details

    Configuration used: CodeRabbit UI
    Review profile: CHILL
    Plan: Pro

    📥 Commits

    Reviewing files that changed from the base of the PR and between f8d1e06 and 4dd873d.

    📒 Files selected for processing (1)
    • .github/workflows/release-image.yml (1 hunks)
    🧰 Additional context used
    🪛 yamllint (1.35.1)
    .github/workflows/release-image.yml

    [error] 38-38: trailing spaces

    (trailing-spaces)


    [error] 46-46: trailing spaces

    (trailing-spaces)

    ⏰ Context from checks skipped due to timeout of 90000ms (1)
    • GitHub Check: test
    🔇 Additional comments (1)
    .github/workflows/release-image.yml (1)

    36-37: LGTM! Good separation of build and push steps.

    Separating the build and push steps is a good practice as it allows for intermediate validation steps.

    Copy link

    CI Feedback 🧐

    A test triggered by this PR failed. Here is an AI-generated analysis of the failure:

    Action: test

    Failed stage: Run Playwright tests with detailed reporting [❌]

    Failed test name: settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API

    Failure summary:

    The action failed due to test failures in the Settings Tests suite:

  • The test "@admin Modify MAX_INFO_QUERIES via UI validation via API" failed in both Chromium and
    Firefox browsers
  • The test expected the input value "20" to match the actual value but they were not equal
  • The test also failed when trying to set MAX_INFO_QUERIES to "0" via API validation
  • The failures occurred in the assertion: expect(value === input).toBe(expected)

  • Relevant error logs:
    1:  ##[group]Operating System
    2:  Ubuntu
    ...
    
    1541:  - Network:      http://10.1.0.145:3000
    1542:  ✓ Starting...
    1543:  ⚠ "next start" does not work with "output: standalone" configuration. Use "node .next/standalone/server.js" instead.
    1544:  ✓ Ready in 349ms
    1545:  Running 191 tests using 1 worker
    1546:  Running 191 tests using 1 worker
    1547:  [next-auth][warn][NEXTAUTH_URL] 
    1548:  https://next-auth.js.org/warnings#nextauth_url
    1549:  TypeError: Cannot read properties of null (reading '1')
    1550:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1551:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1552:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1553:  at async p (.next/server/app/api/user/route.js:1:2243)
    1554:  TypeError: Cannot read properties of null (reading '1')
    1555:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1556:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1557:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1558:  at async p (.next/server/app/api/user/route.js:1:2243)
    1559:  ·  ✓  1 [setup] › auth.setup.ts:12:6 › admin authentication (6.0s)
    1560:  [Error: NOPERM User readwriteuser has no permissions to run the 'acl|getuser' command]
    1561:  [Error: ERR wrong number of arguments for 'graph.QUERY' command]
    1562:  ·  ✓  2 [setup] › auth.setup.ts:36:10 › readwrite authentication (1.9s)
    1563:  [Error: NOPERM User readonlyuser has no permissions to run the 'acl|getuser' command]
    1564:  [Error: NOPERM User readonlyuser has no permissions to run the 'graph.QUERY' command]
    ...
    
    1568:  ·  ✓  6 [[Admin] Chromium] › graph.spec.ts:50:13 › Graph Tests › @admin Create graph -> click the Export Data button -> verify the file has been successfully downloaded (1.3s)
    1569:  ·  ✓  7 [[Admin] Chromium] › graph.spec.ts:61:13 › Graph Tests › @admin Query Test: Create a graph via api -> run a query via api and validate that the response data is correct (22ms)
    1570:  ·  ✓  8 [[Admin] Chromium] › navBar.spec.ts:20:13 › Navbar tests › @admin Verify clicking on FalkorDB logo redirects to specified URL (1.6s)
    1571:  ·  ✓  9 [[Admin] Chromium] › navBar.spec.ts:29:13 › Navbar tests › @admin Verify clicking on Graphs button redirects to specified URL (1.1s)
    1572:  ·  ✓  10 [[Admin] Chromium] › navBar.spec.ts:39:13 › Navbar tests › @admin Verify clicking on Schemas button redirects to specified URL (2.1s)
    1573:  ·  ✓  11 [[Admin] Chromium] › navBar.spec.ts:49:13 › Navbar tests › @admin Verify clicking on help -> Documentation redirects to specified URL (1.2s)
    1574:  ·  ✓  12 [[Admin] Chromium] › navBar.spec.ts:58:13 › Navbar tests › @admin Verify clicking on help -> Support redirects to specified URL (1.3s)
    1575:  ·  ✓  13 [[Admin] Chromium] › navBar.spec.ts:67:13 › Navbar tests › @admin Verify clicking on Settings redirects to specified URL (1.1s)
    1576:  [Error: Failed to set config value MAX_QUEUED_QUERIES to NaN]
    1577:  ·  ✓  14 [[Admin] Chromium] › settingsConfig.spec.ts:21:13 › Settings Tests › @admin Modify MAX_QUEUED_QUERIES via API validation via UI: Input value: aa description: invalid input - character (2.5s)
    1578:  [Error: Failed to set config value MAX_QUEUED_QUERIES to -3]
    1579:  ·  ✓  15 [[Admin] Chromium] › settingsConfig.spec.ts:21:13 › Settings Tests › @admin Modify MAX_QUEUED_QUERIES via API validation via UI: Input value: -3 description: invalid input - negative number (2.2s)
    1580:  [Error: Failed to set config value MAX_QUEUED_QUERIES to 0]
    1581:  ·  ✓  16 [[Admin] Chromium] › settingsConfig.spec.ts:21:13 › Settings Tests › @admin Modify MAX_QUEUED_QUERIES via API validation via UI: Input value: 00-1 description: invalid input (2.2s)
    1582:  ·  ✓  17 [[Admin] Chromium] › settingsConfig.spec.ts:21:13 › Settings Tests › @admin Modify MAX_QUEUED_QUERIES via API validation via UI: Input value: 1 description: valid input (2.2s)
    1583:  [Error: Failed to set config value MAX_QUEUED_QUERIES to 0]
    1584:  ·  ✓  18 [[Admin] Chromium] › settingsConfig.spec.ts:21:13 › Settings Tests › @admin Modify MAX_QUEUED_QUERIES via API validation via UI: Input value: 0 description: invalid input - zero value (2.2s)
    1585:  [Error: Failed to set config value TIMEOUT_MAX to NaN]
    1586:  ·  ✓  19 [[Admin] Chromium] › settingsConfig.spec.ts:33:13 › Settings Tests › @admin Modify TIMEOUT_MAX via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1587:  [Error: Failed to set config value TIMEOUT_MAX to -3]
    1588:  ·  ✓  20 [[Admin] Chromium] › settingsConfig.spec.ts:33:13 › Settings Tests › @admin Modify TIMEOUT_MAX via API validation via UI: Input value: -3 description: invalid input - negative number (1.2s)
    1589:  ·  ✓  21 [[Admin] Chromium] › settingsConfig.spec.ts:33:13 › Settings Tests › @admin Modify TIMEOUT_MAX via API validation via UI: Input value: 00-1 description: invalid input (1.2s)
    1590:  ·  ✓  22 [[Admin] Chromium] › settingsConfig.spec.ts:33:13 › Settings Tests › @admin Modify TIMEOUT_MAX via API validation via UI: Input value: 30 description: valid input (1.2s)
    1591:  [Error: Failed to set config value TIMEOUT_DEFAULT to NaN]
    1592:  ·  ✓  23 [[Admin] Chromium] › settingsConfig.spec.ts:44:13 › Settings Tests › @admin Modify TIMEOUT_DEFAULT via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1593:  [Error: Failed to set config value TIMEOUT_DEFAULT to -3]
    1594:  ·  ✓  24 [[Admin] Chromium] › settingsConfig.spec.ts:44:13 › Settings Tests › @admin Modify TIMEOUT_DEFAULT via API validation via UI: Input value: -3 description: invalid input - negative number (1.2s)
    1595:  ·  ✓  25 [[Admin] Chromium] › settingsConfig.spec.ts:44:13 › Settings Tests › @admin Modify TIMEOUT_DEFAULT via API validation via UI: Input value: 00-1 description: invalid input (1.2s)
    1596:  ·  ✓  26 [[Admin] Chromium] › settingsConfig.spec.ts:44:13 › Settings Tests › @admin Modify TIMEOUT_DEFAULT via API validation via UI: Input value: 1 description: valid input (1.2s)
    1597:  ·  ✓  27 [[Admin] Chromium] › settingsConfig.spec.ts:44:13 › Settings Tests › @admin Modify TIMEOUT_DEFAULT via API validation via UI: Input value: 0 description: valid input - zero value (1.2s)
    1598:  [Error: Failed to set config value RESULTSET_SIZE to NaN]
    1599:  ·  ✓  28 [[Admin] Chromium] › settingsConfig.spec.ts:55:13 › Settings Tests › @admin Modify RESULTSET_SIZE via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1600:  ·  ✓  29 [[Admin] Chromium] › settingsConfig.spec.ts:55:13 › Settings Tests › @admin Modify RESULTSET_SIZE via API validation via UI: Input value: -3 description: invalid input - negative number (1.2s)
    1601:  ·  ✓  30 [[Admin] Chromium] › settingsConfig.spec.ts:55:13 › Settings Tests › @admin Modify RESULTSET_SIZE via API validation via UI: Input value: 00-1 description: invalid input (1.2s)
    1602:  ·  ✓  31 [[Admin] Chromium] › settingsConfig.spec.ts:55:13 › Settings Tests › @admin Modify RESULTSET_SIZE via API validation via UI: Input value: 1 description: valid input (1.2s)
    1603:  ·  ✓  32 [[Admin] Chromium] › settingsConfig.spec.ts:55:13 › Settings Tests › @admin Modify RESULTSET_SIZE via API validation via UI: Input value: 0 description: valid input - zero value (1.2s)
    1604:  [Error: Failed to set config value QUERY_MEM_CAPACITY to NaN]
    1605:  ·  ✓  33 [[Admin] Chromium] › settingsConfig.spec.ts:66:13 › Settings Tests › @admin Modify QUERY_MEM_CAPACITY via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1606:  [Error: Failed to set config value QUERY_MEM_CAPACITY to -3]
    1607:  ·  ✓  34 [[Admin] Chromium] › settingsConfig.spec.ts:66:13 › Settings Tests › @admin Modify QUERY_MEM_CAPACITY via API validation via UI: Input value: -3 description: invalid input - negative number (1.2s)
    1608:  ·  ✓  35 [[Admin] Chromium] › settingsConfig.spec.ts:66:13 › Settings Tests › @admin Modify QUERY_MEM_CAPACITY via API validation via UI: Input value: 00-1 description: invalid input (1.2s)
    1609:  ·  ✓  36 [[Admin] Chromium] › settingsConfig.spec.ts:66:13 › Settings Tests › @admin Modify QUERY_MEM_CAPACITY via API validation via UI: Input value: 1 description: valid input (1.2s)
    1610:  ·  ✓  37 [[Admin] Chromium] › settingsConfig.spec.ts:66:13 › Settings Tests › @admin Modify QUERY_MEM_CAPACITY via API validation via UI: Input value: 0 description: valid input - zero value (1.2s)
    1611:  [Error: Failed to set config value VKEY_MAX_ENTITY_COUNT to NaN]
    1612:  ·  ✓  38 [[Admin] Chromium] › settingsConfig.spec.ts:78:13 › Settings Tests › @admin Modify VKEY_MAX_ENTITY_COUNT via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1613:  [Error: Failed to set config value VKEY_MAX_ENTITY_COUNT to -3]
    1614:  ·  ✓  39 [[Admin] Chromium] › settingsConfig.spec.ts:78:13 › Settings Tests › @admin Modify VKEY_MAX_ENTITY_COUNT via API validation via UI: Input value: -3 description: invalid input - negative number (1.2s)
    1615:  ·  ✓  40 [[Admin] Chromium] › settingsConfig.spec.ts:78:13 › Settings Tests › @admin Modify VKEY_MAX_ENTITY_COUNT via API validation via UI: Input value: 00-1 description: invalid input (1.2s)
    1616:  ·  ✓  41 [[Admin] Chromium] › settingsConfig.spec.ts:78:13 › Settings Tests › @admin Modify VKEY_MAX_ENTITY_COUNT via API validation via UI: Input value: 1 description: valid input (1.2s)
    1617:  ·  ✓  42 [[Admin] Chromium] › settingsConfig.spec.ts:78:13 › Settings Tests › @admin Modify VKEY_MAX_ENTITY_COUNT via API validation via UI: Input value: 0 description: valid input - zero value (1.2s)
    1618:  [Error: Failed to set config value CMD_INFO to aa]
    1619:  ·  ✓  43 [[Admin] Chromium] › settingsConfig.spec.ts:89:13 › Settings Tests › @admin Modify CMD_INFO via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1620:  [Error: Failed to set config value CMD_INFO to -3]
    1621:  ·  ✓  44 [[Admin] Chromium] › settingsConfig.spec.ts:89:13 › Settings Tests › @admin Modify CMD_INFO via API validation via UI: Input value: -3 description: invalid input - negative number (1.2s)
    1622:  [Error: Failed to set config value CMD_INFO to 00-1]
    1623:  ·  ✓  45 [[Admin] Chromium] › settingsConfig.spec.ts:89:13 › Settings Tests › @admin Modify CMD_INFO via API validation via UI: Input value: 00-1 description: invalid input (1.2s)
    1624:  [Error: Failed to set config value CMD_INFO to 10s]
    1625:  ·  ✓  46 [[Admin] Chromium] › settingsConfig.spec.ts:89:13 › Settings Tests › @admin Modify CMD_INFO via API validation via UI: Input value: 10s description: invalid input (1.2s)
    1626:  ·  ✓  47 [[Admin] Chromium] › settingsConfig.spec.ts:89:13 › Settings Tests › @admin Modify CMD_INFO via API validation via UI: Input value: no description: valid input - no value (1.2s)
    1627:  ·  ✓  48 [[Admin] Chromium] › settingsConfig.spec.ts:89:13 › Settings Tests › @admin Modify CMD_INFO via API validation via UI: Input value: yes description: valid input - yes value (1.2s)
    1628:  [Error: Failed to set config value MAX_INFO_QUERIES to NaN]
    1629:  ·  ✓  49 [[Admin] Chromium] › settingsConfig.spec.ts:100:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1630:  [Error: Failed to set config value MAX_INFO_QUERIES to -3]
    ...
    
    1638:  ·  ✓  57 [[Admin] Chromium] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify TIMEOUT_DEFAULT via UI validation via API: Input value: 10 description: modify defaultTimeOut (710ms)
    1639:  ·  ✓  58 [[Admin] Chromium] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify RESULTSET_SIZE via UI validation via API: Input value: 20 description: modify resultSetSize (721ms)
    1640:  ·  ✓  59 [[Admin] Chromium] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify QUERY_MEM_CAPACITY via UI validation via API: Input value: 20 description: modify queryMemCapacity (741ms)
    1641:  ·  ✓  60 [[Admin] Chromium] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify VKEY_MAX_ENTITY_COUNT via UI validation via API: Input value: 20 description: modify vKeyMaxEntityCount (714ms)
    1642:  ·  ✓  61 [[Admin] Chromium] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify CMD_INFO via UI validation via API: Input value: yes description: modify cmdInfo (725ms)
    1643:  ×  ✘  62 [[Admin] Chromium] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries (740ms)
    1644:  ×  ✘  63 [[Admin] Chromium] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries (retry #1) (1.1s)
    1645:  F  ✘  64 [[Admin] Chromium] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries (retry #2) (1.0s)
    1646:  TypeError: Cannot read properties of null (reading '1')
    1647:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1648:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1649:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1650:  at async p (.next/server/app/api/user/route.js:1:2243)
    1651:  ·  ✓  65 [[Admin] Chromium] › settingsUsers.spec.ts:19:9 › Settings Tests › @admin Add one new user -> validating user exists in the users list (2.8s)
    1652:  TypeError: Cannot read properties of null (reading '1')
    1653:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1654:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1655:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1656:  at async p (.next/server/app/api/user/route.js:1:2243)
    1657:  ·  ✓  66 [[Admin] Chromium] › settingsUsers.spec.ts:29:9 › Settings Tests › @admin Add one user -> remove one user -> Validate that the user has been removed (3.1s)
    1658:  TypeError: Cannot read properties of null (reading '1')
    1659:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1660:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1661:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1662:  at async p (.next/server/app/api/user/route.js:1:2243)
    1663:  ·  ✓  67 [[Admin] Chromium] › settingsUsers.spec.ts:44:9 › Settings Tests › @admin Add one user -> change the role -> Validate that the user role have been changed (4.0s)
    1664:  TypeError: Cannot read properties of null (reading '1')
    1665:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1666:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1667:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1668:  at async p (.next/server/app/api/user/route.js:1:2243)
    1669:  TypeError: Cannot read properties of null (reading '1')
    1670:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1671:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1672:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1673:  at async p (.next/server/app/api/user/route.js:1:2243)
    1674:  ·  ✓  68 [[Admin] Chromium] › settingsUsers.spec.ts:59:9 › Settings Tests › @admin Add two users -> change their roles via checkbox -> Validate that the users roles have been changed (6.4s)
    1675:  TypeError: Cannot read properties of null (reading '1')
    1676:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1677:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1678:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1679:  at async p (.next/server/app/api/user/route.js:1:2243)
    1680:  TypeError: Cannot read properties of null (reading '1')
    ...
    
    1685:  ·  ✓  69 [[Admin] Chromium] › settingsUsers.spec.ts:80:9 › Settings Tests › @admin Add two users -> delete the two users by checkbox -> Validate that the users have been deleted (6.3s)
    1686:  ·  ✓  70 [[Admin] Chromium] › settingsUsers.spec.ts:109:13 › Settings Tests › @admin Enter password for new user: Test123 reason: short password  (2.9s)
    1687:  ·  ✓  71 [[Admin] Chromium] › settingsUsers.spec.ts:109:13 › Settings Tests › @admin Enter password for new user: Test1234 reason: without special character  (2.9s)
    1688:  ·  ✓  72 [[Admin] Chromium] › settingsUsers.spec.ts:109:13 › Settings Tests › @admin Enter password for new user: Testtes@ reason: without digits  (2.9s)
    1689:  ·  ✓  73 [[Admin] Chromium] › settingsUsers.spec.ts:109:13 › Settings Tests › @admin Enter password for new user: TESTES1@ reason: without lowercase letters  (2.9s)
    1690:  ·  ✓  74 [[Admin] Chromium] › settingsUsers.spec.ts:109:13 › Settings Tests › @admin Enter password for new user: testte1@ reason: without uppercase letters  (2.9s)
    1691:  ·  ✓  75 [[Admin] Chromium] › settingsUsers.spec.ts:109:13 › Settings Tests › @admin Enter password for new user:  reason: without password  (3.0s)
    1692:  ·  ✓  76 [[Admin] Chromium] › settingsUsers.spec.ts:121:9 › Settings Tests › @admin Attempt to add a user without assigning a role -> Verify that the user has not been added (2.9s)
    1693:  [Error: ERR The 'default' user cannot be removed]
    1694:  ·  ✓  77 [[Admin] Chromium] › settingsUsers.spec.ts:132:9 › Settings Tests › @admin Attempt to delete the default admin user -> Verify that the user has not been deleted. (735ms)
    1695:  TypeError: Cannot read properties of null (reading '1')
    1696:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1697:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1698:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1699:  at async p (.next/server/app/api/user/route.js:1:2243)
    1700:  Error: Missing parameters
    1701:  at p (.next/server/app/api/user/route.js:1:2208)
    1702:  ·  ✓  78 [[Admin] Chromium] › settingsUsers.spec.ts:140:9 › Settings Tests › @admin API Test:Add user via API -> Validated user existing via API -> Delete user via API. (38ms)
    1703:  Error: Missing parameters
    1704:  at p (.next/server/app/api/user/route.js:1:2208)
    1705:  ·  ✓  79 [[Admin] Chromium] › settingsUsers.spec.ts:150:9 › Settings Tests › @admin API Test: without passing a username, Attempt to add a user and validate the user was not added (13ms)
    1706:  Error: Missing parameters
    1707:  at p (.next/server/app/api/user/route.js:1:2208)
    1708:  ·  ✓  80 [[Admin] Chromium] › settingsUsers.spec.ts:159:9 › Settings Tests › @admin API Test: without passing a role, Attempt to add a user and validate the user was not added (13ms)
    1709:  Error: Missing parameters
    ...
    
    1715:  ·  ✓  85 [[Admin] Firefox] › graph.spec.ts:50:13 › Graph Tests › @admin Create graph -> click the Export Data button -> verify the file has been successfully downloaded (1.3s)
    1716:  ·  ✓  86 [[Admin] Firefox] › graph.spec.ts:61:13 › Graph Tests › @admin Query Test: Create a graph via api -> run a query via api and validate that the response data is correct (22ms)
    1717:  ·  ✓  87 [[Admin] Firefox] › navBar.spec.ts:20:13 › Navbar tests › @admin Verify clicking on FalkorDB logo redirects to specified URL (1.6s)
    1718:  ·  ✓  88 [[Admin] Firefox] › navBar.spec.ts:29:13 › Navbar tests › @admin Verify clicking on Graphs button redirects to specified URL (1.1s)
    1719:  ·  ✓  89 [[Admin] Firefox] › navBar.spec.ts:39:13 › Navbar tests › @admin Verify clicking on Schemas button redirects to specified URL (2.0s)
    1720:  ·  ✓  90 [[Admin] Firefox] › navBar.spec.ts:49:13 › Navbar tests › @admin Verify clicking on help -> Documentation redirects to specified URL (1.1s)
    1721:  ·  ✓  91 [[Admin] Firefox] › navBar.spec.ts:58:13 › Navbar tests › @admin Verify clicking on help -> Support redirects to specified URL (1.2s)
    1722:  ·  ✓  92 [[Admin] Firefox] › navBar.spec.ts:67:13 › Navbar tests › @admin Verify clicking on Settings redirects to specified URL (1.0s)
    1723:  [Error: Failed to set config value MAX_QUEUED_QUERIES to NaN]
    1724:  ·  ✓  93 [[Admin] Firefox] › settingsConfig.spec.ts:21:13 › Settings Tests › @admin Modify MAX_QUEUED_QUERIES via API validation via UI: Input value: aa description: invalid input - character (2.4s)
    1725:  [Error: Failed to set config value MAX_QUEUED_QUERIES to -3]
    1726:  ·  ✓  94 [[Admin] Firefox] › settingsConfig.spec.ts:21:13 › Settings Tests › @admin Modify MAX_QUEUED_QUERIES via API validation via UI: Input value: -3 description: invalid input - negative number (2.2s)
    1727:  [Error: Failed to set config value MAX_QUEUED_QUERIES to 0]
    1728:  ·  ✓  95 [[Admin] Firefox] › settingsConfig.spec.ts:21:13 › Settings Tests › @admin Modify MAX_QUEUED_QUERIES via API validation via UI: Input value: 00-1 description: invalid input (2.2s)
    1729:  ·  ✓  96 [[Admin] Firefox] › settingsConfig.spec.ts:21:13 › Settings Tests › @admin Modify MAX_QUEUED_QUERIES via API validation via UI: Input value: 1 description: valid input (2.2s)
    1730:  [Error: Failed to set config value MAX_QUEUED_QUERIES to 0]
    1731:  ·  ✓  97 [[Admin] Firefox] › settingsConfig.spec.ts:21:13 › Settings Tests › @admin Modify MAX_QUEUED_QUERIES via API validation via UI: Input value: 0 description: invalid input - zero value (2.2s)
    1732:  [Error: Failed to set config value TIMEOUT_MAX to NaN]
    1733:  ·  ✓  98 [[Admin] Firefox] › settingsConfig.spec.ts:33:13 › Settings Tests › @admin Modify TIMEOUT_MAX via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1734:  [Error: Failed to set config value TIMEOUT_MAX to -3]
    1735:  ·  ✓  99 [[Admin] Firefox] › settingsConfig.spec.ts:33:13 › Settings Tests › @admin Modify TIMEOUT_MAX via API validation via UI: Input value: -3 description: invalid input - negative number (1.2s)
    1736:  ·  ✓  100 [[Admin] Firefox] › settingsConfig.spec.ts:33:13 › Settings Tests › @admin Modify TIMEOUT_MAX via API validation via UI: Input value: 00-1 description: invalid input (1.2s)
    1737:  ·  ✓  101 [[Admin] Firefox] › settingsConfig.spec.ts:33:13 › Settings Tests › @admin Modify TIMEOUT_MAX via API validation via UI: Input value: 30 description: valid input (1.2s)
    1738:  [Error: Failed to set config value TIMEOUT_DEFAULT to NaN]
    1739:  ·  ✓  102 [[Admin] Firefox] › settingsConfig.spec.ts:44:13 › Settings Tests › @admin Modify TIMEOUT_DEFAULT via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1740:  [Error: Failed to set config value TIMEOUT_DEFAULT to -3]
    1741:  ·  ✓  103 [[Admin] Firefox] › settingsConfig.spec.ts:44:13 › Settings Tests › @admin Modify TIMEOUT_DEFAULT via API validation via UI: Input value: -3 description: invalid input - negative number (1.2s)
    1742:  ·  ✓  104 [[Admin] Firefox] › settingsConfig.spec.ts:44:13 › Settings Tests › @admin Modify TIMEOUT_DEFAULT via API validation via UI: Input value: 00-1 description: invalid input (1.2s)
    1743:  ·  ✓  105 [[Admin] Firefox] › settingsConfig.spec.ts:44:13 › Settings Tests › @admin Modify TIMEOUT_DEFAULT via API validation via UI: Input value: 1 description: valid input (1.2s)
    1744:  ·  ✓  106 [[Admin] Firefox] › settingsConfig.spec.ts:44:13 › Settings Tests › @admin Modify TIMEOUT_DEFAULT via API validation via UI: Input value: 0 description: valid input - zero value (1.2s)
    1745:  [Error: Failed to set config value RESULTSET_SIZE to NaN]
    1746:  ·  ✓  107 [[Admin] Firefox] › settingsConfig.spec.ts:55:13 › Settings Tests › @admin Modify RESULTSET_SIZE via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1747:  ·  ✓  108 [[Admin] Firefox] › settingsConfig.spec.ts:55:13 › Settings Tests › @admin Modify RESULTSET_SIZE via API validation via UI: Input value: -3 description: invalid input - negative number (1.2s)
    1748:  ·  ✓  109 [[Admin] Firefox] › settingsConfig.spec.ts:55:13 › Settings Tests › @admin Modify RESULTSET_SIZE via API validation via UI: Input value: 00-1 description: invalid input (1.2s)
    1749:  ·  ✓  110 [[Admin] Firefox] › settingsConfig.spec.ts:55:13 › Settings Tests › @admin Modify RESULTSET_SIZE via API validation via UI: Input value: 1 description: valid input (1.2s)
    1750:  ·  ✓  111 [[Admin] Firefox] › settingsConfig.spec.ts:55:13 › Settings Tests › @admin Modify RESULTSET_SIZE via API validation via UI: Input value: 0 description: valid input - zero value (1.2s)
    1751:  [Error: Failed to set config value QUERY_MEM_CAPACITY to NaN]
    1752:  ·  ✓  112 [[Admin] Firefox] › settingsConfig.spec.ts:66:13 › Settings Tests › @admin Modify QUERY_MEM_CAPACITY via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1753:  [Error: Failed to set config value QUERY_MEM_CAPACITY to -3]
    1754:  ·  ✓  113 [[Admin] Firefox] › settingsConfig.spec.ts:66:13 › Settings Tests › @admin Modify QUERY_MEM_CAPACITY via API validation via UI: Input value: -3 description: invalid input - negative number (1.2s)
    1755:  ·  ✓  114 [[Admin] Firefox] › settingsConfig.spec.ts:66:13 › Settings Tests › @admin Modify QUERY_MEM_CAPACITY via API validation via UI: Input value: 00-1 description: invalid input (1.2s)
    1756:  ·  ✓  115 [[Admin] Firefox] › settingsConfig.spec.ts:66:13 › Settings Tests › @admin Modify QUERY_MEM_CAPACITY via API validation via UI: Input value: 1 description: valid input (1.2s)
    1757:  ·  ✓  116 [[Admin] Firefox] › settingsConfig.spec.ts:66:13 › Settings Tests › @admin Modify QUERY_MEM_CAPACITY via API validation via UI: Input value: 0 description: valid input - zero value (1.2s)
    1758:  [Error: Failed to set config value VKEY_MAX_ENTITY_COUNT to NaN]
    1759:  ·  ✓  117 [[Admin] Firefox] › settingsConfig.spec.ts:78:13 › Settings Tests › @admin Modify VKEY_MAX_ENTITY_COUNT via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1760:  [Error: Failed to set config value VKEY_MAX_ENTITY_COUNT to -3]
    1761:  ·  ✓  118 [[Admin] Firefox] › settingsConfig.spec.ts:78:13 › Settings Tests › @admin Modify VKEY_MAX_ENTITY_COUNT via API validation via UI: Input value: -3 description: invalid input - negative number (1.2s)
    1762:  ·  ✓  119 [[Admin] Firefox] › settingsConfig.spec.ts:78:13 › Settings Tests › @admin Modify VKEY_MAX_ENTITY_COUNT via API validation via UI: Input value: 00-1 description: invalid input (1.2s)
    1763:  ·  ✓  120 [[Admin] Firefox] › settingsConfig.spec.ts:78:13 › Settings Tests › @admin Modify VKEY_MAX_ENTITY_COUNT via API validation via UI: Input value: 1 description: valid input (1.2s)
    1764:  ·  ✓  121 [[Admin] Firefox] › settingsConfig.spec.ts:78:13 › Settings Tests › @admin Modify VKEY_MAX_ENTITY_COUNT via API validation via UI: Input value: 0 description: valid input - zero value (1.2s)
    1765:  [Error: Failed to set config value CMD_INFO to aa]
    1766:  ·  ✓  122 [[Admin] Firefox] › settingsConfig.spec.ts:89:13 › Settings Tests › @admin Modify CMD_INFO via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1767:  [Error: Failed to set config value CMD_INFO to -3]
    1768:  ·  ✓  123 [[Admin] Firefox] › settingsConfig.spec.ts:89:13 › Settings Tests › @admin Modify CMD_INFO via API validation via UI: Input value: -3 description: invalid input - negative number (1.2s)
    1769:  [Error: Failed to set config value CMD_INFO to 00-1]
    1770:  ·  ✓  124 [[Admin] Firefox] › settingsConfig.spec.ts:89:13 › Settings Tests › @admin Modify CMD_INFO via API validation via UI: Input value: 00-1 description: invalid input (1.2s)
    1771:  [Error: Failed to set config value CMD_INFO to 10s]
    1772:  ·  ✓  125 [[Admin] Firefox] › settingsConfig.spec.ts:89:13 › Settings Tests › @admin Modify CMD_INFO via API validation via UI: Input value: 10s description: invalid input (1.2s)
    1773:  ·  ✓  126 [[Admin] Firefox] › settingsConfig.spec.ts:89:13 › Settings Tests › @admin Modify CMD_INFO via API validation via UI: Input value: no description: valid input - no value (1.2s)
    1774:  ·  ✓  127 [[Admin] Firefox] › settingsConfig.spec.ts:89:13 › Settings Tests › @admin Modify CMD_INFO via API validation via UI: Input value: yes description: valid input - yes value (1.2s)
    1775:  [Error: Failed to set config value MAX_INFO_QUERIES to NaN]
    1776:  ·  ✓  128 [[Admin] Firefox] › settingsConfig.spec.ts:100:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via API validation via UI: Input value: aa description: invalid input - character (1.2s)
    1777:  [Error: Failed to set config value MAX_INFO_QUERIES to -3]
    ...
    
    1784:  ·  ✓  135 [[Admin] Firefox] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify TIMEOUT_DEFAULT via UI validation via API: Input value: 10 description: modify defaultTimeOut (718ms)
    1785:  ·  ✓  136 [[Admin] Firefox] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify RESULTSET_SIZE via UI validation via API: Input value: 20 description: modify resultSetSize (712ms)
    1786:  ·  ✓  137 [[Admin] Firefox] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify QUERY_MEM_CAPACITY via UI validation via API: Input value: 20 description: modify queryMemCapacity (714ms)
    1787:  ·  ✓  138 [[Admin] Firefox] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify VKEY_MAX_ENTITY_COUNT via UI validation via API: Input value: 20 description: modify vKeyMaxEntityCount (732ms)
    1788:  ·  ✓  139 [[Admin] Firefox] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify CMD_INFO via UI validation via API: Input value: yes description: modify cmdInfo (698ms)
    1789:  ×  ✘  140 [[Admin] Firefox] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries (717ms)
    1790:  ×  ✘  141 [[Admin] Firefox] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries (retry #1) (1.1s)
    1791:  F  ✘  142 [[Admin] Firefox] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries (retry #2) (1.0s)
    1792:  TypeError: Cannot read properties of null (reading '1')
    1793:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1794:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1795:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1796:  at async p (.next/server/app/api/user/route.js:1:2243)
    1797:  ·  ✓  143 [[Admin] Firefox] › settingsUsers.spec.ts:19:9 › Settings Tests › @admin Add one new user -> validating user exists in the users list (2.8s)
    1798:  TypeError: Cannot read properties of null (reading '1')
    1799:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1800:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1801:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1802:  at async p (.next/server/app/api/user/route.js:1:2243)
    1803:  ·  ✓  144 [[Admin] Firefox] › settingsUsers.spec.ts:29:9 › Settings Tests › @admin Add one user -> remove one user -> Validate that the user has been removed (3.1s)
    1804:  TypeError: Cannot read properties of null (reading '1')
    1805:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1806:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1807:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1808:  at async p (.next/server/app/api/user/route.js:1:2243)
    1809:  ·  ✓  145 [[Admin] Firefox] › settingsUsers.spec.ts:44:9 › Settings Tests › @admin Add one user -> change the role -> Validate that the user role have been changed (4.0s)
    1810:  TypeError: Cannot read properties of null (reading '1')
    1811:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1812:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1813:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1814:  at async p (.next/server/app/api/user/route.js:1:2243)
    1815:  TypeError: Cannot read properties of null (reading '1')
    1816:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1817:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1818:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1819:  at async p (.next/server/app/api/user/route.js:1:2243)
    1820:  ·  ✓  146 [[Admin] Firefox] › settingsUsers.spec.ts:59:9 › Settings Tests › @admin Add two users -> change their roles via checkbox -> Validate that the users roles have been changed (6.5s)
    1821:  TypeError: Cannot read properties of null (reading '1')
    1822:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1823:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1824:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1825:  at async p (.next/server/app/api/user/route.js:1:2243)
    1826:  TypeError: Cannot read properties of null (reading '1')
    ...
    
    1831:  ·  ✓  147 [[Admin] Firefox] › settingsUsers.spec.ts:80:9 › Settings Tests › @admin Add two users -> delete the two users by checkbox -> Validate that the users have been deleted (6.3s)
    1832:  ·  ✓  148 [[Admin] Firefox] › settingsUsers.spec.ts:109:13 › Settings Tests › @admin Enter password for new user: Test123 reason: short password  (3.0s)
    1833:  ·  ✓  149 [[Admin] Firefox] › settingsUsers.spec.ts:109:13 › Settings Tests › @admin Enter password for new user: Test1234 reason: without special character  (2.9s)
    1834:  ·  ✓  150 [[Admin] Firefox] › settingsUsers.spec.ts:109:13 › Settings Tests › @admin Enter password for new user: Testtes@ reason: without digits  (2.9s)
    1835:  ·  ✓  151 [[Admin] Firefox] › settingsUsers.spec.ts:109:13 › Settings Tests › @admin Enter password for new user: TESTES1@ reason: without lowercase letters  (2.9s)
    1836:  ·  ✓  152 [[Admin] Firefox] › settingsUsers.spec.ts:109:13 › Settings Tests › @admin Enter password for new user: testte1@ reason: without uppercase letters  (3.0s)
    1837:  ·  ✓  153 [[Admin] Firefox] › settingsUsers.spec.ts:109:13 › Settings Tests › @admin Enter password for new user:  reason: without password  (2.9s)
    1838:  ·  ✓  154 [[Admin] Firefox] › settingsUsers.spec.ts:121:9 › Settings Tests › @admin Attempt to add a user without assigning a role -> Verify that the user has not been added (2.9s)
    1839:  [Error: ERR The 'default' user cannot be removed]
    1840:  ·  ✓  155 [[Admin] Firefox] › settingsUsers.spec.ts:132:9 › Settings Tests › @admin Attempt to delete the default admin user -> Verify that the user has not been deleted. (733ms)
    1841:  TypeError: Cannot read properties of null (reading '1')
    1842:  at t.transformReply (.next/server/chunks/488.js:1:90312)
    1843:  at t.transformCommandReply (.next/server/chunks/488.js:1:89110)
    1844:  at n.commandsExecutor (.next/server/chunks/488.js:1:41157)
    1845:  at async p (.next/server/app/api/user/route.js:1:2243)
    1846:  Error: Missing parameters
    1847:  at p (.next/server/app/api/user/route.js:1:2208)
    1848:  ·  ✓  156 [[Admin] Firefox] › settingsUsers.spec.ts:140:9 › Settings Tests › @admin API Test:Add user via API -> Validated user existing via API -> Delete user via API. (34ms)
    1849:  Error: Missing parameters
    1850:  at p (.next/server/app/api/user/route.js:1:2208)
    1851:  ·  ✓  157 [[Admin] Firefox] › settingsUsers.spec.ts:150:9 › Settings Tests › @admin API Test: without passing a username, Attempt to add a user and validate the user was not added (15ms)
    1852:  Error: Missing parameters
    1853:  at p (.next/server/app/api/user/route.js:1:2208)
    1854:  ·  ✓  158 [[Admin] Firefox] › settingsUsers.spec.ts:159:9 › Settings Tests › @admin API Test: without passing a role, Attempt to add a user and validate the user was not added (12ms)
    1855:  Error: Missing parameters
    ...
    
    1888:  ·  ✓  190 [[Read-Only] - Firefox] › navBar.spec.ts:20:13 › Navbar tests › @readonly Verify clicking on FalkorDB logo redirects to specified URL (1.6s)
    1889:  ·  ✓  191 [[Read-Only] - Firefox] › navBar.spec.ts:29:13 › Navbar tests › @readonly Verify clicking on Graphs button redirects to specified URL (1.1s)
    1890:  ·  ✓  192 [[Read-Only] - Firefox] › navBar.spec.ts:39:13 › Navbar tests › @readonly Verify clicking on Schemas button redirects to specified URL (2.0s)
    1891:  ·  ✓  193 [[Read-Only] - Firefox] › navBar.spec.ts:49:13 › Navbar tests › @readonly Verify clicking on help -> Documentation redirects to specified URL (1.1s)
    1892:  ·  ✓  194 [[Read-Only] - Firefox] › navBar.spec.ts:58:13 › Navbar tests › @readonly Verify clicking on help -> Support redirects to specified URL (1.2s)
    1893:  ·  ✓  195 [[Read-Only] - Firefox] › navBar.spec.ts:67:13 › Navbar tests › @readonly Verify clicking on Settings redirects to specified URL (1.1s)
    1894:  ·  ✓  196 [[Read-Only] - Firefox] › signOut.spec.ts:19:13 › @readonly SignOut Test › Sign out Test (2.5s)
    1895:  1) [[Admin] Chromium] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries 
    1896:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    1900:  122 |             await apiCall.modifySettingsRole(roles.queryMemCapacity, "0") // update to default values   
    1901:  > 123 |             expect(value === input).toBe(expected)
    1902:  |                                     ^
    1903:  124 |         });
    1904:  125 |     })
    1905:  126 |
    1906:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:123:37
    1907:  Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
    1908:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    1917:  126 |
    1918:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:123:37
    1919:  attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
    1920:  test-results/settingsConfig-Settings-Te-9ddaf-ption-modify-maxInfoQueries--Admin-Chromium-retry1/trace.zip
    1921:  Usage:
    1922:  npx playwright show-trace test-results/settingsConfig-Settings-Te-9ddaf-ption-modify-maxInfoQueries--Admin-Chromium-retry1/trace.zip
    1923:  ────────────────────────────────────────────────────────────────────────────────────────────────
    1924:  Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
    1925:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    1929:  122 |             await apiCall.modifySettingsRole(roles.queryMemCapacity, "0") // update to default values   
    1930:  > 123 |             expect(value === input).toBe(expected)
    1931:  |                                     ^
    1932:  124 |         });
    1933:  125 |     })
    1934:  126 |
    1935:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:123:37
    1936:  2) [[Admin] Firefox] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries 
    1937:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    1941:  122 |             await apiCall.modifySettingsRole(roles.queryMemCapacity, "0") // update to default values   
    1942:  > 123 |             expect(value === input).toBe(expected)
    1943:  |                                     ^
    1944:  124 |         });
    1945:  125 |     })
    1946:  126 |
    1947:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:123:37
    1948:  Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
    1949:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    1958:  126 |
    1959:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:123:37
    1960:  attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
    1961:  test-results/settingsConfig-Settings-Te-9ddaf-ption-modify-maxInfoQueries--Admin-Firefox-retry1/trace.zip
    1962:  Usage:
    1963:  npx playwright show-trace test-results/settingsConfig-Settings-Te-9ddaf-ption-modify-maxInfoQueries--Admin-Firefox-retry1/trace.zip
    1964:  ────────────────────────────────────────────────────────────────────────────────────────────────
    1965:  Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
    1966:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    1970:  122 |             await apiCall.modifySettingsRole(roles.queryMemCapacity, "0") // update to default values   
    1971:  > 123 |             expect(value === input).toBe(expected)
    1972:  |                                     ^
    1973:  124 |         });
    1974:  125 |     })
    1975:  126 |
    1976:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:123:37
    1977:  3) [[Admin] Chromium] › settingsConfig.spec.ts:100:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via API validation via UI: Input value: 0 description: valid input - zero value 
    1978:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    1984:  |                                     ^
    1985:  107 |         });
    1986:  108 |     })
    1987:  109 |
    1988:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:106:37
    1989:  Slow test file: [[Admin] Firefox] › settingsUsers.spec.ts (44.0s)
    1990:  Slow test file: [[Admin] Chromium] › settingsUsers.spec.ts (43.9s)
    1991:  Consider splitting slow test files to speed up parallel execution
    1992:  2 failed
    1993:  [[Admin] Chromium] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries 
    1994:  [[Admin] Firefox] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries 
    1995:  1 flaky
    1996:  [[Admin] Chromium] › settingsConfig.spec.ts:100:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via API validation via UI: Input value: 0 description: valid input - zero value 
    1997:  188 passed (5.6m)
    1998:  1) [[Admin] Chromium] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries 
    1999:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    2003:  122 |             await apiCall.modifySettingsRole(roles.queryMemCapacity, "0") // update to default values   
    2004:  > 123 |             expect(value === input).toBe(expected)
    2005:  |                                     ^
    2006:  124 |         });
    2007:  125 |     })
    2008:  126 |
    2009:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:123:37
    2010:  Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
    2011:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    2020:  126 |
    2021:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:123:37
    2022:  attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
    2023:  test-results/settingsConfig-Settings-Te-9ddaf-ption-modify-maxInfoQueries--Admin-Chromium-retry1/trace.zip
    2024:  Usage:
    2025:  npx playwright show-trace test-results/settingsConfig-Settings-Te-9ddaf-ption-modify-maxInfoQueries--Admin-Chromium-retry1/trace.zip
    2026:  ────────────────────────────────────────────────────────────────────────────────────────────────
    2027:  Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
    2028:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    2032:  122 |             await apiCall.modifySettingsRole(roles.queryMemCapacity, "0") // update to default values   
    2033:  > 123 |             expect(value === input).toBe(expected)
    2034:  |                                     ^
    2035:  124 |         });
    2036:  125 |     })
    2037:  126 |
    2038:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:123:37
    2039:  2) [[Admin] Firefox] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries 
    2040:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    2044:  122 |             await apiCall.modifySettingsRole(roles.queryMemCapacity, "0") // update to default values   
    2045:  > 123 |             expect(value === input).toBe(expected)
    2046:  |                                     ^
    2047:  124 |         });
    2048:  125 |     })
    2049:  126 |
    2050:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:123:37
    2051:  Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
    2052:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    2061:  126 |
    2062:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:123:37
    2063:  attachment #1: trace (application/zip) ─────────────────────────────────────────────────────────
    2064:  test-results/settingsConfig-Settings-Te-9ddaf-ption-modify-maxInfoQueries--Admin-Firefox-retry1/trace.zip
    2065:  Usage:
    2066:  npx playwright show-trace test-results/settingsConfig-Settings-Te-9ddaf-ption-modify-maxInfoQueries--Admin-Firefox-retry1/trace.zip
    2067:  ────────────────────────────────────────────────────────────────────────────────────────────────
    2068:  Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
    2069:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    2073:  122 |             await apiCall.modifySettingsRole(roles.queryMemCapacity, "0") // update to default values   
    2074:  > 123 |             expect(value === input).toBe(expected)
    2075:  |                                     ^
    2076:  124 |         });
    2077:  125 |     })
    2078:  126 |
    2079:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:123:37
    2080:  3) [[Admin] Chromium] › settingsConfig.spec.ts:100:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via API validation via UI: Input value: 0 description: valid input - zero value 
    2081:  Error: �[2mexpect(�[22m�[31mreceived�[39m�[2m).�[22mtoBe�[2m(�[22m�[32mexpected�[39m�[2m) // Object.is equality�[22m
    ...
    
    2087:  |                                     ^
    2088:  107 |         });
    2089:  108 |     })
    2090:  109 |
    2091:  at /home/runner/work/falkordb-browser/falkordb-browser/e2e/tests/settingsConfig.spec.ts:106:37
    2092:  Slow test file: [[Admin] Firefox] › settingsUsers.spec.ts (44.0s)
    2093:  Slow test file: [[Admin] Chromium] › settingsUsers.spec.ts (43.9s)
    2094:  Consider splitting slow test files to speed up parallel execution
    2095:  2 failed
    2096:  [[Admin] Chromium] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries 
    2097:  [[Admin] Firefox] › settingsConfig.spec.ts:111:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via UI validation via API: Input value: 20 description: modify maxInfoQueries 
    2098:  1 flaky
    2099:  [[Admin] Chromium] › settingsConfig.spec.ts:100:13 › Settings Tests › @admin Modify MAX_INFO_QUERIES via API validation via UI: Input value: 0 description: valid input - zero value 
    2100:  188 passed (5.6m)
    2101:  ##[error]Process completed with exit code 1.
    ...
    
    2119:  [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
    2120:  [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
    2121:  [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader
    2122:  http.https://github.com/.extraheader
    2123:  [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader
    2124:  [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :"
    2125:  Print service container logs: 36ae96b0b55e4c428ea7b7146070d069_falkordbfalkordblatest_eaee54
    2126:  ##[command]/usr/bin/docker logs --details d02aa43038a673fdf2c490eb7d4a6d8b2f678ae2d8e24cce8159dcb313d56024
    2127:  11:C 24 Jan 2025 06:24:20.074 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
    

    @gkorland gkorland closed this Jan 24, 2025
    @gkorland gkorland deleted the gkorland-patch-1 branch January 24, 2025 08:34
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    None yet
    Projects
    None yet
    Development

    Successfully merging this pull request may close these issues.

    Add security check before docker publish
    1 participant