File tree 1 file changed +13
-3
lines changed
1 file changed +13
-3
lines changed Original file line number Diff line number Diff line change 2
2
. " ${PSScriptRoot} \logging.ps1"
3
3
. " ${PSScriptRoot} \SemVer.ps1"
4
4
5
- $RELEASE_TITLE_REGEX = " (?<releaseNoteTitle>^\#+.* (?<version>\b\d+\.\d+\.\d+([^0-9\s][^\s:]+)? )(\s+(?<releaseStatus>\(.* \)))? )"
5
+ $RELEASE_TITLE_REGEX = " (?<releaseNoteTitle>^\#+\s+ (?<version>$ ( [ AzureEngSemanticVersion ]::SEMVER_REGEX ) )(\s+(?<releaseStatus>\(.+ \))))"
6
6
$CHANGELOG_UNRELEASED_STATUS = " (Unreleased)"
7
7
$CHANGELOG_DATE_FORMAT = " yyyy-MM-dd"
8
8
@@ -120,7 +120,17 @@ function Confirm-ChangeLogEntry {
120
120
else {
121
121
$status = $changeLogEntry.ReleaseStatus.Trim ().Trim(" ()" )
122
122
try {
123
- [DateTime ]$status
123
+ $releaseDate = [DateTime ]$status
124
+ if ($status -ne ($releaseDate.ToString ($CHANGELOG_DATE_FORMAT )))
125
+ {
126
+ LogError " Date must be in the format $ ( $CHANGELOG_DATE_FORMAT ) "
127
+ return $false
128
+ }
129
+ if (((Get-Date ).AddMonths(-1 ) -gt $releaseDate ) -or ($releaseDate -gt (Get-Date ).AddMonths(1 )))
130
+ {
131
+ LogError " The date must be within +/- one month from today."
132
+ return $false
133
+ }
124
134
}
125
135
catch {
126
136
LogError " Invalid date [ $status ] passed as status for Version [$ ( $changeLogEntry.ReleaseVersion ) ]."
@@ -212,4 +222,4 @@ function Set-ChangeLogContent {
212
222
}
213
223
214
224
Set-Content - Path $ChangeLogLocation - Value $changeLogContent
215
- }
225
+ }
You can’t perform that action at this time.
0 commit comments