aboutsummaryrefslogtreecommitdiff
path: root/apps/VNLib.WebServer/release.taskfile.yaml
blob: 86c25384740aa08555d710398bec5175cba77f37 (plain)
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
# https://taskfile.dev

version: '3'

vars:


tasks:

  default:
    desc: "Runs the server in a default startup mode for production use"
    vars:
      ARGS: "--config ../config/config.json --input-off"

    cmds:
     - task: run
       vars: { ARGS: '{{.ARGS}}' }

  run-debug:
    env: 
      VNLIB_SHARED_HEAP_DIAGNOSTICS: 1
      MIMALLOC_VERBOSE: 1  #incase mimalloc is used we can force debugging

    vars:
      ARGS: "--config ../config/config.json --debug"

    cmds:
     - task: run
       vars: { ARGS: '{{.ARGS}}' }

  run-paranoid:
    desc: "Runs the server with paranoid security settings"
    env:
      VNLIB_SHARED_HEAP_GLOBAL_ZERO: 1   #force global heap zeroing
      VNLIB_SHARED_HEAP_DIAGNOSTICS: 0	 #disable heap diagnostics

    vars:
      #enable zero allocation, even though global heap zero is set
      # silent mode to reduce logging to the console
      # force OS ciphers for TLS encryption
      ARGS: "--config ../config/config.json
            --zero-alloc
            --silent
            --use-os-ciphers
            --input-off"

    cmds:
      task: run
      vars: { ARGS: '{{.ARGS}}' }

  run:
    des: "Run the webserver with your specified command line arguments"
    interactive: true
    cmds:
      #run the webserver as a cross-platform application
      - dotnet VNLib.WebServer.dll {{.ARGS}} {{.CLI_ARGS}}