blob: b7e39d68869372be9de71d0685b75aef3b87d7a3 (
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
57
58
|
// Copyright (C) 2019-2023 Algorand, Inc.
// This file is part of go-algorand
//
// go-algorand is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// go-algorand is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with go-algorand. If not, see <https://www.gnu.org/licenses/>.
package remote
import (
"encoding/json"
"os"
)
// BuildConfig is the configuration input for `netgoal build`, for actually processing templates
type BuildConfig struct {
NetworkName string
NetworkPort string
NetworkPort2 string
NetworkPort3 string
NetworkPort4 string
APIEndpoint string
APIEndpoint2 string
APIEndpoint3 string
APIEndpoint4 string
AdminAPIToken string
APIToken string
EnableTelemetry bool
TelemetryURI string
MetricsURI string
RunAsService bool
CrontabSchedule string
EnableAlgoh bool
DashboardEndpoint string
MiscStringString []string
}
// LoadBuildConfig loads a BuildConfig structure from a json file
func LoadBuildConfig(file string) (cfg BuildConfig, err error) {
f, err := os.Open(file)
if err != nil {
return
}
defer f.Close()
dec := json.NewDecoder(f)
err = dec.Decode(&cfg)
return cfg, err
}
|