本文整理匯總了Golang中github.com/cloudfoundry-incubator/bbs/migration.Migration類的典型用法代碼示例。如果您正苦於以下問題:Golang Migration類的具體用法?Golang Migration怎麽用?Golang Migration使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了Migration類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: AppendMigration
func AppendMigration(migration migration.Migration) {
for _, m := range Migrations {
if m.Version() == migration.Version() {
panic("cannot have two migrations with the same version")
}
}
Migrations = append(Migrations, migration)
}
示例2:
"github.com/cloudfoundry-incubator/bbs/encryption"
"github.com/cloudfoundry-incubator/bbs/format"
"github.com/cloudfoundry-incubator/bbs/migration"
"github.com/cloudfoundry-incubator/bbs/models"
"github.com/cloudfoundry-incubator/bbs/models/test/model_helpers"
goetcd "github.com/coreos/go-etcd/etcd"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
"github.com/pivotal-golang/lager/lagertest"
)
var _ = Describe("Base 64 Protobuf Encode Migration", func() {
var (
migration migration.Migration
serializer format.Serializer
cryptor encryption.Cryptor
logger *lagertest.TestLogger
)
BeforeEach(func() {
logger = lagertest.NewTestLogger("test")
encryptionKey, err := encryption.NewKey("label", "passphrase")
Expect(err).NotTo(HaveOccurred())
keyManager, err := encryption.NewKeyManager(encryptionKey, nil)
Expect(err).NotTo(HaveOccurred())
cryptor = encryption.NewCryptor(keyManager, rand.Reader)
serializer = format.NewSerializer(cryptor)
migration = migrations.NewBase64ProtobufEncode()
})
示例3:
"github.com/cloudfoundry-incubator/bbs/db/migrations"
"github.com/cloudfoundry-incubator/bbs/encryption"
"github.com/cloudfoundry-incubator/bbs/format"
"github.com/cloudfoundry-incubator/bbs/migration"
"github.com/cloudfoundry-incubator/bbs/models"
"github.com/cloudfoundry-incubator/bbs/models/test/model_helpers"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
"github.com/pivotal-golang/lager/lagertest"
)
var _ = Describe("Change Timeouts to Milliseconds Migration", func() {
var (
migration migration.Migration
serializer format.Serializer
cryptor encryption.Cryptor
db *etcddb.ETCDDB
logger *lagertest.TestLogger
)
BeforeEach(func() {
logger = lagertest.NewTestLogger("test")
encryptionKey, err := encryption.NewKey("label", "passphrase")
Expect(err).NotTo(HaveOccurred())
keyManager, err := encryption.NewKeyManager(encryptionKey, nil)
Expect(err).NotTo(HaveOccurred())
cryptor = encryption.NewCryptor(keyManager, rand.Reader)
serializer = format.NewSerializer(cryptor)
migration = migrations.NewTimeoutMilliseconds()
db = etcddb.NewETCD(format.ENCRYPTED_PROTO, 1, 1, 1*time.Minute, cryptor, storeClient, fakeClock)
示例4:
etcddb "github.com/cloudfoundry-incubator/bbs/db/etcd"
"github.com/cloudfoundry-incubator/bbs/db/migrations"
"github.com/cloudfoundry-incubator/bbs/format"
"github.com/cloudfoundry-incubator/bbs/migration"
"github.com/cloudfoundry-incubator/bbs/models"
"github.com/cloudfoundry-incubator/bbs/models/test/model_helpers"
"github.com/cloudfoundry-incubator/bbs/test_helpers"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
)
var _ = Describe("ETCD to SQL Migration", func() {
if test_helpers.UseSQL() {
var (
migration migration.Migration
serializer format.Serializer
migrationErr error
)
BeforeEach(func() {
migration = migrations.NewETCDToSQL()
serializer = format.NewSerializer(cryptor)
rawSQLDB.Exec("DROP TABLE domains;")
rawSQLDB.Exec("DROP TABLE tasks;")
rawSQLDB.Exec("DROP TABLE desired_lrps;")
rawSQLDB.Exec("DROP TABLE actual_lrps;")
})
It("appends itself to the migration list", func() {
Expect(migrations.Migrations).To(ContainElement(migration))