本文整理汇总了Golang中github.com/cloudfoundry-incubator/bbs/models.WrapAction函数的典型用法代码示例。如果您正苦于以下问题:Golang WrapAction函数的具体用法?Golang WrapAction怎么用?Golang WrapAction使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了WrapAction函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: BuildDroplet
func (dr *dropletRunner) BuildDroplet(taskName, dropletName, buildpackUrl string, environment map[string]string, memoryMB, cpuWeight, diskMB int) error {
builderConfig := buildpack_app_lifecycle.NewLifecycleBuilderConfig([]string{buildpackUrl}, true, false)
action := models.WrapAction(&models.SerialAction{
Actions: []*models.Action{
models.WrapAction(&models.DownloadAction{
From: "http://file-server.service.cf.internal:8080/v1/static/cell-helpers/cell-helpers.tgz",
To: "/tmp",
User: "vcap",
}),
models.WrapAction(&models.DownloadAction{
From: "http://file-server.service.cf.internal:8080/v1/static/buildpack_app_lifecycle/buildpack_app_lifecycle.tgz",
To: "/tmp",
User: "vcap",
}),
dr.blobStore.DownloadAppBitsAction(dropletName),
dr.blobStore.DeleteAppBitsAction(dropletName),
models.WrapAction(&models.RunAction{
Path: "/bin/chmod",
Dir: "/tmp/app",
Args: []string{"-R", "a+X", "."},
User: "vcap",
}),
models.WrapAction(&models.RunAction{
Path: "/tmp/builder",
Dir: "/",
Args: builderConfig.Args(),
User: "vcap",
}),
dr.blobStore.UploadDropletAction(dropletName),
dr.blobStore.UploadDropletMetadataAction(dropletName),
},
})
environment["CF_STACK"] = DropletStack
environment["MEMORY_LIMIT"] = fmt.Sprintf("%dM", memoryMB)
proxyConf, err := dr.proxyConfReader.ProxyConf()
if err != nil {
return err
}
environment["http_proxy"] = proxyConf.HTTPProxy
environment["https_proxy"] = proxyConf.HTTPSProxy
environment["no_proxy"] = proxyConf.NoProxy
createTaskParams := task_runner.NewCreateTaskParams(
action,
taskName,
DropletRootFS,
"lattice",
"BUILD",
environment,
[]*models.SecurityGroupRule{},
memoryMB,
cpuWeight,
diskMB,
)
return dr.taskRunner.CreateTask(createTaskParams)
}
开发者ID:SrinivasChilveri,项目名称:ltc,代码行数:60,代码来源:droplet_runner.go
示例2: DownloadAppBitsAction
func (b *BlobStore) DownloadAppBitsAction(dropletName string) *models.Action {
return models.WrapAction(&models.SerialAction{
Actions: []*models.Action{
models.WrapAction(&models.RunAction{
Path: "/tmp/s3tool",
Dir: "/",
Args: []string{
"get",
b.blobTarget.AccessKey,
b.blobTarget.SecretKey,
b.Bucket,
b.blobTarget.Region,
"/" + dropletName + "/bits.zip",
"/tmp/bits.zip",
},
User: "vcap",
}),
models.WrapAction(&models.RunAction{
Path: "/bin/mkdir",
Args: []string{"/tmp/app"},
User: "vcap",
}),
models.WrapAction(&models.RunAction{
Path: "/usr/bin/unzip",
Dir: "/tmp/app",
Args: []string{"-q", "/tmp/bits.zip"},
User: "vcap",
}),
},
})
}
开发者ID:davidwadden,项目名称:ltc,代码行数:31,代码来源:blob_store.go
示例3: NewValidDesiredLRP
func NewValidDesiredLRP(guid string) *models.DesiredLRP {
myRouterJSON := json.RawMessage(`{"foo":"bar"}`)
modTag := models.NewModificationTag("epoch", 0)
desiredLRP := &models.DesiredLRP{
ProcessGuid: guid,
Domain: "some-domain",
RootFs: "some:rootfs",
Instances: 1,
EnvironmentVariables: []*models.EnvironmentVariable{{Name: "FOO", Value: "bar"}},
CachedDependencies: []*models.CachedDependency{
{Name: "app bits", From: "blobstore.com/bits/app-bits", To: "/usr/local/app", CacheKey: "cache-key", LogSource: "log-source"},
{Name: "app bits with checksum", From: "blobstore.com/bits/app-bits-checksum", To: "/usr/local/app-checksum", CacheKey: "cache-key", LogSource: "log-source", ChecksumAlgorithm: "md5", ChecksumValue: "checksum-value"},
},
Setup: models.WrapAction(&models.RunAction{Path: "ls", User: "name"}),
Action: models.WrapAction(&models.RunAction{Path: "ls", User: "name"}),
StartTimeoutMs: 15000,
Monitor: models.WrapAction(models.EmitProgressFor(
models.Timeout(models.Try(models.Parallel(models.Serial(&models.RunAction{Path: "ls", User: "name"}))),
10*time.Second,
),
"start-message",
"success-message",
"failure-message",
)),
DiskMb: 512,
MemoryMb: 1024,
CpuWeight: 42,
Routes: &models.Routes{"my-router": &myRouterJSON},
LogSource: "some-log-source",
LogGuid: "some-log-guid",
MetricsGuid: "some-metrics-guid",
Annotation: "some-annotation",
Network: &models.Network{
Properties: map[string]string{
"some-key": "some-value",
"some-other-key": "some-other-value",
},
},
EgressRules: []*models.SecurityGroupRule{{
Protocol: models.TCPProtocol,
Destinations: []string{"1.1.1.1/32", "2.2.2.2/32"},
PortRange: &models.PortRange{Start: 10, End: 16000},
}},
ModificationTag: &modTag,
LegacyDownloadUser: "legacy-dan",
TrustedSystemCertificatesPath: "/etc/somepath",
VolumeMounts: []*models.VolumeMount{
{
Driver: "my-driver",
VolumeId: "my-volume",
ContainerPath: "/mnt/mypath",
Mode: models.BindMountMode_RO,
},
},
}
err := desiredLRP.Validate()
Expect(err).NotTo(HaveOccurred())
return desiredLRP
}
开发者ID:timani,项目名称:bbs,代码行数:60,代码来源:constructors.go
示例4: DownloadDropletAction
func (b *BlobStore) DownloadDropletAction(dropletName string) *models.Action {
return models.WrapAction(&models.SerialAction{
Actions: []*models.Action{
models.WrapAction(&models.RunAction{
Path: "/tmp/s3tool",
Dir: "/",
Args: []string{
"get",
b.blobTarget.AccessKey,
b.blobTarget.SecretKey,
b.Bucket,
b.blobTarget.Region,
"/" + dropletName + "/droplet.tgz",
"/tmp/droplet.tgz",
},
User: "vcap",
}),
models.WrapAction(&models.RunAction{
Path: "/bin/tar",
Args: []string{"zxf", "/tmp/droplet.tgz"},
Dir: "/home/vcap",
User: "vcap",
}),
},
})
}
开发者ID:davidwadden,项目名称:ltc,代码行数:26,代码来源:blob_store.go
示例5: LaunchDroplet
func (dr *dropletRunner) LaunchDroplet(appName, dropletName string, startCommand string, startArgs []string, appEnvironmentParams app_runner.AppEnvironmentParams) error {
executionMetadata, err := dr.getExecutionMetadata(path.Join(dropletName, "result.json"))
if err != nil {
return err
}
dropletAnnotation := annotation{}
dropletAnnotation.DropletSource.DropletName = dropletName
annotationBytes, err := json.Marshal(dropletAnnotation)
if err != nil {
return err
}
if appEnvironmentParams.EnvironmentVariables == nil {
appEnvironmentParams.EnvironmentVariables = map[string]string{}
}
appEnvironmentParams.EnvironmentVariables["PWD"] = "/home/vcap"
appEnvironmentParams.EnvironmentVariables["TMPDIR"] = "/home/vcap/tmp"
appEnvironmentParams.WorkingDir = "/home/vcap"
proxyConf, err := dr.proxyConfReader.ProxyConf()
if err != nil {
return err
}
appEnvironmentParams.EnvironmentVariables["http_proxy"] = proxyConf.HTTPProxy
appEnvironmentParams.EnvironmentVariables["https_proxy"] = proxyConf.HTTPSProxy
appEnvironmentParams.EnvironmentVariables["no_proxy"] = proxyConf.NoProxy
appParams := app_runner.CreateAppParams{
AppEnvironmentParams: appEnvironmentParams,
Name: appName,
RootFS: DropletRootFS,
StartCommand: "/tmp/launcher",
AppArgs: []string{
"/home/vcap/app",
strings.Join(append([]string{startCommand}, startArgs...), " "),
executionMetadata,
},
Annotation: string(annotationBytes),
Setup: models.WrapAction(&models.SerialAction{
LogSource: appName,
Actions: []*models.Action{
models.WrapAction(&models.DownloadAction{
From: "http://file-server.service.cf.internal:8080/v1/static/cell-helpers/cell-helpers.tgz",
To: "/tmp",
User: "vcap",
}),
dr.blobStore.DownloadDropletAction(dropletName),
},
}),
}
return dr.appRunner.CreateApp(appParams)
}
开发者ID:SrinivasChilveri,项目名称:ltc,代码行数:59,代码来源:droplet_runner.go
示例6: createTestTask
func createTestTask(taskGuid string) *models.Task {
task := model_helpers.NewValidTask(taskGuid)
task.Domain = "test-domain"
task.TaskDefinition.RootFs = "some:rootfs"
task.TaskDefinition.Action = models.WrapAction(&models.RunAction{User: "me", Path: "/bin/true"})
return task
}
开发者ID:davidwadden,项目名称:lattice-release,代码行数:7,代码来源:tasks_test.go
示例7: DeleteAppBitsAction
func (b *BlobStore) DeleteAppBitsAction(dropletName string) *models.Action {
return models.WrapAction(&models.RunAction{
Path: "/tmp/davtool",
Dir: "/",
Args: []string{"delete", b.URL.String() + "/blobs/" + dropletName + "/bits.zip"},
User: "vcap",
})
}
开发者ID:davidwadden,项目名称:ltc,代码行数:8,代码来源:blob_store.go
示例8: UploadDropletMetadataAction
func (b *BlobStore) UploadDropletMetadataAction(dropletName string) *models.Action {
return models.WrapAction(&models.RunAction{
Path: "/tmp/davtool",
Dir: "/",
Args: []string{"put", b.URL.String() + "/blobs/" + dropletName + "/result.json", "/tmp/result.json"},
User: "vcap",
})
}
开发者ID:davidwadden,项目名称:ltc,代码行数:8,代码来源:blob_store.go
示例9: UploadDropletAction
func (b *BlobStore) UploadDropletAction(dropletName string) *models.Action {
return models.WrapAction(&models.RunAction{
Path: "/tmp/davtool",
Dir: "/",
Args: []string{"put", b.URL.String() + "/blobs/" + dropletName + "-droplet.tgz", "/tmp/droplet"},
User: "vcap",
LogSource: "DROPLET",
})
}
开发者ID:cloudfoundry-incubator,项目名称:ltc,代码行数:9,代码来源:blob_store.go
示例10: taskCreateRequest
func taskCreateRequest(taskGuid, rootFS string, action models.ActionInterface, memoryMB, diskMB int) receptor.TaskCreateRequest {
return receptor.TaskCreateRequest{
TaskGuid: taskGuid,
Domain: defaultDomain,
RootFS: rootFS,
MemoryMB: memoryMB,
DiskMB: diskMB,
Action: models.WrapAction(action),
}
}
开发者ID:Gerg,项目名称:inigo,代码行数:10,代码来源:receptor_requests.go
示例11: NewValidDesiredLRP
func NewValidDesiredLRP(guid string) *models.DesiredLRP {
myRouterJSON := json.RawMessage(`{"foo":"bar"}`)
modTag := models.NewModificationTag("epoch", 0)
desiredLRP := &models.DesiredLRP{
ProcessGuid: guid,
Domain: "some-domain",
RootFs: "some:rootfs",
Instances: 1,
EnvironmentVariables: []*models.EnvironmentVariable{{Name: "FOO", Value: "bar"}},
Setup: models.WrapAction(&models.RunAction{Path: "ls", User: "name"}),
Action: models.WrapAction(&models.RunAction{Path: "ls", User: "name"}),
StartTimeout: 15,
Monitor: models.WrapAction(models.EmitProgressFor(
models.Timeout(models.Try(models.Parallel(models.Serial(&models.RunAction{Path: "ls", User: "name"}))),
10*time.Second,
),
"start-message",
"success-message",
"failure-message",
)),
DiskMb: 512,
MemoryMb: 1024,
CpuWeight: 42,
Routes: &models.Routes{"my-router": &myRouterJSON},
LogSource: "some-log-source",
LogGuid: "some-log-guid",
MetricsGuid: "some-metrics-guid",
Annotation: "some-annotation",
EgressRules: []*models.SecurityGroupRule{{
Protocol: models.TCPProtocol,
Destinations: []string{"1.1.1.1/32", "2.2.2.2/32"},
PortRange: &models.PortRange{Start: 10, End: 16000},
}},
ModificationTag: &modTag,
}
err := desiredLRP.Validate()
Expect(err).NotTo(HaveOccurred())
return desiredLRP
}
开发者ID:emc-xchallenge,项目名称:bbs,代码行数:40,代码来源:constructors.go
示例12: NewValidTaskDefinition
func NewValidTaskDefinition() *models.TaskDefinition {
return &models.TaskDefinition{
RootFs: "docker:///docker.com/docker",
EnvironmentVariables: []*models.EnvironmentVariable{
{
Name: "FOO",
Value: "BAR",
},
},
Action: models.WrapAction(&models.RunAction{
User: "user",
Path: "echo",
Args: []string{"hello world"},
ResourceLimits: &models.ResourceLimits{},
}),
MemoryMb: 256,
DiskMb: 1024,
CpuWeight: 42,
Privileged: true,
LogGuid: "123",
LogSource: "APP",
MetricsGuid: "456",
ResultFile: "some-file.txt",
EgressRules: []*models.SecurityGroupRule{
{
Protocol: "tcp",
Destinations: []string{"0.0.0.0/0"},
PortRange: &models.PortRange{
Start: 1,
End: 1024,
},
Log: true,
},
{
Protocol: "udp",
Destinations: []string{"8.8.0.0/16"},
Ports: []uint32{53},
},
},
Annotation: `[{"anything": "you want!"}]... dude`,
}
}
开发者ID:emc-xchallenge,项目名称:bbs,代码行数:43,代码来源:constructors.go
示例13: newLRPContainer
func newLRPContainer(lrpKey models.ActualLRPKey, instanceKey models.ActualLRPInstanceKey, netInfo models.ActualLRPNetInfo) executor.Container {
ports := []executor.PortMapping{}
for _, portMap := range netInfo.Ports {
ports = append(ports, executor.PortMapping{
ContainerPort: uint16(portMap.ContainerPort),
HostPort: uint16(portMap.HostPort),
})
}
return executor.Container{
Guid: rep.LRPContainerGuid(lrpKey.ProcessGuid, instanceKey.InstanceGuid),
RunInfo: executor.RunInfo{
Action: models.WrapAction(&models.RunAction{Path: "true"}),
Ports: ports,
},
ExternalIP: netInfo.Address,
Tags: executor.Tags{
rep.ProcessGuidTag: lrpKey.ProcessGuid,
rep.InstanceGuidTag: instanceKey.InstanceGuid,
rep.ProcessIndexTag: strconv.Itoa(int(lrpKey.Index)),
rep.DomainTag: lrpKey.Domain,
},
}
}
开发者ID:jianhuiz,项目名称:rep,代码行数:24,代码来源:ordinary_lrp_processor_test.go
示例14:
Expect(err).To(MatchError(ContainSubstring("connection refused")))
})
})
Context("Droplet Actions", func() {
var dropletURL string
BeforeEach(func() {
dropletURL = fmt.Sprintf("http://%s:%[email protected]%s:%s/blobs/droplet-name", blobTargetInfo.Username, blobTargetInfo.Password, blobTargetInfo.Host, blobTargetInfo.Port)
})
Describe("#DownloadAppBitsAction", func() {
It("constructs the correct Action to download app bits", func() {
Expect(blobStore.DownloadAppBitsAction("droplet-name")).To(Equal(models.WrapAction(&models.DownloadAction{
From: dropletURL + "/bits.zip",
To: "/tmp/app",
User: "vcap",
})))
})
})
Describe("#DeleteAppBitsAction", func() {
It("constructs the correct Action to delete app bits", func() {
Expect(blobStore.DeleteAppBitsAction("droplet-name")).To(Equal(models.WrapAction(&models.RunAction{
Path: "/tmp/davtool",
Dir: "/",
Args: []string{"delete", dropletURL + "/bits.zip"},
User: "vcap",
})))
})
})
开发者ID:SrinivasChilveri,项目名称:ltc,代码行数:31,代码来源:blob_store_test.go
示例15:
&models.CachedDependency{
From: "http://file-server.com/v1/static/the/docker/lifecycle/path.tgz",
To: "/tmp/lifecycle",
CacheKey: "docker-lifecycle",
},
}
Expect(taskDefinition.LegacyDownloadUser).To(Equal("vcap"))
Expect(taskDefinition.CachedDependencies).To(BeEquivalentTo(expectedCacheDependencies))
expectedAction := models.WrapAction(&models.RunAction{
User: "root",
Path: "/tmp/lifecycle/launcher",
Args: append(
[]string{"app"},
"docker run fast",
"{}",
),
Env: taskRequest.EnvironmentVariables,
ResourceLimits: &models.ResourceLimits{},
LogSource: "TASK",
})
Expect(taskDefinition.Action).To(BeEquivalentTo(expectedAction))
})
Context("when the docker path is not specified", func() {
BeforeEach(func() {
taskRequest.DockerPath = ""
})
It("returns an error", func() {
开发者ID:cf-routing,项目名称:nsync,代码行数:32,代码来源:docker_recipe_builder_test.go
示例16: BuildRecipe
//.........这里部分代码省略.........
compilerURL, err := backend.compilerDownloadURL()
if err != nil {
return &models.TaskDefinition{}, "", "", err
}
cacheDockerImage := false
for _, envVar := range request.Environment {
if envVar.Name == "DIEGO_DOCKER_CACHE" && envVar.Value == "true" {
cacheDockerImage = true
break
}
}
actions := []models.ActionInterface{}
//Download builder
actions = append(
actions,
models.EmitProgressFor(
&models.DownloadAction{
From: compilerURL.String(),
To: path.Dir(DockerBuilderExecutablePath),
CacheKey: "docker-lifecycle",
User: "vcap",
},
"",
"",
"Failed to set up docker environment",
),
)
runActionArguments := []string{"-outputMetadataJSONFilename", DockerBuilderOutputPath, "-dockerRef", lifecycleData.DockerImageUrl}
runAs := "vcap"
if cacheDockerImage {
runAs = "root"
host, port, err := net.SplitHostPort(backend.config.DockerRegistryAddress)
if err != nil {
logger.Debug("invalid docker registry address", lager.Data{"address": backend.config.DockerRegistryAddress, "error": err.Error()})
return &models.TaskDefinition{}, "", "", ErrInvalidDockerRegistryAddress
}
registryServices, err := getDockerRegistryServices(backend.config.ConsulCluster, backend.logger)
if err != nil {
return &models.TaskDefinition{}, "", "", err
}
registryRules := addDockerRegistryRules(request.EgressRules, registryServices)
request.EgressRules = append(request.EgressRules, registryRules...)
registryIPs := strings.Join(buildDockerRegistryAddresses(registryServices), ",")
runActionArguments, err = addDockerCachingArguments(runActionArguments, registryIPs, backend.config.InsecureDockerRegistry, host, port, lifecycleData)
if err != nil {
return &models.TaskDefinition{}, "", "", err
}
}
fileDescriptorLimit := uint64(request.FileDescriptors)
// Run builder
actions = append(
actions,
models.EmitProgressFor(
&models.RunAction{
Path: DockerBuilderExecutablePath,
Args: runActionArguments,
Env: request.Environment,
ResourceLimits: &models.ResourceLimits{
Nofile: &fileDescriptorLimit,
},
User: runAs,
},
"Staging...",
"Staging Complete",
"Staging Failed",
),
)
annotationJson, _ := json.Marshal(cc_messages.StagingTaskAnnotation{
Lifecycle: DockerLifecycleName,
})
taskDefinition := &models.TaskDefinition{
RootFs: models.PreloadedRootFS(backend.config.DockerStagingStack),
ResultFile: DockerBuilderOutputPath,
Privileged: true,
MemoryMb: int32(request.MemoryMB),
LogSource: TaskLogSource,
LogGuid: request.LogGuid,
EgressRules: request.EgressRules,
DiskMb: int32(request.DiskMB),
CompletionCallbackUrl: backend.config.CallbackURL(stagingGuid),
Annotation: string(annotationJson),
Action: models.WrapAction(models.Timeout(models.Serial(actions...), dockerTimeout(request, backend.logger))),
}
logger.Debug("staging-task-request")
return taskDefinition, stagingGuid, backend.config.TaskDomain, nil
}
开发者ID:guanglinlv,项目名称:stager,代码行数:101,代码来源:docker_backend.go
示例17:
logger.RegisterSink(lager.NewWriterSink(GinkgoWriter, lager.DEBUG))
runner = new(fake_auction_runner.FakeAuctionRunner)
responseRecorder = httptest.NewRecorder()
handler = New(runner, logger)
})
Describe("Task Handler", func() {
Context("with a valid task", func() {
BeforeEach(func() {
tasks := []models.Task{{
TaskGuid: "the-task-guid",
Domain: "some-domain",
RootFs: "some:rootfs",
Action: models.WrapAction(&models.RunAction{
User: "me",
Path: "ls",
}),
}}
reqGen := rata.NewRequestGenerator("http://localhost", Routes)
payload, err := json.Marshal(tasks)
Expect(err).NotTo(HaveOccurred())
req, err := reqGen.CreateRequest(CreateTaskAuctionsRoute, rata.Params{}, bytes.NewBuffer(payload))
Expect(err).NotTo(HaveOccurred())
handler.ServeHTTP(responseRecorder, req)
})
It("responds with 202", func() {
开发者ID:Gerg,项目名称:bbs,代码行数:32,代码来源:handlers_test.go
示例18:
fakeRawEventSource = new(fake_receptor.FakeRawEventSource)
eventSource = receptor.NewEventSource(fakeRawEventSource)
})
Describe("Next", func() {
Describe("Desired LRP events", func() {
var desiredLRPResponse receptor.DesiredLRPResponse
BeforeEach(func() {
desiredLRPResponse = serialization.DesiredLRPProtoToResponse(
&models.DesiredLRP{
ProcessGuid: "some-guid",
Domain: "some-domain",
RootFs: "some-rootfs",
Action: models.WrapAction(&models.RunAction{
Path: "true",
User: "marcy",
}),
},
)
})
Context("when receiving a DesiredLRPCreatedEvent", func() {
var expectedEvent receptor.DesiredLRPCreatedEvent
BeforeEach(func() {
expectedEvent = receptor.NewDesiredLRPCreatedEvent(desiredLRPResponse)
payload, err := json.Marshal(expectedEvent)
Expect(err).NotTo(HaveOccurred())
fakeRawEventSource.NextReturns(
sse.Event{
开发者ID:davidwadden,项目名称:lattice-release,代码行数:32,代码来源:event_source_test.go
示例19:
Expect(completedTasks[0].TaskGuid).To(Equal(task.TaskGuid))
Expect(completedTasks[0].Failed).To(BeTrue())
})
})
Describe("polling the BBS for actual LRPs to reap", func() {
JustBeforeEach(func() {
desiredLRP := &models.DesiredLRP{
ProcessGuid: "process-guid",
RootFs: "some:rootfs",
Domain: "some-domain",
Instances: 1,
Action: models.WrapAction(&models.RunAction{
User: "me",
Path: "the-path",
Args: []string{},
}),
}
index := 0
err := bbsClient.DesireLRP(desiredLRP)
Expect(err).NotTo(HaveOccurred())
instanceKey := models.NewActualLRPInstanceKey("some-instance-guid", cellID)
err = bbsClient.ClaimActualLRP(desiredLRP.ProcessGuid, index, &instanceKey)
Expect(err).NotTo(HaveOccurred())
})
It("eventually reaps actual LRPs with no corresponding container", func() {
Eventually(getActualLRPGroups, 5*pollingInterval).Should(BeEmpty())
开发者ID:emc-xchallenge,项目名称:rep,代码行数:30,代码来源:main_test.go
示例20:
DiskMB: 1024,
ExposedPorts: []uint16{2000, 4000},
WorkingDir: "/user/web/myappdir",
Privileged: true,
User: "start-user",
},
Name: "americano-app",
StartCommand: "/app-run-statement",
RootFS: "/runtest/runner",
AppArgs: []string{"app", "arg1", "--app", "arg 2"},
Annotation: "some annotation",
Setup: models.WrapAction(&models.DownloadAction{
From: "some-cell-helper-url",
To: "/tmp",
User: "download-user",
}),
}
})
It("Upserts lattice domain so that it is always fresh, then starts the Docker App", func() {
err := appRunner.CreateApp(createAppParams)
Expect(err).ToNot(HaveOccurred())
Expect(fakeReceptorClient.UpsertDomainCallCount()).To(Equal(1))
domain, ttl := fakeReceptorClient.UpsertDomainArgsForCall(0)
Expect(domain).To(Equal("lattice"))
Expect(ttl).To(Equal(time.Duration(0)))
Expect(fakeReceptorClient.CreateDesiredLRPCallCount()).To(Equal(1))
开发者ID:davidwadden,项目名称:ltc,代码行数:31,代码来源:app_runner_test.go
注:本文中的github.com/cloudfoundry-incubator/bbs/models.WrapAction函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论