Skip to content

Commit 4db7c74

Browse files
authored
[Production rollout] Rollout 2025-05-14 (#4835)
<!-- Link the GitHub or AzDO issue this pull request is associated with. Please copy and paste the full URL rather than using the dotnet/arcade-services# syntax --> #4834
2 parents bd23096 + be0ce11 commit 4db7c74

File tree

24 files changed

+294
-13
lines changed

24 files changed

+294
-13
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -226,6 +226,7 @@ ClientBin/
226226
*.pfx
227227
*.publishsettings
228228
orleans.codegen.cs
229+
.DS_Store
229230

230231
# Including strong name files can present a security risk
231232
# (https://github.com/github/gitignore/pull/2483#issue-259490424)

eng/service-templates/ProductConstructionService/FullCreate/production.bicepparam

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,10 @@ param subscriptionTriggererTwiceDailyJobName = 'sub-triggerer-twicedaily-prod'
4444

4545
param subscriptionTriggererDailyJobName = 'sub-triggerer-daily-prod'
4646

47+
param subscriptionTriggererEveryTwoWeeksJobName = 'sub-triggerer-everytwoweeks-prod'
48+
49+
param subscriptionTriggererEveryMonthJobName = 'sub-triggerer-everymonth-prod'
50+
4751
param longestBuildPathUpdaterIdentityName = 'LongestBuildPathUpdaterProd'
4852

4953
param longestBuildPathUpdaterJobName = 'longest-path-updater-job-prod'

eng/service-templates/ProductConstructionService/FullCreate/provision.bicep

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,12 @@ param subscriptionTriggererTwiceDailyJobName string
7272
@description('Subscription Triggerer Daily Job name')
7373
param subscriptionTriggererDailyJobName string
7474

75+
@description('Subscription Triggerer Every Two Weeks Job name')
76+
param subscriptionTriggererEveryTwoWeeksJobName string
77+
78+
@description('Subscription Triggerer Every Month Job name')
79+
param subscriptionTriggererEveryMonthJobName string
80+
7581
@description('Longest Build Path Updater Identity Name')
7682
param longestBuildPathUpdaterIdentityName string
7783

@@ -260,6 +266,48 @@ module subscriptionTriggererWeekly 'scheduledContainerJob.bicep' = {
260266
]
261267
}
262268

