Job | Status | Reported By | Description | Modified Date |
---|---|---|---|---|
CBD-6-3 | Punted | C. Thomas Tyler | Subtask: Implement CBD REWRITE logic for Classic in Cbd.py. See: https://swarm.workshop.perforce.co...m/projects/perforce-software-cbd/jobs/job000250 « | 8 years ago |
CBD-6-2 | Punted | C. Thomas Tyler | Subtask: Define Key Structure for Classic keys. Streams uses cbd_stream_* and a defined format.&n...bsp; Classic needs a similar defined format for the REWRITE logic to work. « | 8 years ago |
CBD-6-1 | Punted | C. Thomas Tyler | Subtask: Develop WSTemplateUpdate trigger. See: https://swarm.workshop.perforce.com/projects/perfor...ce-software-cbd/jobs/job000250 Develop WSTemplateUpdate trigger to CBD keys (similar to SSTemplateUpdate), and also update user workspaces based on the updated template (unique to the Classic implementation, as this "comes for free" with Streams). « | 8 years ago |
CBD-6 | Punted | C. Thomas Tyler | Complete implementation of CBD for Classic (i.e. non-Streams). | 8 years ago |
CBD-37 | Open | mpadmanaban | Always On mode not working correctly with StreamDepth>1. Hi Tom, I ran in to another issue.&...nbsp; Always On is broken now. Expected result is //DeepPlayground/DeepShared1/lib1/libs/...@1207340 p4 sync --parallel=0 //DeepPlayground/DeepShared1/lib1/...#head INFO: [CBD sync ['--parallel=0'], 'Path [//DeepPlayground/DeepShared1/lib1/...] is out of CBD scope. Assuming #head.']. //DeepPlayground/DeepShared1/lib1/libs/readme.txt updated C:\Users\mpadmanaban\Perforce\mpadmanaban_WS-2UA2220HRW_main_2801\libs\readme.txt 1 file updated 1 warning reported INFO: [CBD sync ['--parallel=0'], 'Path [//DeepPlayground/DeepShared1/lib1/...] is out of CBD scope. Assuming #head.']. Thanks, - Magesh « | 8 years ago |
CBD-36 | Closed | mpadmanaban | Sync on stream with import fails to pick up import when StreamDepth>1. | 8 years ago |
CBD-35 | Open | mpadmanaban | Sync above stream root with StreamDepth>1 gives annoying but harmless warnings. p4 sync --para...llel=0 //DeepPlayground/Components/...#head INFO: [CBD sync ['--parallel=0'], 'Path [//DeepPlayground/Components/...] is out of CBD scope. Assuming #head.']. //DeepPlayground/Components/main/DeepPlayground-Components.cbdsst added C:\Users\mpadmanaban\Perforce\mpadmanaban_laptop\DeepPlayground-Components.cbdsst 1 file added 1 warning reported INFO: [CBD sync ['--parallel=0'], 'Path [//DeepPlayground/Components/...] is out of CBD scope. Assuming #head.']. « | 8 years ago |
CBD-34 | Open | mpadmanaban | Path collision with deep depots (StreamDepth>1). I think we need to add an error check to make... sure that cbd key *_path0 is not modified after being initialized. e.g.: Just for test, I tried the following 2 streams and it confused the cbd script, because there is a collision. //DeepThought/Components/tools_test1_main //DeepThought/Components_tools/test1_main « | 8 years ago |
CBD-33 | Closed | ttyler | Paramter to logging module should be filemode rather than mode. | 8 years ago |
CBD-32 | Closed | ttyler | Support StreamDepth > 1. | 8 years ago |
CBD-31 | Open | C. Thomas Tyler | Change default sync rev for '...' on a back-in-type sync. Change the default revision used for a... 'p4 sync' when a back-in-time sync is done, i.e. a sync with a revision specifier, thus selecting an older version of the *.cbdsst file (which represents the state of the versioned stream spec at the old revision). Currently, when a back-in-time sync is done, the sync uses the correct specified revisions when they are specified explicitly in the older version of the *.cbdsst file, e.g. a Paths: field containing: import foo/... //foo/main/...@275 However, if no revision is explicilty specified, e.g.: import foo/... //foo/main/... the current behvaior is simply to pass the '...' along to the server, resulting in the head revisions being selected for a sync to files in //foo/main/... With this job, the desired new behvaior is to make it so the implicit default, when no revision is specified, becomes the point specified changelist number. So, if a user does: p4 sync @500 and that results in syncing a //ace/main/ace.cbdsst@500, and in that revision there is a Paths: field containing: import foo/... //foo/main/... then desired behavior is to translate that sync to the equivalent of: p4 sync //foo/main/...@500 == OPTIONAL == For visual optimization, the @500 could be replaced with the latest changelist up to @500 that actually affected files in the path //foo/main..., and so it might actually get translated to something like: p4 sync //foo/main/...@275 assuming @275 is the latest changelist up to @500 that affected files in //foo/main/... In all cases, 'p4 sync' behavior also applies to 'flush' and 'update' commands (which is current behavior). « | 8 years ago |
CBD-30 | Closed | C. Thomas Tyler | CBD should allow for case-insenstive path comparisons. The case of the server should be det...ected, and CBD case-insensitive path comparisons should be used if the given server is case insensitive. « | 8 years ago |
CBD-3 | Suspended | C. Thomas Tyler | Add support for Task streams. At issue: In SSTemplateUpdate.py, the 'p4 describe' output for task s...treams doesn't list depot files (unless run from the Stream workspace associated with that task stream). This breaks upon creation of a new Task Stream. It doesn't prevent creation of the Task Stream, but fails to update CBD keys for that task stream. « | 8 years ago |
CBD-29 | Closed | phopkins | From Windows clients, if your drive letter is uppercase in Perforce metadta (e.g. 'C:\MyWS'), but y...our current working directory has a lowercase letter (e.g. c:\MyWs'), CBD gives an error when trying to sync: ERROR: CBD was not able to translate path [pb/...] to depot syntax. If your drive letter is lowercase in the metadata, it alwasy works. A case mismatch for the drive letter should not matter. The expected behavior is to simply ignore the case of the drive letter. The comparison for the rest of the path shout remain case sensitive. « | 8 years ago |
CBD-28 | Closed | phopkins | CMD line: linux and windows) Imported lines used to be able to sync with relative folder p4 sync... componentA\...@99999999999999 should pull down the head of componentA but it can't figure out that the componentA is part of the import spec now. « | 8 years ago |
CBD-27 | Closed | phopkins | P4V on Linux: Sync from workspace root does nothing, ignores CBD altogether. (linux cmd is OK) p...4 sync /root/of/workspace/...#head no files updated 1 warning reported INFO: ['CBD sync []', '/root/of/workspace/...#head']. « | 8 years ago |
CBD-26 | Suspended | C. Thomas Tyler | Fix ticket issues: Do 'p4 login' if necessary. Presently, the CBD automation presumes it ha...s a valid ticket. Add a 'p4 login -s' ticket status check, and if it fails, attempt a 'p4 login' using credentails available via a mechanism similer to that used by the SDP to ensure checkpoints run reliably. This check needs to be added to BOTH the update trigger and the broker filter script. This change will increase the coupling betweeen CBD and the SDP, which has been kept to a minimum thus far. That's acceptable. « | 8 years ago |
CBD-25 | Closed | mpadmanaban | Sync //path/...@Label always gets latest files w/p4d 2015.1. I noticed some discrepancy in Stream... sync using Labels with workspace. For example, When I sync using the command p4 sync //<workspace>/...@<Label>, It always gets the latest code instead of the labelled code. When I try to sync using p4 sync //<workspace>/*@<Label>, I get the correct files at the top level. When I try to sync using p4 sync //<depot_path>/...@<Label>, I get the correct files. Command used: p4 sync //jam/...@LABEL <-always gets the latest files p4 sync //jam/*@LABEL <- works p4 sync //jam//main/...@LABEL <- works « | 8 years ago |
CBD-24 | Suspended | C. Thomas Tyler | Enable bi-directional stream-spec/*.cbdsst workflow. Provide a workflow that allows developers to... modfiy CBD configurations via traditional stream spec edits, or via changes to the *.cbdsst file. A change in either updates the other implicitly via trigger actions. This change will help make CBD automation somewhat more transparent. Implementation Detail: Presently, the CBD trims version specifiers from the versioned form of the stream spec (the *.cbdsst file). This is done for a few reasons: * Earlier versions of P4D didn't support version specifiers in stream specs, so they had to be trimmed off or the server would reject them. P4D 2015.1 supports changelists only as revision specifiers. * CBD supports any valid revision specifier, while P4D 2015.1 supports only changelists. P4D 2015.2 may add support for automatic labels and timestamps. That leaves only static labels (important) and workspaces (not so import) as revision specifiers supported by these CBD scripts outside of P4D. Decision: * CBD automation will detect P4D version: o If P4D < 2014.1, strip all revision specifiers going from *.cbdsst -> live stream spec. o If P4D < 2014.2, strip all revision specifiers going from *.cbdsst -> live stream spec except changelist numbers. o If P4D < 2015.2, strip all revision specifiers going from *.cbdsst -> live stream spec except changelist numbers and automatic labels. Warning: The ability to update stream specs directly had proven a helpful workaround to earlier CBD issues which have since been eliminated. This change would eliminate that flexibility, though it seems it is longer be needed. « | 8 years ago |
CBD-23 | Suspended | C. Thomas Tyler | Implement flexbile feature toggles. Flexible means feature can be enabled globally, per-component,... or in some cases more granular, e.g. per-stream. Example: Make the versioning of the Remapped field (CBD-17) be configurable as always on, always off, or always on but limited to the main branch. « | 8 years ago |
CBD-22 | Closed | timford_wms | Reject submit of invalid *.cbdsst files. Reject submission of *.cbdsst files that are improperly... formatted in some way. The user should get the submission rejected with a warning (the more specific the better) describing the error. « | 8 years ago |
CBD-21 | Closed | phopkins | Keys not cleaned up when import or shore is removed from *.cbdsst. Removing an import or share in... the *.cbdsst leaves the keys hanging around. "Blobbing" the CBD keys (See CBD-16) should solve this issue, but I'm filing this bug to remember to verify that. « | 8 years ago |
CBD-20 | Closed | phopkins | Extra whitespace in cbdsst isn't handled perfectly. In the following examples, pretend '=' is a s...pace ' ': If you have 'share==...' It will screw up the stream spec, it needs to be 'share=...'. With python we could probably make that a bit more 'friendly' and strip extra whitespace problems. « | 8 years ago |
CBD-2 | Suspended | C. Thomas Tyler | Implement Component Groups and Hierarchy. This will be needed to support CBD in large enterprise... environments. This implies supporting an 'include' syntax in the versioned *.cbdsst file. The 'include' will specify another versioned file, or alternately a component group name, which references multiple include tags. « | 8 years ago |
CBD-19 | Closed | mark_eliason | Support depots with multiple modules. This is a code research and testing task. CBD was orig...inally developed with the assumption of a 1:1 relationship between stream depots and components. This task is to ensure that customers using one stream depot to contain multiple component do not experience any adverse effects with CBD. « | 8 years ago |
CBD-18 | Closed | C. Thomas Tyler | Add Windows support for server-side CBD back end. While the broker & trigger back end impleme...ntation works with any and all client platforms, it only works when the back end is Linux. Add support for Windows only environments (and of course do it in a way that doesn't break existing Unix/Linux platform support). « | 8 years ago |
CBD-17 | Closed | C. Thomas Tyler | Version 'Remapped:' and 'Ignored:' fields. The initial CBD implementation updated only the 'Paths...:' and 'Description:' fields in the live Stream Spec when the versioned form, the *.cbdsst file, was updated. The 'Remapped:' and 'Ignored:' are ignored. That functions as initially designed, based on the "miminally intrusive" philosphy to avoid unnecessary impact of the custom CBD logic. However, later it was deeemd better for all aspects of the stream spec to be dictated by the versioned from of the file if we're going to have one at all, so they can go through the same merge down/copy up flow as Paths updates. « | 8 years ago |
CBD-16 | Suspended | C. Thomas Tyler | Use a single-key lookup for CBD keys on 'p4 sync.' Replace the two-key text-string lookup with a... single-key dictionary object lookup. Currently CBD uses cbd_stream_path<N> and cbd_stream_vspec<N> keys to define the revision specifiers for each path. An attendees at the Perforce Merge 2014 conference suggested using a single key using a dicutionary object (like Swarm). Brilliant idea! « | 8 years ago |
CBD-15 | Closed | C. Thomas Tyler | Task: Confirm that any arbitrary revision specifiers work. Task: Confirm that any arb...itrary revision specifiers work when used in the *.cbdsst/*.cbdwst files. This should 'just work' with CBD, since it rewrites the 'p4 sync' commands, and the 'p4 sync' can handle any valid revision specifier. This is known to work with changelist and labels, but needs to be tested for the various forms of date and date/time stamp entries, which might foil the Python regex stuff. « | 8 years ago |
CBD-1 | Closed | phopkins | Improve logging system. Right now we just log to one file for each p4 sync, would be good to keep a... rolling log of commands and then have them archived and rotated « | 8 years ago |