本文整理汇总了Golang中github.com/globocom/config.GetString函数的典型用法代码示例。如果您正苦于以下问题:Golang GetString函数的具体用法?Golang GetString怎么用?Golang GetString使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了GetString函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: Run
// Run is the function that starts the collector. The dryMode parameter
// indicates whether the collector should loop forever or not.
//
// It assumes the configuration has already been defined (from a config file or
// memory).
func Run(dryMode bool) {
log.Init()
connString, err := config.GetString("database:url")
if err != nil {
connString = db.DefaultDatabaseURL
}
dbName, err := config.GetString("database:name")
if err != nil {
dbName = db.DefaultDatabaseName
}
fmt.Printf("Using the database %q from the server %q.\n\n", dbName, connString)
if !dryMode {
provisioner, err := config.GetString("provisioner")
if err != nil {
fmt.Println("Warning: configuration didn't declare a provisioner, using default provisioner.")
provisioner = "juju"
}
app.Provisioner, err = provision.Get(provisioner)
if err != nil {
fatal(err)
}
fmt.Printf("Using %q provisioner.\n\n", provisioner)
timer, err := config.GetInt("colletor:ticker-time")
if err != nil {
timer = 60
}
ticker := time.Tick(time.Duration(timer) * time.Second)
fmt.Println("tsuru collector agent started...")
collect(ticker)
}
}
开发者ID:nemx,项目名称:tsuru,代码行数:38,代码来源:runner.go
示例2: Run
func Run(flags map[string]interface{}) {
configFile := loadConfig(flags)
log.Init()
dry, ok := flags["dry"].(bool)
if !ok {
dry = false
}
connString, err := config.GetString("database:url")
if err != nil {
fatal(err)
}
dbName, err := config.GetString("database:name")
if err != nil {
fatal(err)
}
fmt.Printf("Using the database %q from the server %q.\n\n", dbName, connString)
if !dry {
provisioner, err := config.GetString("provisioner")
if err != nil {
fmt.Printf("Warning: %q didn't declare a provisioner, using default provisioner.\n", configFile)
provisioner = "juju"
}
app.Provisioner, err = provision.Get(provisioner)
if err != nil {
fatal(err)
}
fmt.Printf("Using %q provisioner.\n\n", provisioner)
ticker := time.Tick(time.Minute)
fmt.Println("tsuru collector agent started...")
collect(ticker)
}
}
开发者ID:rif,项目名称:golang-stuff,代码行数:33,代码来源:runner.go
示例3: AddRoute
func (r *NginxRouter) AddRoute(name, address string) error {
domain, err := config.GetString("nginx:domain")
if err != nil {
return err
}
routesPath, err := config.GetString("nginx:routes-path")
if err != nil {
return err
}
file, err := filesystem().Create(routesPath + "/" + name)
if err != nil {
return err
}
defer file.Close()
template := `server {
listen 80;
server_name %s.%s;
location / {
proxy_pass http://%s;
}
}`
template = fmt.Sprintf(template, name, domain, address)
data := []byte(template)
_, err = file.Write(data)
if err != nil {
return err
}
return r.restart()
}
开发者ID:richardjoo,项目名称:tsuru,代码行数:29,代码来源:router.go
示例4: dockerCluster
func dockerCluster() *cluster.Cluster {
cmutex.Lock()
defer cmutex.Unlock()
if dCluster == nil {
if segregate, _ := config.GetBool("docker:segregate"); segregate {
dCluster, _ = cluster.New(segScheduler)
} else {
clusterNodes = make(map[string]string)
servers, _ := config.GetList("docker:servers")
if len(servers) < 1 {
log.Fatal(`Tsuru is misconfigured. Setting "docker:servers" is mandatory`)
}
nodes := make([]cluster.Node, len(servers))
for index, server := range servers {
id := fmt.Sprintf("server%d", index)
node := cluster.Node{
ID: id,
Address: server,
}
nodes[index] = node
clusterNodes[id] = server
}
dCluster, _ = cluster.New(nil, nodes...)
}
if redisServer, err := config.GetString("docker:scheduler:redis-server"); err == nil {
prefix, _ := config.GetString("docker:scheduler:redis-prefix")
if password, err := config.GetString("docker:scheduler:redis-password"); err == nil {
dCluster.SetStorage(storage.AuthenticatedRedis(redisServer, password, prefix))
} else {
dCluster.SetStorage(storage.Redis(redisServer, prefix))
}
}
}
return dCluster
}
开发者ID:prodigeni,项目名称:tsuru,代码行数:35,代码来源:docker.go
示例5: get
func (redismqQFactory) get(name, consumerName string) (*redismqQ, error) {
host, err := config.GetString("queue:redis-host")
if err != nil {
host = "localhost"
}
port, err := config.GetString("queue:redis-port")
if err != nil {
if nport, err := config.GetInt("queue:redis-port"); err != nil {
port = "6379"
} else {
port = fmt.Sprintf("%d", nport)
}
}
password, _ := config.GetString("queue:redis-password")
db, err := config.GetInt("queue:redis-db")
if err != nil {
db = 3
}
queue := redismq.CreateQueue(host, port, password, int64(db), name)
consumer, err := queue.AddConsumer(consumerName)
if err != nil {
return nil, err
}
return &redismqQ{name: name, queue: queue, consumer: consumer}, nil
}
开发者ID:nightshade427,项目名称:tsuru,代码行数:25,代码来源:redismq.go
示例6: sshCmds
// sshCmds returns the commands needed to start a ssh daemon.
func sshCmds() ([]string, error) {
addKeyCommand, err := config.GetString("docker:ssh:add-key-cmd")
if err != nil {
return nil, err
}
keyFile, err := config.GetString("docker:ssh:public-key")
if err != nil {
if u, err := user.Current(); err == nil {
keyFile = path.Join(u.HomeDir, ".ssh", "id_rsa.pub")
} else {
keyFile = os.ExpandEnv("${HOME}/.ssh/id_rsa.pub")
}
}
f, err := filesystem().Open(keyFile)
if err != nil {
return nil, err
}
defer f.Close()
keyContent, err := ioutil.ReadAll(f)
if err != nil {
return nil, err
}
sshdPath, err := config.GetString("docker:ssh:sshd-path")
if err != nil {
sshdPath = "/usr/sbin/sshd"
}
return []string{
fmt.Sprintf("%s %s", addKeyCommand, bytes.TrimSpace(keyContent)),
sshdPath + " -D",
}, nil
}
开发者ID:rif,项目名称:golang-stuff,代码行数:32,代码来源:commands.go
示例7: runContainerCmd
func runContainerCmd(app provision.App) ([]string, error) {
docker, err := config.GetString("docker:binary")
if err != nil {
return []string{}, err
}
repoNamespace, err := config.GetString("docker:repository-namespace")
if err != nil {
return []string{}, err
}
runBin, err := config.GetString("docker:run-cmd:bin")
if err != nil {
return []string{}, err
}
runArgs, err := config.GetString("docker:run-cmd:args")
if err != nil {
return []string{}, err
}
port, err := config.GetString("docker:run-cmd:port")
if err != nil {
return []string{}, err
}
cmd := fmt.Sprintf("%s %s", runBin, runArgs)
imageName := fmt.Sprintf("%s/%s", repoNamespace, app.GetName()) // TODO (flaviamissi): should be external function
wholeCmd := []string{docker, "run", "-d", "-p", port, imageName, cmd}
return wholeCmd, nil
}
开发者ID:nihao,项目名称:tsuru,代码行数:26,代码来源:docker.go
示例8: RunAdminServer
// RunAdminServer starts tsuru administrative api
func RunAdminServer(dry bool) {
log.Init()
connString, err := config.GetString("database:url")
if err != nil {
connString = db.DefaultDatabaseURL
}
dbName, err := config.GetString("database:name")
if err != nil {
dbName = db.DefaultDatabaseName
}
fmt.Printf("Using the database %q from the server %q.\n\n", dbName, connString)
if !dry {
provisioner, err := getProvisioner()
if err != nil {
fmt.Printf("Warning: configuration didn't declare a provisioner, using default provisioner.\n")
}
app.Provisioner, err = provision.Get(provisioner)
if err != nil {
fatal(err)
}
fmt.Printf("Using %q provisioner.\n\n", provisioner)
listen, err := config.GetString("admin-listen")
if err != nil {
fatal(err)
}
listener, err := net.Listen("tcp", listen)
if err != nil {
fatal(err)
}
fmt.Printf("tsuru HTTP server listening at %s...\n", listen)
http.Handle("/", m)
fatal(http.Serve(listener, nil))
}
}
开发者ID:nkts,项目名称:golang-devops-stuff,代码行数:36,代码来源:admin.go
示例9: TestGetServerUri
func (s *S) TestGetServerUri(c *gocheck.C) {
server, err := config.GetString("git:host")
c.Assert(err, gocheck.IsNil)
protocol, err := config.GetString("git:protocol")
port, err := config.Get("git:port")
uri := GitServerUri()
c.Assert(uri, gocheck.Equals, fmt.Sprintf("%s://%s:%d", protocol, server, port))
}
开发者ID:nedmax,项目名称:tsuru,代码行数:8,代码来源:repository_test.go
示例10: TestGetServerUriWithoutPort
func (s *S) TestGetServerUriWithoutPort(c *gocheck.C) {
config.Unset("git:port")
defer config.Set("git:port", 8080)
server, err := config.GetString("git:host")
c.Assert(err, gocheck.IsNil)
protocol, err := config.GetString("git:protocol")
uri := GitServerUri()
c.Assert(uri, gocheck.Equals, fmt.Sprintf("%s://%s", protocol, server))
}
开发者ID:nedmax,项目名称:tsuru,代码行数:9,代码来源:repository_test.go
示例11: main
func main() {
var (
configFile string
dry bool
)
logger, err := syslog.NewLogger(syslog.LOG_INFO, stdlog.LstdFlags)
if err != nil {
stdlog.Fatal(err)
}
log.SetLogger(logger)
flag.StringVar(&configFile, "config", "/etc/tsuru/tsuru.conf", "tsuru config file")
flag.BoolVar(&dry, "dry", false, "dry-run: does not start the agent (for testing purposes)")
flag.Parse()
err = config.ReadConfigFile(configFile)
if err != nil {
fatal(err)
}
connString, err := config.GetString("database:url")
if err != nil {
fatal(err)
}
dbName, err := config.GetString("database:name")
if err != nil {
fatal(err)
}
db.Session, err = db.Open(connString, dbName)
if err != nil {
fatal(err)
}
defer db.Session.Close()
fmt.Printf("Connected to MongoDB server at %s.\n", connString)
fmt.Printf("Using the database %q.\n\n", dbName)
if !dry {
provisioner, err := config.GetString("provisioner")
if err != nil {
fmt.Printf("Warning: %q didn't declare a provisioner, using default provisioner.\n", configFile)
provisioner = "juju"
}
app.Provisioner, err = provision.Get(provisioner)
if err != nil {
fatal(err)
}
fmt.Printf("Using %q provisioner.\n\n", provisioner)
qServer, err := config.GetString("queue-server")
if err != nil {
fatal(err)
}
fmt.Printf("Connected to queue server at %s.\n", qServer)
go handleMessages()
ticker := time.Tick(time.Minute)
fmt.Println("tsuru collector agent started...")
jujuCollect(ticker)
}
}
开发者ID:elimisteve,项目名称:tsuru,代码行数:56,代码来源:main.go
示例12: assembleImageName
func assembleImageName(appName string) string {
parts := make([]string, 0, 3)
registry, _ := config.GetString("docker:registry")
if registry != "" {
parts = append(parts, registry)
}
repoNamespace, _ := config.GetString("docker:repository-namespace")
parts = append(parts, repoNamespace, appName)
return strings.Join(parts, "/")
}
开发者ID:pombredanne,项目名称:docker-stuff,代码行数:10,代码来源:docker.go
示例13: TestReadWriteURLUseUidFromConfigFile
func (s *S) TestReadWriteURLUseUidFromConfigFile(c *gocheck.C) {
uid, err := config.GetString("uid")
c.Assert(err, gocheck.IsNil)
host, err := config.GetString("host")
c.Assert(err, gocheck.IsNil)
config.Set("uid", "test")
defer config.Set("uid", uid)
remote := (&Repository{Name: "f#"}).ReadWriteURL()
c.Assert(remote, gocheck.Equals, fmt.Sprintf("[email protected]%s:f#.git", host))
}
开发者ID:karlpilkington,项目名称:golang-devops-stuff,代码行数:10,代码来源:repository_test.go
示例14: Conn
// Conn reads the tsuru config and calls Open to get a database connection.
//
// Most tsuru packages should probably use this function. Open is intended for
// use when supporting more than one database.
func Conn() (*Storage, error) {
url, _ := config.GetString("database:url")
if url == "" {
url = DefaultDatabaseURL
}
dbname, _ := config.GetString("database:name")
if dbname == "" {
dbname = DefaultDatabaseName
}
return Open(url, dbname)
}
开发者ID:pombredanne,项目名称:tsuru,代码行数:15,代码来源:storage.go
示例15: Conn
// Conn reads the tsuru config and calls Open to get a database connection.
//
// Most tsuru packages should probably use this function. Open is intended for
// use when supporting more than one database.
func Conn() (*Storage, error) {
url, err := config.GetString("database:url")
if err != nil {
return nil, fmt.Errorf("configuration error: %s", err)
}
dbname, err := config.GetString("database:name")
if err != nil {
return nil, fmt.Errorf("configuration error: %s", err)
}
return Open(url, dbname)
}
开发者ID:johnvilsack,项目名称:golang-stuff,代码行数:15,代码来源:storage.go
示例16: SshURL
// SshURL formats the git ssh url and return it. If no remote is configured in
// gandalf.conf, this method panics.
func (r *Repository) SshURL() string {
host, err := config.GetString("host")
if err != nil {
panic(err.Error())
}
uid, err := config.GetString("uid")
if err != nil {
panic(err.Error())
}
return fmt.Sprintf("%[email protected]%s:%s.git", uid, host, r.Name)
}
开发者ID:johnvilsack,项目名称:golang-stuff,代码行数:13,代码来源:repository.go
示例17: TestReadWriteURLWithSSH
func (s *S) TestReadWriteURLWithSSH(c *gocheck.C) {
config.Set("git:ssh:use", true)
defer config.Unset("git:ssh:use")
uid, err := config.GetString("uid")
c.Assert(err, gocheck.IsNil)
host, err := config.GetString("host")
c.Assert(err, gocheck.IsNil)
remote := (&Repository{Name: "lol"}).ReadWriteURL()
expected := fmt.Sprintf("ssh://%[email protected]%s/lol.git", uid, host)
c.Assert(remote, gocheck.Equals, expected)
}
开发者ID:karlpilkington,项目名称:golang-devops-stuff,代码行数:11,代码来源:repository_test.go
示例18: getS3Endpoint
func (bootstrapInstanceIDHealer) getS3Endpoint() *s3.S3 {
access, err := config.GetString("aws:access-key-id")
if err != nil {
log.Fatal(err)
}
secret, err := config.GetString("aws:secret-access-key")
if err != nil {
log.Fatal(err)
}
auth := aws.Auth{AccessKey: access, SecretKey: secret}
return s3.New(auth, aws.USEast)
}
开发者ID:pombredanne,项目名称:docker-stuff,代码行数:12,代码来源:healer.go
示例19: TestDeployCmds
func (s *S) TestDeployCmds(c *gocheck.C) {
app := testing.NewFakeApp("app-name", "python", 1)
deployCmd, err := config.GetString("docker:deploy-cmd")
c.Assert(err, gocheck.IsNil)
version := "version"
appRepo := repository.ReadOnlyURL(app.GetName())
user, err := config.GetString("docker:ssh:user")
c.Assert(err, gocheck.IsNil)
expected := []string{"sudo", "-u", user, deployCmd, appRepo}
cmds, err := deployCmds(app, version)
c.Assert(err, gocheck.IsNil)
c.Assert(cmds, gocheck.DeepEquals, expected)
}
开发者ID:paulopatto,项目名称:tsuru,代码行数:13,代码来源:commands_test.go
示例20: deployCmds
// deployCmds returns the commands that is used when provisioner
// deploy an unit.
func deployCmds(app provision.App, version string) ([]string, error) {
deployCmd, err := config.GetString("docker:deploy-cmd")
if err != nil {
return nil, err
}
appRepo := repository.ReadOnlyURL(app.GetName())
user, err := config.GetString("docker:ssh:user")
if err != nil {
return nil, err
}
cmds := []string{"sudo", "-u", user, deployCmd, appRepo, version}
return cmds, nil
}
开发者ID:rif,项目名称:golang-stuff,代码行数:15,代码来源:commands.go
注:本文中的github.com/globocom/config.GetString函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论