269+
module subscriptionTriggererEveryTwoWeeks 'scheduledContainerJob.bicep' = {
270+
name: 'subscriptionTriggererEveryTwoWeeks'
271+
params: {
272+
jobName: subscriptionTriggererEveryTwoWeeksJobName
273+
location: location
274+
aspnetcoreEnvironment: aspnetcoreEnvironment
275+
applicationInsightsConnectionString: containerEnvironmentModule.outputs.applicationInsightsConnectionString
276+
userAssignedIdentityId: managedIdentitiesModule.outputs.subscriptionTriggererIdentityId
277+
cronSchedule: '0 5 1,14 * *'
278+
containerRegistryName: containerRegistryName
279+
containerAppsEnvironmentId: containerEnvironmentModule.outputs.containerEnvironmentId
280+
containerImageName: containerImageName
281+
command: 'cd /app/SubscriptionTriggerer && dotnet ProductConstructionService.SubscriptionTriggerer.dll everytwoweeks'
282+
contributorRoleId: contributorRole
283+
deploymentIdentityPrincipalId: managedIdentitiesModule.outputs.deploymentIdentityPrincipalId
284+
}
285+
dependsOn: [
286+
subscriptionTriggererWeekly
287+
]
288+
}
289+
290+
module subscriptionTriggererEveryMonth 'scheduledContainerJob.bicep' = {
291+
name: 'subscriptionTriggererEveryMonth'
292+
params: {
293+
jobName: subscriptionTriggererEveryMonthJobName
294+
location: location
295+
aspnetcoreEnvironment: aspnetcoreEnvironment
296+
applicationInsightsConnectionString: containerEnvironmentModule.outputs.applicationInsightsConnectionString
297+
userAssignedIdentityId: managedIdentitiesModule.outputs.subscriptionTriggererIdentityId
298+
cronSchedule: '0 5 1 * *'
299+
containerRegistryName: containerRegistryName
300+
containerAppsEnvironmentId: containerEnvironmentModule.outputs.containerEnvironmentId
301+
containerImageName: containerImageName
302+
command: 'cd /app/SubscriptionTriggerer && dotnet ProductConstructionService.SubscriptionTriggerer.dll everymonth'
303+
contributorRoleId: contributorRole
304+
deploymentIdentityPrincipalId: managedIdentitiesModule.outputs.deploymentIdentityPrincipalId
305+
}
306+
dependsOn: [
307+
subscriptionTriggererEveryTwoWeeks
308+
]
309+
}
310+
263311
module longestBuildPathUpdater 'scheduledContainerJob.bicep' = {
264312
name: 'longestBuildPathUpdater'
265313
params: {

eng/service-templates/ProductConstructionService/FullCreate/staging.bicepparam

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,10 @@ param subscriptionTriggererTwiceDailyJobName = 'sub-triggerer-twicedaily-int'
4646

4747
param subscriptionTriggererDailyJobName = 'sub-triggerer-daily-int'
4848

49+
param subscriptionTriggererEveryTwoWeeksJobName = 'sub-triggerer-everytwoweeks-int'
50+
51+
param subscriptionTriggererEveryMonthJobName = 'sub-triggerer-everymonth-int'
52+
4953
param longestBuildPathUpdaterIdentityName = 'LongestBuildPathUpdaterInt'
5054

5155
param longestBuildPathUpdaterJobName = 'longest-path-updater-job-int'

eng/service-templates/ProductConstructionService/RecreateEnvOnly/production.bicepparam

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,10 @@ param subscriptionTriggererTwiceDailyJobName = 'sub-triggerer-twicedaily-prod'
4040

4141
param subscriptionTriggererDailyJobName = 'sub-triggerer-daily-prod'
4242

43+
param subscriptionTriggererEveryTwoWeeksJobName = 'sub-triggerer-everytwoweeks-prod'
44+
45+
param subscriptionTriggererEveryMonthJobName = 'sub-triggerer-everymonth-prod'
46+
4347
param longestBuildPathUpdaterIdentityName = 'LongestBuildPathUpdaterProd'
4448

4549
param longestBuildPathUpdaterJobName = 'longest-path-updater-job-prod'

eng/service-templates/ProductConstructionService/RecreateEnvOnly/recreate.bicep

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ param feedCleanerIdentityName string
2020
param subscriptionTriggererTwiceDailyJobName string
2121
param subscriptionTriggererDailyJobName string
2222
param subscriptionTriggererWeeklyJobName string
23+
param subscriptionTriggererEveryTwoWeeksJobName string
24+
param subscriptionTriggererEveryMonthJobName string
2325
param longestBuildPathUpdaterJobName string
2426
param feedCleanerJobName string
2527
param replicaNumber int
@@ -155,6 +157,48 @@ module subscriptionTriggererWeekly '../FullCreate/scheduledContainerJob.bicep' =
155157
]
156158
}
157159

