Skip to content

Commit 0a1d415

Browse files
author
3nprob
committed
Add --config param to specify configuration file path
1 parent cc7ab39 commit 0a1d415

2 files changed

Lines changed: 14 additions & 10 deletions

File tree

cmd/proxy/main.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ var (
2424
router = initRouter()
2525
sioServer *socketio.Server
2626

27+
configPath string
2728
port uint16
2829
tls bool
2930
network string
@@ -121,7 +122,7 @@ func initLauncherWs() {
121122

122123
func initServiceManager() {
123124
logger.Debug("Creating service manager")
124-
manager, err := service.NewManager(network)
125+
manager, err := service.NewManager(network, configPath)
125126
if err != nil {
126127
logger.Fatalf("Failed to create service manager: %s", err)
127128
}
@@ -178,6 +179,7 @@ func main() {
178179
Use: "proxy",
179180
Short: "The API gateway of opendexd-docker",
180181
}
182+
cmd.PersistentFlags().StringVar(&configPath, "config", "c", "/root/network/data/config.json", "Configuration file")
181183
cmd.PersistentFlags().Uint16VarP(&port, "port", "p", 8080, "The port to listen")
182184
cmd.PersistentFlags().BoolVar(&tls, "tls", false, "Enable TLS support")
183185
err = cmd.Execute()

service/manager.go

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,12 @@ var (
3939
)
4040

4141
type Manager struct {
42-
network string
43-
services []core.Service
44-
factory core.DockerClientFactory
45-
logger *logrus.Entry
46-
listeners map[string]core.DockerEventListener
42+
configPath string
43+
network string
44+
services []core.Service
45+
factory core.DockerClientFactory
46+
logger *logrus.Entry
47+
listeners map[string]core.DockerEventListener
4748

4849
*LauncherAgent
4950
}
@@ -52,9 +53,9 @@ func containerName(network string, service string) string {
5253
return fmt.Sprintf("%s_%s_1", network, service)
5354
}
5455

55-
func initServices(network string, dockerClient *docker.Client, listeners map[string]core.DockerEventListener) []core.Service {
56+
func initServices(configPath string, network string, dockerClient *docker.Client, listeners map[string]core.DockerEventListener) []core.Service {
5657

57-
f, err := ioutil.ReadFile("/root/network/data/config.json")
58+
f, err := ioutil.ReadFile(configPath)
5859
if err != nil {
5960
panic(err)
6061
}
@@ -128,7 +129,7 @@ func initServices(network string, dockerClient *docker.Client, listeners map[str
128129
return result
129130
}
130131

131-
func NewManager(network string) (*Manager, error) {
132+
func NewManager(network string, configPath string) (*Manager, error) {
132133
factory, err := core.NewClientFactory()
133134
if err != nil {
134135
return nil, err
@@ -140,7 +141,8 @@ func NewManager(network string) (*Manager, error) {
140141

141142
manager := Manager{
142143
network: network,
143-
services: initServices(network, factory.GetSharedInstance(), listeners),
144+
configPath: configPath,
145+
services: initServices(network, configPath, factory.GetSharedInstance(), listeners),
144146
factory: factory,
145147
logger: logger,
146148
listeners: listeners,

0 commit comments

Comments
 (0)