@@ -60,40 +60,41 @@ var (
60
60
Short : "Start ArangoDB clusters & single servers with ease" ,
61
61
Run : cmdMainRun ,
62
62
}
63
- log = logging .MustGetLogger (projectName )
64
- id string
65
- agencySize int
66
- arangodPath string
67
- arangodJSPath string
68
- masterPort int
69
- rrPath string
70
- startCoordinator bool
71
- startDBserver bool
72
- startLocalSlaves bool
73
- mode string
74
- dataDir string
75
- ownAddress string
76
- masterAddress string
77
- verbose bool
78
- serverThreads int
79
- serverStorageEngine string
80
- allPortOffsetsUnique bool
81
- jwtSecretFile string
82
- sslKeyFile string
83
- sslAutoKeyFile bool
84
- sslAutoServerName string
85
- sslAutoOrganization string
86
- sslCAFile string
87
- dockerEndpoint string
88
- dockerImage string
89
- dockerStarterImage = defaultDockerStarterImage
90
- dockerUser string
91
- dockerContainerName string
92
- dockerGCDelay time.Duration
93
- dockerNetHost bool // Deprecated
94
- dockerNetworkMode string
95
- dockerPrivileged bool
96
- passthroughOptions = make (map [string ]* service.PassthroughOption )
63
+ log = logging .MustGetLogger (projectName )
64
+ id string
65
+ agencySize int
66
+ arangodPath string
67
+ arangodJSPath string
68
+ masterPort int
69
+ rrPath string
70
+ startCoordinator bool
71
+ startDBserver bool
72
+ startLocalSlaves bool
73
+ mode string
74
+ dataDir string
75
+ ownAddress string
76
+ masterAddress string
77
+ verbose bool
78
+ serverThreads int
79
+ serverStorageEngine string
80
+ allPortOffsetsUnique bool
81
+ jwtSecretFile string
82
+ sslKeyFile string
83
+ sslAutoKeyFile bool
84
+ sslAutoServerName string
85
+ sslAutoOrganization string
86
+ sslCAFile string
87
+ rocksDBEncryptionKeyFile string
88
+ dockerEndpoint string
89
+ dockerImage string
90
+ dockerStarterImage = defaultDockerStarterImage
91
+ dockerUser string
92
+ dockerContainerName string
93
+ dockerGCDelay time.Duration
94
+ dockerNetHost bool // Deprecated
95
+ dockerNetworkMode string
96
+ dockerPrivileged bool
97
+ passthroughOptions = make (map [string ]* service.PassthroughOption )
97
98
98
99
maskAny = errors .WithStack
99
100
)
@@ -121,6 +122,7 @@ func init() {
121
122
f .StringVar (& rrPath , "server.rr" , "" , "Path of rr" )
122
123
f .IntVar (& serverThreads , "server.threads" , 0 , "Adjust server.threads of each server" )
123
124
f .StringVar (& serverStorageEngine , "server.storage-engine" , "mmfiles" , "Type of storage engine to use (mmfiles|rocksdb) (3.2 and up)" )
125
+ f .StringVar (& rocksDBEncryptionKeyFile , "rocksdb.encryption-keyfile" , "" , "Key file used for RocksDB encryption. (Enterprise Edition 3.2 and up)" )
124
126
125
127
f .StringVar (& dockerEndpoint , "docker.endpoint" , "unix:///var/run/docker.sock" , "Endpoint used to reach the docker daemon" )
126
128
f .StringVar (& dockerImage , "docker.image" , getEnvVar ("DOCKER_IMAGE" , "" ), "name of the Docker image to use to launch arangod instances (leave empty to avoid using docker)" )
@@ -358,6 +360,7 @@ func cmdMainRun(cmd *cobra.Command, args []string) {
358
360
jwtSecretFile = mustExpand (jwtSecretFile )
359
361
sslKeyFile = mustExpand (sslKeyFile )
360
362
sslCAFile = mustExpand (sslCAFile )
363
+ rocksDBEncryptionKeyFile = mustExpand (rocksDBEncryptionKeyFile )
361
364
362
365
// Check database executable
363
366
if ! runningInDocker {
@@ -420,37 +423,38 @@ func cmdMainRun(cmd *cobra.Command, args []string) {
420
423
421
424
// Create service
422
425
serviceConfig := service.Config {
423
- ID : id ,
424
- Mode : mode ,
425
- AgencySize : agencySize ,
426
- ArangodPath : arangodPath ,
427
- ArangodJSPath : arangodJSPath ,
428
- MasterPort : masterPort ,
429
- RrPath : rrPath ,
430
- StartCoordinator : startCoordinator ,
431
- StartDBserver : startDBserver ,
432
- StartLocalSlaves : startLocalSlaves ,
433
- DataDir : dataDir ,
434
- OwnAddress : ownAddress ,
435
- MasterAddress : masterAddress ,
436
- Verbose : verbose ,
437
- ServerThreads : serverThreads ,
438
- ServerStorageEngine : serverStorageEngine ,
439
- AllPortOffsetsUnique : allPortOffsetsUnique ,
440
- JwtSecret : jwtSecret ,
441
- SslKeyFile : sslKeyFile ,
442
- SslCAFile : sslCAFile ,
443
- RunningInDocker : isRunningInDocker (),
444
- DockerContainerName : dockerContainerName ,
445
- DockerEndpoint : dockerEndpoint ,
446
- DockerImage : dockerImage ,
447
- DockerStarterImage : dockerStarterImage ,
448
- DockerUser : dockerUser ,
449
- DockerGCDelay : dockerGCDelay ,
450
- DockerNetworkMode : dockerNetworkMode ,
451
- DockerPrivileged : dockerPrivileged ,
452
- ProjectVersion : projectVersion ,
453
- ProjectBuild : projectBuild ,
426
+ ID : id ,
427
+ Mode : mode ,
428
+ AgencySize : agencySize ,
429
+ ArangodPath : arangodPath ,
430
+ ArangodJSPath : arangodJSPath ,
431
+ MasterPort : masterPort ,
432
+ RrPath : rrPath ,
433
+ StartCoordinator : startCoordinator ,
434
+ StartDBserver : startDBserver ,
435
+ StartLocalSlaves : startLocalSlaves ,
436
+ DataDir : dataDir ,
437
+ OwnAddress : ownAddress ,
438
+ MasterAddress : masterAddress ,
439
+ Verbose : verbose ,
440
+ ServerThreads : serverThreads ,
441
+ ServerStorageEngine : serverStorageEngine ,
442
+ AllPortOffsetsUnique : allPortOffsetsUnique ,
443
+ JwtSecret : jwtSecret ,
444
+ SslKeyFile : sslKeyFile ,
445
+ SslCAFile : sslCAFile ,
446
+ RocksDBEncryptionKeyFile : rocksDBEncryptionKeyFile ,
447
+ RunningInDocker : isRunningInDocker (),
448
+ DockerContainerName : dockerContainerName ,
449
+ DockerEndpoint : dockerEndpoint ,
450
+ DockerImage : dockerImage ,
451
+ DockerStarterImage : dockerStarterImage ,
452
+ DockerUser : dockerUser ,
453
+ DockerGCDelay : dockerGCDelay ,
454
+ DockerNetworkMode : dockerNetworkMode ,
455
+ DockerPrivileged : dockerPrivileged ,
456
+ ProjectVersion : projectVersion ,
457
+ ProjectBuild : projectBuild ,
454
458
}
455
459
for _ , ptOpt := range passthroughOptions {
456
460
serviceConfig .PassthroughOptions = append (serviceConfig .PassthroughOptions , * ptOpt )
0 commit comments