Skip to content

Refine the 'Users' Manage Jenkins page#26475

Open
janfaracik wants to merge 16 commits intojenkinsci:masterfrom
janfaracik:add-user-refine
Open

Refine the 'Users' Manage Jenkins page#26475
janfaracik wants to merge 16 commits intojenkinsci:masterfrom
janfaracik:add-user-refine

Conversation

@janfaracik
Copy link
Copy Markdown
Member

@janfaracik janfaracik commented Mar 17, 2026

This PR refines the 'Users' Manage Jenkins page.

What's new?

  • Refined table
    • No more model links for usernames, now has an overflow menu
  • 'Add user' dialog has been added, very rough for now
  • Content refined

Testing done

  • Users show in table
  • Still possible to delete users
  • Possible to create users
  • Validation appears

Screenshots (UI changes only)

Before

Screenshot 2026-03-20 at 08 48 28

After

image

Before

Screenshot 2026-03-20 at 08 48 45

After

Screenshot 2026-03-20 at 08 47 25

Before

Screenshot 2026-03-20 at 08 48 55

After (dialog validation)

Screenshot 2026-03-20 at 08 47 53

Proposed changelog entries

  • Refine the 'Users' Manage Jenkins page

Proposed changelog category

/label web-ui,rfe

Proposed upgrade guidelines

N/A

Submitter checklist

  • The issue, if it exists, is well-described.
  • The changelog entries and upgrade guidelines are appropriate for the audience affected by the change (users or developers, depending on the change) and are in the imperative mood (see examples). Fill in the Proposed upgrade guidelines section only if there are breaking changes or changes that may require extra steps from users during upgrade.
  • There is automated testing or an explanation as to why this change has no tests.
  • New public classes, fields, and methods are annotated with @Restricted or have @since TODO Javadocs, as appropriate.
  • New deprecations are annotated with @Deprecated(since = "TODO") or @Deprecated(forRemoval = true, since = "TODO"), if applicable.
  • UI changes do not introduce regressions when enforcing the current default rules of Content Security Policy Plugin. In particular, new or substantially changed JavaScript is not defined inline and does not call eval to ease future introduction of Content Security Policy (CSP) directives (see documentation).
  • For dependency updates, there are links to external changelogs and, if possible, full differentials.
  • For new APIs and extension points, there is a link to at least one consumer.

Desired reviewers

@jenkinsci/sig-ux

Before the changes are marked as ready-for-merge:

Maintainer checklist

  • There are at least two (2) approvals for the pull request and no outstanding requests for change.
  • Conversations in the pull request are over, or it is explicit that a reviewer is not blocking the change.
  • Changelog entries in the pull request title and/or Proposed changelog entries are accurate, human-readable, and in the imperative mood.
  • Proper changelog labels are set so that the changelog can be generated automatically.
  • If the change needs additional upgrade steps from users, the upgrade-guide-needed label is set and there is a Proposed upgrade guidelines section in the pull request title (see example).
  • If it would make sense to backport the change to LTS, be a Bug or Improvement, and either the issue or pull request must be labeled as lts-candidate to be considered.

@comment-ops-bot comment-ops-bot bot added web-ui The PR includes WebUI changes which may need special expertise rfe For changelog: Minor enhancement. use `major-rfe` for changes to be highlighted labels Mar 17, 2026
@janfaracik janfaracik requested a review from a team March 20, 2026 08:53
@janfaracik janfaracik added needs-ath-build Needs to run through the full acceptance-test-harness suite needs-pct-build A run through of bom is needed labels Mar 20, 2026
@timja
Copy link
Copy Markdown
Member

timja commented Mar 23, 2026

If you want to go further a card approach would be possible.

Username may not need to be displayed if full name is set or at least de-emphased.

Configure could be a pencil for edit.

@janfaracik
Copy link
Copy Markdown
Member Author

If you want to go further a card approach would be possible.

Username may not need to be displayed if full name is set or at least de-emphased.

Configure could be a pencil for edit.

I would definitely move to cards - we'd lose sorting however - not sure how useful sorting is for Users but something to consider.

@timja timja added ath-successful This PR has successfully passed the full acceptance-test-harness suite and removed needs-ath-build Needs to run through the full acceptance-test-harness suite labels Mar 23, 2026
@timja
Copy link
Copy Markdown
Member

timja commented Mar 23, 2026

I would definitely move to cards - we'd lose sorting however - not sure how useful sorting is for Users but something to consider.

i'd have a sorted list by default and then a filter and not worry about users sorting on different columns I think

@timja timja added the needs-security-review Awaiting review by a security team member label Mar 23, 2026
@timja
Copy link
Copy Markdown
Member

timja commented Mar 23, 2026

@jenkinsci/core-security-review could you take a look at this please?

Copy link
Copy Markdown
Member

@timja timja left a comment

Choose a reason for hiding this comment

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

LGTM in testing, one minor issue from a typo.

One oddity is that the validation is only invoked on submission whereas most of jenkins validates on blur. This seems consistent with how it worked before though so not an issue.


What's the reason for needing the wizard? Is for the validation?

Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com>
return dialog.show();
},

wizard: function (initialUrl, options) {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I think this should be documented in the design library: https://weekly.ci.jenkins.io/design-library/dialogs/

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Absolutely.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

reminder @janfaracik

@janfaracik
Copy link
Copy Markdown
Member Author

What's the reason for needing the wizard? Is for the validation?

Holdover from Credentials/ground work for implementing wizards in core/good basis for these fancy dialogs.

@janfaracik janfaracik marked this pull request as ready for review March 24, 2026 08:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ath-successful This PR has successfully passed the full acceptance-test-harness suite needs-pct-build A run through of bom is needed needs-security-review Awaiting review by a security team member rfe For changelog: Minor enhancement. use `major-rfe` for changes to be highlighted web-ui The PR includes WebUI changes which may need special expertise

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants