github.com/cloudbase/juju-core@v0.0.0-20140504232958-a7271ac7912f/cmd/jujud/unit_windows.go (about) 1 package main 2 3 import ( 4 "launchpad.net/juju-core/worker" 5 // "launchpad.net/juju-core/worker/rsyslog" 6 "launchpad.net/juju-core/worker/uniter" 7 "launchpad.net/juju-core/worker/upgrader" 8 workerlogger "launchpad.net/juju-core/worker/logger" 9 ) 10 11 func (a *UnitAgent) APIWorkers() (worker.Worker, error) { 12 agentConfig := a.Conf.config 13 st, entity, err := openAPIState(agentConfig, a) 14 if err != nil { 15 return nil, err 16 } 17 dataDir := a.Conf.dataDir 18 runner := worker.NewRunner(connectionIsFatal(st), moreImportant) 19 runner.StartWorker("upgrader", func() (worker.Worker, error) { 20 return upgrader.NewUpgrader(st.Upgrader(), agentConfig), nil 21 }) 22 runner.StartWorker("logger", func() (worker.Worker, error) { 23 return workerlogger.NewLogger(st.Logger(), agentConfig), nil 24 }) 25 runner.StartWorker("uniter", func() (worker.Worker, error) { 26 return uniter.NewUniter(st.Uniter(), entity.Tag(), dataDir), nil 27 }) 28 // runner.StartWorker("rsyslog", func() (worker.Worker, error) { 29 // return newRsyslogConfigWorker(st.Rsyslog(), agentConfig, rsyslog.RsyslogModeForwarding) 30 // }) 31 return newCloseWorker(runner, st), nil 32 }