本文整理汇总了Golang中github.com/cloudfoundry/bosh-init/config.StemcellRepo.UpdateCurrent方法的典型用法代码示例。如果您正苦于以下问题:Golang StemcellRepo.UpdateCurrent方法的具体用法?Golang StemcellRepo.UpdateCurrent怎么用?Golang StemcellRepo.UpdateCurrent使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/cloudfoundry/bosh-init/config.StemcellRepo
的用法示例。
在下文中一共展示了StemcellRepo.UpdateCurrent方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1:
Type: bicloud.DiskNotFoundError,
Message: "fake-disk-not-found-message",
}))
err := deployment.Delete(fakeStage)
Expect(err).ToNot(HaveOccurred())
})
})
})
Context("when a current stemcell exists", func() {
BeforeEach(func() {
deploymentStateService.Save(biconfig.DeploymentState{})
stemcellRecord, err := stemcellRepo.Save("fake-stemcell-name", "fake-stemcell-version", "fake-stemcell-cid")
Expect(err).ToNot(HaveOccurred())
stemcellRepo.UpdateCurrent(stemcellRecord.ID)
})
It("deletes the stemcell", func() {
mockCloud.EXPECT().DeleteStemcell("fake-stemcell-cid")
err := deployment.Delete(fakeStage)
Expect(err).ToNot(HaveOccurred())
})
Context("when current stemcell has been deleted manually (outside of bosh)", func() {
It("deletes the stemcell (to ensure related resources are released by the CPI)", func() {
mockCloud.EXPECT().DeleteStemcell("fake-stemcell-cid")
err := deployment.Delete(fakeStage)
Expect(err).ToNot(HaveOccurred())
示例2:
Context("no orphan disk or stemcell records exist", func() {
var (
currentDiskRecord biconfig.DiskRecord
currentStemcellRecord biconfig.StemcellRecord
)
BeforeEach(func() {
var err error
currentDiskRecord, err = diskRepo.Save("fake-disk-cid", 100, nil)
Expect(err).ToNot(HaveOccurred())
err = diskRepo.UpdateCurrent(currentDiskRecord.ID)
Expect(err).ToNot(HaveOccurred())
currentStemcellRecord, err = stemcellRepo.Save("fake-stemcell-name", "fake-stemcell-version", "fake-stemcell-cid")
Expect(err).ToNot(HaveOccurred())
err = stemcellRepo.UpdateCurrent(currentStemcellRecord.ID)
Expect(err).ToNot(HaveOccurred())
})
It("does not delete anything", func() {
err := deploymentManager.Cleanup(fakeStage)
Expect(err).ToNot(HaveOccurred())
diskRecord, found, err := diskRepo.FindCurrent()
Expect(err).ToNot(HaveOccurred())
Expect(found).To(BeTrue())
Expect(diskRecord).To(Equal(currentDiskRecord))
stemcellRecord, found, err := stemcellRepo.FindCurrent()
Expect(err).ToNot(HaveOccurred())
Expect(found).To(BeTrue())
示例3:
Expect(err).ToNot(HaveOccurred())
Expect(fakeStage.PerformCalls[0].Name).To(Equal("Uploading stemcell 'fake-stemcell-name/fake-stemcell-version'"))
Expect(fakeStage.PerformCalls[0].SkipError).To(HaveOccurred())
Expect(fakeStage.PerformCalls[0].SkipError.Error()).To(MatchRegexp("Stemcell already uploaded: Found stemcell: .*fake-existing-cid.*"))
})
})
})
Describe("FindCurrent", func() {
Context("when stemcell already exists in stemcell repo", func() {
BeforeEach(func() {
stemcellRecord, err := stemcellRepo.Save("fake-stemcell-name", "fake-stemcell-version", "fake-existing-stemcell-cid")
Expect(err).ToNot(HaveOccurred())
err = stemcellRepo.UpdateCurrent(stemcellRecord.ID)
Expect(err).ToNot(HaveOccurred())
})
It("returns the existing stemcell", func() {
stemcells, err := manager.FindCurrent()
Expect(err).ToNot(HaveOccurred())
Expect(stemcells).To(HaveLen(1))
Expect(stemcells[0].CID()).To(Equal("fake-existing-stemcell-cid"))
})
})
Context("when stemcell does not exists in stemcell repo", func() {
It("returns false", func() {
stemcells, err := manager.FindCurrent()
Expect(err).ToNot(HaveOccurred())