Skip to content

Commit ee4406c

Browse files
committed
Merge pull request #628 from ipsq/patch-3
Added CombinedCmd and removed EnvCmd
2 parents 8f7b89d + 4c190b9 commit ee4406c

File tree

1 file changed

+24
-8
lines changed

1 file changed

+24
-8
lines changed

src/main/scala/com/typesafe/sbt/packager/docker/dockerfile.scala

+24-8
Original file line numberDiff line numberDiff line change
@@ -44,22 +44,38 @@ case class ExecCmd(cmd: String, args: String*) extends CmdLike {
4444
*
4545
* @example
4646
* {{{
47-
* val add = Cmd("ADD", "src/resource/LICENSE.txt /opt/docker/LICENSE.txt")
47+
* val add = Cmd("ADD", "src/resource/LICENSE.txt", "/opt/docker/LICENSE.txt")
48+
* }}}
49+
*
50+
* @example
51+
* {{{
52+
* val copy = Cmd("COPY", "src/resource/LICENSE.txt", "/opt/docker/LICENSE.txt")
53+
* }}}
54+
*
55+
* @example
56+
* {{{
57+
* val env = Cmd("ENV", "APP_SECRET", "7sdfy7s9hfisdufuusud")
4858
* }}}
4959
*/
50-
case class Cmd(cmd: String, arg: String) extends CmdLike {
51-
def makeContent = "%s %s\n" format (cmd, arg)
60+
case class Cmd(cmd: String, args: String*) extends CmdLike {
61+
def makeContent = "%s %s\n" format (cmd, args.mkString(" "))
5262
}
5363

5464
/**
55-
* Environment command
65+
* A command that consists of a CMD string and an CmdLike object
5666
*
57-
* @example {{{
58-
* EnvCmd("FOO_BAR_SECRET_KEY", "HGkhjGKjhgJhgjkhgHKJ")
67+
* @example
68+
* {{{
69+
* val onBuildAdd = CombinedCmd("ONBUILD", Cmd("ADD", "src/resource/LICENSE.txt", "/opt/docker/LICENSE.txt"))
70+
* }}}
71+
*
72+
* @example
73+
* {{{
74+
* val onBuildEnv = CombinedCmd("ONBUILD", Cmd("ENV", "APP_SECRET", "7sdfy7s9hfisdufuusud"))
5975
* }}}
6076
*/
61-
case class EnvCmd(key: String, value: String) extends CmdLike {
62-
def makeContent = "ENV %s %s\n" format (key, value)
77+
case class CombinedCmd(cmd: String, arg: CmdLike) extends CmdLike {
78+
def makeContent = "%s %s\n" format (cmd, arg.makeContent)
6379
}
6480

6581
/** Represents dockerfile used by docker when constructing packages. */

0 commit comments

Comments
 (0)