-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathserver.ps1
40 lines (30 loc) · 1.5 KB
/
server.ps1
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
if(!(Get-Module -Name Pode -ListAvailable -ErrorAction SilentlyContinue))
{
throw "You must install the Pode module."
}
Start-PodeServer {
New-PodeLoggingMethod -Terminal | Enable-PodeErrorLogging -Level Error, Debug, Verbose
Set-PodeViewEngine -Type Pode
Enable-PodeSessionMiddleware -Duration 1200 -Extend
########################################################################################
#Region Server Level Thread Safe 'state' objects
Lock-PodeObject -ScriptBlock {
Set-PodeState -Name 'ApplicationRoot' -Value @{ 'ApplicationRoot' = $PSScriptRoot } | Out-Null
}
#EndRegion Server Level Thread Safe Objects
########################################################################################
#Region Additional state objects
#EndRegion Additional state objects
########################################################################################
#Region Listeners
Add-PodeEndpoint -Address (Get-PodeConfig).Url -Port $(Get-PodeConfig).Port -Protocol Http
Add-PodeEndpoint -Address (Get-PodeConfig).Url -Port $(Get-PodeConfig).Port -Protocol Ws
#EndRegion Listeners
########################################################################################
#Region Schedules
Add-PodeSchedule -Name 'get-user-details' -Cron '@annually' -StartTime (Get-Date).AddDays(9999) -FilePath "./workerscripts/get-user-details.ps1"
#EndRegion Schedules
########################################################################################
#Region Routes
Use-PodeRoutes -Path "routes"
} -Threads 3