-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathex.ps1.old
111 lines (96 loc) · 3.79 KB
/
ex.ps1.old
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
. "C:\Program Files\Microsoft Forefront Identity Manager\2010\Synchronization Service\RunScript\run-funtions.ps1"
$ScriptstartTime = get-date
$logger.Info("********* Start script run {0}",$MyInvocation.MyCommand.Name)
#Stop if any still running
if(AnyInProgress){
$logger.warn("Agent running in progress... retry in 60s")
sleep 60
if(AnyInProgress){
$logger.error("Agent running in progress stop {0}",$MyInvocation.MyCommand.Name)
exit
}
}
#Timeout alert
$timer = New-Object System.Timers.Timer
$timer.Interval = 1200000 #20min
#$timer.Interval = 1800000 #30min
$timer.AutoReset = $false
$Timeoutaction = {
$logger.error("Script timeout alert!")
}
Register-ObjectEvent -InputObject $timer -SourceIdentifier MIMTimeoutElapsed -EventName Elapsed -Action $Timeoutaction
$timer.Enabled = $true
$ImportStartTime = get-date
#Import start stage
$logger.Info("*** Import stage")
start-agent 'WaHSAn' 'Full import' -AsJob
sleep 5
start-agent 'Heroma.KP.PERSON' 'Full import' -AsJob
sleep 5
start-agent 'AD' 'Delta import'
start-agent 'AnvandarID' 'Delta import'
start-agent 'AnvandarID-Special' 'Full import'
start-agent 'ADAM' 'Delta import'
#start-agent 'WaHSAn' 'Delta import' -AsJob
start-agent 'Nice' 'Delta import'
start-agent 'ARX' 'Delta import'
start-agent 'SharePointSite' 'Full import'
start-agent 'AID-Special' 'Full import'
start-agent 'RCARD-M5' 'Delta import'
start-agent 'Heroma.BH.USERID' 'Full import' -AsJob
sleep 5
start-agent 'Heroma.KP.ANSTAELLNING' 'Full import' -AsJob
#Wait on jobb, log & remove
GetWaitLogRemove-jobs
#Import end stage
#Save all change row (hologram and deltas)
SaveChangeCS $ImportStartTime
#
$ExportStartTime = get-date
#Sync start stage
$logger.Info("*** Sync stage")
start-agent 'AnvandarID' 'Delta sync' -StageCount
start-agent 'AnvandarID-Special' 'Delta sync' -StageCount
# Dalfolke after AnvandarID! So new project has crate uniqueIdentifier i MV
$ImportStartTime = get-date
start-agent 'Dalfolke' 'Delta import'
#Save all change row (hologram and deltas)
SaveChangeCS $ImportStartTime
start-agent 'Dalfolke' 'Delta sync' -StageCount
#
start-agent 'ADAM' 'Delta sync' -StageCount
start-agent 'AD' 'Delta sync' -StageCount
start-agent 'Heroma.KP.ANSTAELLNING' 'Delta sync' -StageCount
start-agent 'AID-Special' 'Delta sync'
start-agent 'Heroma.BH.USERID' 'Delta sync' -StageCount
start-agent 'Heroma.KP.PERSON' 'Delta sync' -StageCount
start-agent 'Nice' 'Delta sync' -StageCount
start-agent 'ARX' 'Delta sync' -StageCount
start-agent 'WaHSAn' 'Delta sync' -StageCount
start-agent 'RCARD-M5' 'Delta sync' -StageCount
start-agent 'SharePointSite' 'Full sync'
#Sync end stage
SaveChangeCS $ExportStartTime -export
#Export start stage
$logger.Info("*** Export stage")
start-agent 'AnvandarID' 'Export' -ExportCount -AsJob
start-agent 'AnvandarID-Special' 'Export' -ExportCount -AsJob
start-agent 'Synergi.Anvandare' 'Export' -ExportCount -AsJob
GetWaitLogRemove-jobs
start-agent 'WaHSAn' 'Export' -ExportCount -AsJob
$UserOrgExportCount = (export-count 'UserOrgExport')
start-agent 'UserOrgExport' 'Export' -ExportCount -AsJob
start-agent 'Nice' 'Export' -ExportCount -AsJob
GetWaitLogRemove-jobs
start-agent 'Medusa' 'Export' -ExportCount -AsJob
start-agent 'SharePointSite' 'Export' -ExportCount -AsJob
start-agent 'Heroma.KP.PERSON' 'Export' -ExportCount -AsJob
GetWaitLogRemove-jobs
start-agent 'Heroma.BH.USERID' 'Export' -ExportCount -AsJob
start-agent 'AD' 'Export' -ExportCount -AsJob
start-agent 'ARX' 'Export' -ExportCount -AsJob
start-agent 'RCARD-M5' 'Export' -ExportCount -AsJob
GetWaitLogRemove-jobs
#Export end stage
$logger.Info("********* End script run {0} execTime:{1}s",$MyInvocation.MyCommand.Name,((get-date)-$ScriptstartTime).TotalSeconds )
Unregister-Event MIMTimeoutElapsed