How to Lock a stream
I was trying to see if a whole stream can be locked (like locking a branch). There is this techote:
http://www-01.ibm.com/support/docview.wss?rs=3488&context=SSCP65&dc=DB560&dc=DB520&uid=swg21380329&loc=en_US&cs=UTF-8&lang=en&rss=ct3488rational
It says the version is 1.x, but not 2.x, so I was wondering if the answer is different in 2.x. Also, I dont understand how to do what they say to do. I need some explicit instructions that even my non-tech Mom could do. :)
Accepted answer
In RTC 6.0.2 we added a feature that lets you lock streams and components to prevent deliveries to the files in those streams or components. Stream and component locks work in a similar manner to file locks but apply to the entire stream or the entire component in a stream. When a stream or component is locked, any attempted deliveries by users who do not own the lock will fail with an appropriate error message. The user that holds the lock can still perform deliveries to the stream. A lock does not only prevent deliveries, it also prevents any operation that affects the files in the locked component or stream. For example, a component replace is also prevented.
See:
-New & Noteworthy Mention: https://jazz.net/downloads/rational-team-concert/releases/6.0.2?p=newsDetails#stream-locking
-Stream/Component Locking Demo Video: https://www.youtube.com/watch?v=b8QwzwUF2ZY
-SCM Command Line Client 'set lock' command: https://www.ibm.com/support/knowledgecenter/SSCP65_6.0.4/com.ibm.team.scm.doc/topics/set_lock.html
Prior to 6.0.2, you could do what is described in the tech note by changing the owner of a stream to a Team area or Project area in which nobody has deliver rights (this is also clarified by Ralph in his answer). You can change the owner of a stream by opening the stream in an editor in RTC Eclipse for example. Also, another approach might be to add a deliver advisor in the process spec to restrict deliveries to particular streams. By protecting your stream by particular roles or users, you can effectively lock the stream down.
"http://jazz.net/library/article/215#protect_some" describes how to protect individual components in a stream, the same approach can be used to lock down the entire stream.
One other answer
Hi,
the tech note still applies. The idea is to make the stream owned by a team that does not provide delivery permissions. In the Library you can find http://jazz.net/library/article/291 describing how permissions are handled.
the idea of the tech note is in general to remove permissions to deliver for everyone. There are at least two ways to achieve that.
1. You can remove the permission to deliver for everyone in the team the stream is owned by.
2. You can have a special team that does not grant delivery permissions and make the stream owned by a team. The effort to do this and especially to reverse it is very low compared to solution 1 there fore it is proposed in the tech note.
To do 2 right open the stream. On the Stream Editor look for the Team owning the stream. On said editor select a team prepared with no delivery permissions (deselect the permission in the process customization of said team) as new owner to lock the stream. To reverse change the owner of the stream back to the desired team.
It is not rocket science and your Mom could do it, provided you allow her to play with RTC. 8-)