160+
module subscriptionTriggererEveryTwoWeeks '../FullCreate/scheduledContainerJob.bicep' = {
161+
name: 'subscriptionTriggererEveryTwoWeeks'
162+
params: {
163+
jobName: subscriptionTriggererEveryTwoWeeksJobName
164+
location: location
165+
aspnetcoreEnvironment: aspnetcoreEnvironment
166+
applicationInsightsConnectionString: applicationInsights.properties.ConnectionString
167+
userAssignedIdentityId: subscriptionTriggererIdentity.id
168+
cronSchedule: '0 5 1,14 * *'
169+
containerRegistryName: containerRegistryName
170+
containerAppsEnvironmentId: containerEnvironment.outputs.containerEnvironmentId
171+
containerImageName: containerImageName
172+
command: 'cd /app/SubscriptionTriggerer && dotnet ProductConstructionService.SubscriptionTriggerer.dll everytwoweeks'
173+
contributorRoleId: contributorRole
174+
deploymentIdentityPrincipalId: deploymentIdentity.properties.principalId
175+
}
176+
dependsOn: [
177+
subscriptionTriggererWeekly
178+
]
179+
}
180+
181+
module subscriptionTriggererEveryMonth '../FullCreate/scheduledContainerJob.bicep' = {
182+
name: 'subscriptionTriggererEveryMonth'
183+
params: {
184+
jobName: subscriptionTriggererEveryMonthJobName
185+
location: location
186+
aspnetcoreEnvironment: aspnetcoreEnvironment
187+
applicationInsightsConnectionString: applicationInsights.properties.ConnectionString
188+
userAssignedIdentityId: subscriptionTriggererIdentity.id
189+
cronSchedule: '0 5 1 * *'
190+
containerRegistryName: containerRegistryName
191+
containerAppsEnvironmentId: containerEnvironment.outputs.containerEnvironmentId
192+
containerImageName: containerImageName
193+
command: 'cd /app/SubscriptionTriggerer && dotnet ProductConstructionService.SubscriptionTriggerer.dll everymonth'
194+
contributorRoleId: contributorRole
195+
deploymentIdentityPrincipalId: deploymentIdentity.properties.principalId
196+
}
197+
dependsOn: [
198+
subscriptionTriggererEveryTwoWeeks
199+
]
200+
}
201+
158202
module longestBuildPathUpdater '../FullCreate/scheduledContainerJob.bicep' = {
159203
name: 'longestBuildPathUpdater'
160204
params: {

eng/service-templates/ProductConstructionService/RecreateEnvOnly/staging.bicepparam

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,10 @@ param subscriptionTriggererTwiceDailyJobName = 'sub-triggerer-twicedaily-int'
3838

3939
param subscriptionTriggererDailyJobName = 'sub-triggerer-daily-int'
4040

41+
param subscriptionTriggererEveryTwoWeeksJobName = 'sub-triggerer-everytwoweeks-int'
42+
43+
param subscriptionTriggererEveryMonthJobName = 'sub-triggerer-everymonth-int'
44+
4145
param longestBuildPathUpdaterIdentityName = 'LongestBuildPathUpdaterInt'
4246

4347
param longestBuildPathUpdaterJobName = 'longest-path-updater-job-int'

eng/templates/stages/deploy.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ stages:
4848
- name: containerappName
4949
value: product-construction-prod
5050
- name: containerjobNames
51-
value: sub-triggerer-twicedaily-prod,sub-triggerer-daily-prod,sub-triggerer-weekly-prod,longest-path-updater-job-prod,feed-cleaner-prod
51+
value: sub-triggerer-twicedaily-prod,sub-triggerer-daily-prod,sub-triggerer-weekly-prod,sub-triggerer-everytwoweeks-prod,sub-triggerer-everymonth-prod,longest-path-updater-job-prod,feed-cleaner-prod
5252
- name: containerappEnvironmentName
5353
value: product-construction-service-env-prod
5454
- name: containerappWorkspaceName
@@ -74,7 +74,7 @@ stages:
7474
- name: containerappName
7575
value: product-construction-int
7676
- name: containerjobNames
77-
value: sub-triggerer-twicedaily-int,sub-triggerer-daily-int,sub-triggerer-weekly-int,longest-path-updater-job-int,feed-cleaner-int
77+
value: sub-triggerer-twicedaily-int,sub-triggerer-daily-int,sub-triggerer-weekly-int,sub-triggerer-everytwoweeks-int,sub-triggerer-everymonth-int,longest-path-updater-job-int,feed-cleaner-int
7878
- name: containerappEnvironmentName
7979
value: product-construction-service-env-int
8080
- name: containerappWorkspaceName

src/Maestro/Maestro.Data/Models/UpdateFrequency.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,6 @@ public enum UpdateFrequency
1010
EveryBuild,
1111
TwiceDaily,
1212
EveryWeek,
13+
EveryTwoWeeks,
14+
EveryMonth,
1315
}

src/Maestro/Maestro.DataProviders/SqlBarClient.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ public async Task<DependencyFlowGraph> GetDependencyFlowGraphAsync(
235235

236236
IEnumerable<string> frequencies
237237
= includedFrequencies == default || includedFrequencies.Count == 0
238-
? new string[] { "everyWeek", "twiceDaily", "everyDay", "everyBuild", "none", }
238+
? new string[] { "everyMonth", "everyTwoWeeks", "everyWeek", "twiceDaily", "everyDay", "everyBuild", "none", }
239239
: includedFrequencies;
240240

241241
Channel targetChannel = null;

0 commit comments

Comments
 (0)