@@ -60,40 +60,41 @@ var (
6060 Short : "Start ArangoDB clusters & single servers with ease" ,
6161 Run : cmdMainRun ,
6262 }
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 )
9798
9899 maskAny = errors .WithStack
99100)
@@ -121,6 +122,7 @@ func init() {
121122 f .StringVar (& rrPath , "server.rr" , "" , "Path of rr" )
122123 f .IntVar (& serverThreads , "server.threads" , 0 , "Adjust server.threads of each server" )
123124 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)" )
124126
125127 f .StringVar (& dockerEndpoint , "docker.endpoint" , "unix:///var/run/docker.sock" , "Endpoint used to reach the docker daemon" )
126128 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) {
358360 jwtSecretFile = mustExpand (jwtSecretFile )
359361 sslKeyFile = mustExpand (sslKeyFile )
360362 sslCAFile = mustExpand (sslCAFile )
363+ rocksDBEncryptionKeyFile = mustExpand (rocksDBEncryptionKeyFile )
361364
362365 // Check database executable
363366 if ! runningInDocker {
@@ -420,37 +423,38 @@ func cmdMainRun(cmd *cobra.Command, args []string) {
420423
421424 // Create service
422425 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 ,
454458 }
455459 for _ , ptOpt := range passthroughOptions {
456460 serviceConfig .PassthroughOptions = append (serviceConfig .PassthroughOptions , * ptOpt )
0 commit comments