Azure / Azure/azure-devops-cli-extension

Moving iterations to a new parent erases their start/finish dates

Open
#1,307 0 comments 1 reaction 0 assignees View on GitHub
Dominant language
Python
Stars
682
Forks
278
Avg merge
3d 23h
Merged PRs (30d)
3

Description

## Describe the bug

Moving an iteration to be a child of another removes the dates from the moved iteration.

**Command Name**
`az boards iteration project update
Extension Name: azure-devops. Version: 0.25.0.`

## To Reproduce:

Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

```powershell
# Create the "parent" iteration
> az boards iteration project create --name TestFolder --org $ORG --project $PROJECT
{
"attributes": null,
"children": null,
"hasChildren": false,
"id": 242,
"identifier": "...",
"name": "TestFolder",
"path": "\\$PROJECT\\Iteration\\TestFolder",
"structureType": "iteration",
"url": "$ORG/.../_apis/wit/classificationNodes/Iterations/TestFolder"
}

# Create the "child" iteration with start/finish dates, but not as a child yet
> az boards iteration project create --name TestIteration --org $ORG --project $PROJECT --start-date "2022-01-01" --finish-date "2022-01-07"
{
"attributes": {
"finishDate": "2022-01-07T00:00:00Z",
"startDate": "2022-01-01T00:00:00Z"
},
"children": null,
"hasChildren": false,
"id": 243,
"identifier": "...",
"name": "TestIteration",
"path": "\\$PROJECT\\Iteration\\TestIteration",
"structureType": "iteration",
"url": "$ORG/.../_apis/wit/classificationNodes/Iterations/TestIteration"
}

# Move the second iteration to be a child of the first
> az boards iteration project update --path \$PROJECT\Iteration\TestFolder --org $ORG --project $PROJECT --child-id 243
{
"attributes": null,
"children": null,
"hasChildren": true,
"id": 242,
"identifier": "...",
"name": "TestFolder",
"path": "\\$PROJECT\\Iteration\\TestFolder",
"structureType": "iteration",
"url": "$ORG/.../_apis/wit/classificationNodes/Iterations/TestFolder"
}

# The start/finish dates are no longer populated
> az boards iteration project show --id 243 --org $ORG --project $PROJECT
[
{
"attributes": null,
"children": null,
"hasChildren": false,
"id": 243,
"identifier": "...",
"name": "TestIteration",
"path": "\\$PROJECT\\Iteration\\TestFolder\\TestIteration",
"structureType": "iteration",
"url": "$ORG/.../_apis/wit/classificationNodes/Iterations/TestFolder/TestIteration"
}
]
```

## Expected Behavior

The start/finish dates of moved iterations should be unchanged. This matches the behavior when dragging and dropping iterations in the UI. Additionally, the documentation for `az boards iteration project update` gives no indication that moved iterations will have their dates erased.

## Environment Summary
```
Windows-10-10.0.22000-SP0
Python 3.10.5
Installer: MSI

azure-cli 2.39.0 *

Extensions:
azure-devops 0.25.0

Dependencies:
msal 1.18.0b1
azure-mgmt-resource 21.1.0b1
```
## Additional Context

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.