Skip to content

Commit f17556b

Browse files
committed
fedora: provisioner based off of redhat
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
1 parent bf7a5f2 commit f17556b

File tree

2 files changed

+47
-2
lines changed

2 files changed

+47
-2
lines changed

libmachine/provision/fedora.go

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
package provision
2+
3+
import (
4+
"github.com/docker/machine/drivers"
5+
)
6+
7+
const (
8+
// TODO: eventually the RPM install process will be integrated
9+
// into the get.docker.com install script; for now
10+
// we install via vendored RPMs
11+
dockerFedoraRPMPath = "https://docker-mcn.s3.amazonaws.com/public/fedora/rpms/docker-engine-1.6.1-0.0.20150511.171646.git1b47f9f.fc21.x86_64.rpm"
12+
)
13+
14+
func init() {
15+
Register("Fedora", &RegisteredProvisioner{
16+
New: NewFedoraProvisioner,
17+
})
18+
}
19+
20+
func NewFedoraProvisioner(d drivers.Driver) Provisioner {
21+
g := GenericProvisioner{
22+
DockerOptionsDir: "/etc/docker",
23+
DaemonOptionsFile: "/lib/systemd/system/docker.service",
24+
OsReleaseId: "fedora",
25+
Packages: []string{
26+
"curl",
27+
"yum-utils",
28+
},
29+
Driver: d,
30+
}
31+
p := &FedoraProvisioner{
32+
RedHatProvisioner{
33+
g,
34+
dockerFedoraRPMPath,
35+
},
36+
}
37+
return p
38+
}
39+
40+
type FedoraProvisioner struct {
41+
RedHatProvisioner
42+
}

libmachine/provision/redhat.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ const (
1818
// TODO: eventually the RPM install process will be integrated
1919
// into the get.docker.com install script; for now
2020
// we install via vendored RPMs
21-
dockerRPMPath = "https://docker-mcn.s3.amazonaws.com/public/redhat/rpms/docker-engine-1.6.1-0.0.20150511.171646.git1b47f9f.el7.centos.x86_64.rpm"
21+
dockerRHELRPMPath = "https://docker-mcn.s3.amazonaws.com/public/redhat/rpms/docker-engine-1.6.1-0.0.20150511.171646.git1b47f9f.el7.centos.x86_64.rpm"
2222
)
2323

2424
func init() {
@@ -38,11 +38,13 @@ func NewRedHatProvisioner(d drivers.Driver) Provisioner {
3838
},
3939
Driver: d,
4040
},
41+
dockerRHELRPMPath,
4142
}
4243
}
4344

4445
type RedHatProvisioner struct {
4546
GenericProvisioner
47+
DockerRPMPath string
4648
}
4749

4850
func (provisioner *RedHatProvisioner) Service(name string, action pkgaction.ServiceAction) error {
@@ -110,7 +112,7 @@ func installDocker(provisioner *RedHatProvisioner) error {
110112
func (provisioner *RedHatProvisioner) installOfficialDocker() error {
111113
log.Debug("installing docker")
112114

113-
if _, err := provisioner.SSHCommand(fmt.Sprintf("sudo yum install -y --nogpgcheck %s", dockerRPMPath)); err != nil {
115+
if _, err := provisioner.SSHCommand(fmt.Sprintf("sudo yum install -y --nogpgcheck %s", provisioner.DockerRPMPath)); err != nil {
114116
return err
115117
}
116118

@@ -142,6 +144,7 @@ func (provisioner *RedHatProvisioner) Provision(swarmOptions swarm.SwarmOptions,
142144
}
143145

144146
for _, pkg := range provisioner.Packages {
147+
log.Debugf("installing base package: name=%s", pkg)
145148
if err := provisioner.Package(pkg, pkgaction.Install); err != nil {
146149
return err
147150
}

0 commit comments

Comments
 (0)