Files
computer-playbook/roles/user/README.md
T
kevinveenbirkenbach 9905ed619a refactor(user): migrate shared user handling to strict user_key SPOT and introduce workstation role
- Refactor shared `user` role to use `user_key` exclusively (remove user_name)
- Resolve system username, home, group, and ownership via users[user_key]
- Update SSH authorized_keys handling to read from users[user_key]
- Adjust documentation to clearly describe user_key-based SPOT model
- Migrate all calling roles (administrator, backup, root) to pass user_key
- Introduce new `user-workstation` role with dedicated README, vars, tasks, and metadata
- Add workstation stage integration to ensure workstation user setup runs explicitly
- Ensure consistent variable naming (lowercase internals, uppercase constants)
- Improve robustness and clarity of user management across all roles

https://chatgpt.com/share/695ea93e-3fa0-800f-b848-ec2ced2a8291
2026-01-07 20:27:28 +01:00

657 B

User

Description

This role configures a basic user environment (shell dotfiles and SSH authorized_keys) for a user selected via user_key.

Single Point of Truth (SPOT)

User data is defined under users.<key> and referenced exclusively via user_key.

Resolution rules:

  • user_username is resolved from users[user_key].username (fallback: user_key)
  • Home path and ownership are based on user_username
  • SSH keys are read from users[user_key].authorized_keys

Required input

  • user_key

Optional user fields

  • users.<user_key>.username (defaults to <user_key>)
  • users.<user_key>.authorized_keys (list; may be empty)