1
0
mirror of https://github.com/rancher/os.git synced 2025-09-01 14:48:55 +00:00

Early cloud-init

This commit is contained in:
Josh Curl
2016-11-09 11:08:30 -08:00
parent 72f7f9a572
commit 13b34a6668
18 changed files with 312 additions and 249 deletions

View File

@@ -1,54 +1,24 @@
package network
import (
"flag"
"os"
"golang.org/x/net/context"
log "github.com/Sirupsen/logrus"
"github.com/docker/libnetwork/resolvconf"
"github.com/rancher/os/config"
"github.com/rancher/os/docker"
"github.com/rancher/os/hostname"
"github.com/rancher/os/netconf"
)
var (
stopNetworkPre bool
flags *flag.FlagSet
)
func init() {
flags = flag.NewFlagSet(os.Args[0], flag.ContinueOnError)
flags.BoolVar(&stopNetworkPre, "stop-network-pre", false, "")
}
func Main() {
flags.Parse(os.Args[1:])
log.Infof("Running network: stop-network-pre=%v", stopNetworkPre)
if stopNetworkPre {
client, err := docker.NewSystemClient()
if err != nil {
log.Error(err)
}
err = client.ContainerStop(context.Background(), "network-pre", 10)
if err != nil {
log.Error(err)
}
_, err = client.ContainerWait(context.Background(), "network-pre")
if err != nil {
log.Error(err)
}
}
log.Infof("Running network")
cfg := config.LoadConfig()
ApplyNetworkConfig(cfg)
select {}
}
func ApplyNetworkConfig(cfg *config.CloudConfig) {
nameservers := cfg.Rancher.Network.Dns.Nameservers
search := cfg.Rancher.Network.Dns.Search
userSetDns := len(nameservers) > 0 || len(search) > 0
@@ -77,6 +47,4 @@ func Main() {
if err := hostname.SyncHostname(); err != nil {
log.Error(err)
}
select {}
}