本文整理汇总了Golang中github.com/opentable/sous/core.Context.CanonicalPackageName方法的典型用法代码示例。如果您正苦于以下问题:Golang Context.CanonicalPackageName方法的具体用法?Golang Context.CanonicalPackageName怎么用?Golang Context.CanonicalPackageName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/opentable/sous/core.Context
的用法示例。
在下文中一共展示了Context.CanonicalPackageName方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: DockerRun
func (t *CompileTarget) DockerRun(c *core.Context) *docker.Run {
containerName := t.ContainerName(c)
run := docker.NewRun(c.DockerTag())
run.Name = containerName
run.AddEnv("ARTIFACT_NAME", t.artifactName(c))
uid := cmd.Stdout("id", "-u")
gid := cmd.Stdout("id", "-g")
artifactOwner := fmt.Sprintf("%s:%s", uid, gid)
run.AddEnv("ARTIFACT_OWNER", artifactOwner)
artDir := t.artifactDir(c)
dir.EnsureExists(artDir)
run.AddVolume(artDir, "/artifacts")
run.AddVolume(c.WorkDir, "/wd")
binName := fmt.Sprintf("%s-%s", c.CanonicalPackageName(), c.BuildVersion)
run.Command = fmt.Sprintf("[ -d Godeps ] && godep go build -o %s || go build -o %s",
binName, binName)
return run
}
示例2: Dockerfile
func (t *AppTarget) Dockerfile(c *core.Context) *docker.Dockerfile {
if t.artifactPath == "" {
// Actually, it is first set by compile target, then the PreDockerBuild
// step links it into the WD and resets artifactPath to a local, relative
// path.
t.artifactPath = "<¡ artifact path set by compile target !>"
}
df := &docker.Dockerfile{}
df.From = t.pack.baseImageTag("app")
// Since the artifact is tar.gz, and the dest is a directory, docker automatically unpacks it.
df.AddAdd(t.artifactPath, "/srv/app/")
// Pick out the contents of NPM start to invoke directly (using npm start in
// production shields the app from signals, which are required to be handled by
// the app itself to do graceful shutdown.
df.Entrypoint = []string{
fmt.Sprintf("/srv/app/%s-%s", c.CanonicalPackageName(), c.BuildVersion),
}
return df
}
示例3: ContainerName
// ContainerName returns the name that will be given to the next container we
// build. This does not have to change for each build, Sous will automatically
// deleted any pre-existing containers with this name before creating a new one.
func (t *CompileTarget) ContainerName(c *core.Context) string {
return fmt.Sprintf("%s_reusable-builder", c.CanonicalPackageName())
}
示例4: artifactName
func (t *CompileTarget) artifactName(c *core.Context) string {
return fmt.Sprintf("%s-%s-%s-%d", c.CanonicalPackageName(), c.BuildVersion, c.Git.CommitSHA, c.BuildNumber())
}
示例5: ContainerName
func (t *TestTarget) ContainerName(c *core.Context) string {
return c.CanonicalPackageName() + "_test"
}
示例6: ContainerName
func (t *AppTarget) ContainerName(c *core.Context) string {
return c.CanonicalPackageName()
}