Skip to content

[integ-tests] Add DCV authentication coverage for dotted and long AD usernames#7453

Open
hanwen-cluster wants to merge 1 commit into
aws:developfrom
hanwen-cluster:fixwrongversion
Open

[integ-tests] Add DCV authentication coverage for dotted and long AD usernames#7453
hanwen-cluster wants to merge 1 commit into
aws:developfrom
hanwen-cluster:fixwrongversion

Conversation

@hanwen-cluster

@hanwen-cluster hanwen-cluster commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Description of changes

Extend the AD integration test to exercise the DCV external authenticator with usernames that contain a "." and that exceed 8 characters, covering the cookbook fix for username validation and UID-based session ownership.

Changes:

  • Enable DCV in the AD cluster configs.
  • Create additional AD users ("pcluster.user", "pcluster.long.user") that contain a dot and exceed 8 characters.
  • After the user workloads, start a DCV session as each of these users and assert the authenticator validates the session for that username.

Refactoring:

  • Add tests/common/dcv_common.py with shared helpers to start a DCV session and assert the authenticator accepts it for a given username.

Tests

The following tests have been passed

{%- import 'common.jinja2' as common with context -%}
{{- common.OSS_COMMERCIAL_X86.append("rocky8") or "" -}}
{{- common.OSS_COMMERCIAL_X86.append("rocky9") or "" -}}
---
test-suites:
  ad_integration:
    test_ad_integration.py::test_ad_integration:
      dimensions:
        - regions: [ "ap-southeast-1" ]
          instances: {{ common.INSTANCES_DEFAULT_X86 }}
          oss: [ {{ LUSTRE_OS_X86_0 }}, {{ LUSTRE_OS_X86_2 }}, {{ LUSTRE_OS_X86_4 }}]
          schedulers: ["slurm"]
  dcv:
    test_dcv.py::test_dcv_configuration:
      dimensions:
        # DCV on GPU enabled instance
        - regions: [{{ g4dn_2xlarge_CAPACITY_RESERVATION_2_INSTANCES_1_HOURS_NOPG_DCV_OS_X86_1 }}]
          instances: ["g4dn.2xlarge"]
          oss: [{{ DCV_OS_X86_1 }}]
          schedulers: ["slurm"]
        # DCV on ARM + GPU
        - regions: [{{ g5g_2xlarge_CAPACITY_RESERVATION_2_INSTANCES_1_HOURS_NOPG_DCV_OS_X86_3 }}]
          instances: ["g5g.2xlarge"]
          oss: [{{ DCV_OS_X86_3 }}]
          schedulers: ["slurm"]
    test_dcv.py::test_dcv_with_remote_access:
      dimensions:
        - regions: ["ap-southeast-2"]
          instances: {{ common.INSTANCES_DEFAULT_X86 }}
          oss: [{{ DCV_OS_X86_1 }}]
          schedulers: ["slurm"]

References

Checklist

  • Make sure you are pointing to the right branch.
  • If you're creating a patch for a branch other than develop add the branch name as prefix in the PR title (e.g. [release-3.6]).
  • Check all commits' messages are clear, describing what and why vs how.
  • Make sure to have added unit tests or integration tests to cover the new/modified code.
  • Check if documentation is impacted by this change.

Please review the guidelines for contributing and Pull Request Instructions.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

…usernames

Extend the AD integration test to exercise the DCV external authenticator with usernames that contain a "." and that exceed 8 characters, covering the cookbook fix for username validation and UID-based session ownership.

Changes:
- Enable DCV in the AD cluster configs.
- Create additional AD users ("pcluster.user", "pcluster.long.user") that contain a dot and exceed 8 characters.
- After the user workloads, start a DCV session as each of these users and assert the authenticator validates the session for that username.

Refactoring:
- Add tests/common/dcv_common.py with shared helpers to start a DCV session and assert the authenticator accepts it for a given username.
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.

1 participant