We are looking for features by which we can restrict users to only see specific environment for which deployment are intended to during steps of creating a deployment.
Also how can we perform some validation prior to deployment in Production Environment.
Which environments will be visible on UI are bound to user who is used to login to ROC/run a release. In case if you want specific environment pertaining to a process/deployment you need to create a user as environment owner to achieve same.
Release : 6.7
Component : CA RELEASE AUTOMATION RELEASE OPERATIONS CENTER
You need to create environment specific users as environment owners.
Example: A user ENV1Admin is created as owner of Environment for Single Server Architecture.
When this ENV1Admin is used to deploy he will only see the environment he owns.
In contrast to the user owning rights to multiple environments.
The validation and checks you want to incorporate should be handled as a part of process which can either be run in initialization step or pre-deployment step. It should be handle via design if those are specific you to your deployment specific validations. You can also check concept of Approval Gates built in product in case if you are looking for something specific like this.