github.com/marinho/drone@v0.2.1-0.20140504195434-d3ba962e89a7/pkg/build/dockerfile/dockerfile.go (about)

     1  package dockerfile
     2  
     3  import (
     4  	"bytes"
     5  	"fmt"
     6  )
     7  
     8  type Dockerfile struct {
     9  	bytes.Buffer
    10  }
    11  
    12  func New(from string) *Dockerfile {
    13  	d := Dockerfile{}
    14  	d.WriteFrom(from)
    15  	return &d
    16  }
    17  
    18  func (d *Dockerfile) WriteAdd(from, to string) {
    19  	d.WriteString(fmt.Sprintf("ADD %s %s\n", from, to))
    20  }
    21  
    22  func (d *Dockerfile) WriteFrom(from string) {
    23  	d.WriteString(fmt.Sprintf("FROM %s\n", from))
    24  }
    25  
    26  func (d *Dockerfile) WriteRun(cmd string) {
    27  	d.WriteString(fmt.Sprintf("RUN %s\n", cmd))
    28  }
    29  
    30  func (d *Dockerfile) WriteUser(user string) {
    31  	d.WriteString(fmt.Sprintf("USER %s\n", user))
    32  }
    33  
    34  func (d *Dockerfile) WriteEnv(key, val string) {
    35  	d.WriteString(fmt.Sprintf("ENV %s %s\n", key, val))
    36  }
    37  
    38  func (d *Dockerfile) WriteWorkdir(workdir string) {
    39  	d.WriteString(fmt.Sprintf("WORKDIR %s\n", workdir))
    40  }
    41  
    42  func (d *Dockerfile) WriteEntrypoint(entrypoint string) {
    43  	d.WriteString(fmt.Sprintf("ENTRYPOINT %s\n", entrypoint))
    44  }