Verified in Satellite 6.8.6 Snap 1
Followed the reproducer steps, creating an "updater" user with the desired permissions. Upon trying to promote a content view version, I now see the inclusion of the more appropriate permission needed to perform this action.
-bash-4.2# hammer content-view version list --organization-id 1
---|-------------------------------|---------|-------------|-----------------------
ID | NAME | VERSION | DESCRIPTION | LIFECYCLE ENVIRONMENTS
---|-------------------------------|---------|-------------|-----------------------
2 | test 1.0 | 1.0 | | Library
1 | Default Organization View 1.0 | 1.0 | | Library
---|-------------------------------|---------|-------------|-----------------------
-bash-4.2# hammer -u updater content-view version promote --content-view-id 2 --to-lifecycle-environment-id 2 --id 2 --organization-id 1
[Foreman] Password for updater:
Could not promote the content view:
Access denied
Missing one of the required permissions: promote_or_remove_content_views, promote_or_remove_content_views_to_environments
After adding the missing permission "lifecycle environments => promote_or_remove_content_views_to_environments", the user is able to successfully promote the version.
-bash-4.2# hammer -u updater content-view version promote --content-view-id 2 --to-lifecycle-environment-id 2 --id 2 --organization-id 1
[Foreman] Password for updater:
[........................................................................................] [100%]
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory (Satellite 6.8.6 Async Bug Fix Update), and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.
https://access.redhat.com/errata/RHBA-2021:1181