-
Status
- Punted
-
Project
- perforce-software-cbd
-
Severity
- C
-
Reported By
- C. Thomas Tyler
-
Reported Date
- 8 years ago
-
Modified By
- C. Thomas Tyler
-
Modified Date
- 8 years ago
-
Owned By
- tom_tyler
-
Dev Notes
- Status: This job has been punted as there is no immediate plan to
implement it. It had been the initial intent to support Classic, but
every would-be team doing CBD automation (and there have been several)
have gone with Streams.
Getting CBD to work with Classic means implementing for Classic some
functionality that is built-in to p4d, mainly the workspace management
aspect. So with CBD for Classic, updating user client specs based on
update of a template is needed, to give the moral equivalent of
stream workspaces associated with a stream being updated when the
stream spec gets upated. Workspace naming conventions and restricting
the View of client spec to a single branch, a good best practice,
becomes required. Also, since Classic has no equivalent of the
StreamAtChange feature, so a Classic-based CBDs solution can never be
as complete or full-featured as a Streams-based one.
There is another reason to avoid implementing for Classic, which is
the goal of simplifying the eventual transition for customers of these
custom CBD scripts to a coming built-in p4d implementation of component
based streams, which works only in a Streams world (which are a natural
fit for CBD).
All that said, it could be done, and if there's a customer with a need
and budget or will to do it themselves, this broker-based CBD solution
could be extended to support Classic Perforce.
Implementation:
I considered taking advantage of the new ChangeView field in 2014.2.
(See : http://www.perforce.com/blog/141110/client-changeview-window-past
This gives part of what we want, but supports only changelists rather than
arbitrary revision specifiers, so we still need to do the broker REWRITE
trick to rewrite user sync commands (just as with the Streams implementation,
which cannot use @change on import lines in the path specifier.
-
Type
- Feature