Use systemd-timesyncd for Ubuntu

This commit is contained in:
Ciprian Hacman 2020-03-18 07:32:39 +02:00
parent 5003bd2f16
commit 9ae94664bf
1 changed files with 25 additions and 4 deletions

View File

@ -57,11 +57,18 @@ func (b *NTPBuilder) Build(c *fi.ModelBuilderContext) error {
}
if b.Distribution.IsDebianFamily() {
c.AddTask(&nodetasks.Package{Name: "chrony"})
if ntpHost != "" {
c.AddTask(b.buildChronydConf("/etc/chrony/chrony.conf", ntpHost))
if b.Distribution.IsUbuntu() {
if ntpHost != "" {
c.AddTask(b.buildTimesyncdConf("/etc/systemd/timesyncd.conf", ntpHost))
}
c.AddTask((&nodetasks.Service{Name: "systemd-timesyncd"}).InitDefaults())
} else {
c.AddTask(&nodetasks.Package{Name: "chrony"})
if ntpHost != "" {
c.AddTask(b.buildChronydConf("/etc/chrony/chrony.conf", ntpHost))
}
c.AddTask((&nodetasks.Service{Name: "chrony"}).InitDefaults())
}
c.AddTask((&nodetasks.Service{Name: "chrony"}).InitDefaults())
} else if b.Distribution.IsRHELFamily() {
c.AddTask(&nodetasks.Package{Name: "chrony"})
if ntpHost != "" {
@ -94,3 +101,17 @@ rtcsync
Mode: s("0644"),
}
}
func (b *NTPBuilder) buildTimesyncdConf(path string, host string) *nodetasks.File {
conf := `# Built by Kops - do NOT edit
[Time]
NTP=` + host + `
`
return &nodetasks.File{
Path: path,
Contents: fi.NewStringResource(conf),
Type: nodetasks.FileType_File,
Mode: s("0644"),
}
}