diff --git a/acceptance-tests/helpers/cf/version.go b/acceptance-tests/helpers/cf/version.go deleted file mode 100644 index 94d89224..00000000 --- a/acceptance-tests/helpers/cf/version.go +++ /dev/null @@ -1,28 +0,0 @@ -package cf - -import ( - "strings" -) - -type versionType int - -const ( - VersionUnknown versionType = iota - VersionLegacy - VersionV8 -) - -var cachedVersion versionType - -func Version() versionType { - if cachedVersion == VersionUnknown { - out, _ := Run("version") - switch { - case strings.HasPrefix(out, "cf version 8"): - cachedVersion = VersionV8 - default: - cachedVersion = VersionLegacy - } - } - return cachedVersion -} diff --git a/acceptance-tests/helpers/servicekeys/get.go b/acceptance-tests/helpers/servicekeys/get.go deleted file mode 100644 index 65825a14..00000000 --- a/acceptance-tests/helpers/servicekeys/get.go +++ /dev/null @@ -1,31 +0,0 @@ -package servicekeys - -import ( - "encoding/json" - "reflect" - "strings" - - "csbbrokerpakazure/acceptance-tests/helpers/cf" - - . "github.com/onsi/gomega" -) - -func (s *ServiceKey) Get(receiver any) { - Expect(reflect.ValueOf(receiver).Kind()).To(Equal(reflect.Ptr), "receiver must be a pointer") - out, _ := cf.Run("service-key", s.serviceInstanceName, s.name) - start := strings.Index(out, "{") - Expect(start).To(BeNumerically(">", 0), "could not find start of JSON") - data := []byte(out[start:]) - - if cf.Version() == cf.VersionV8 { - var wrapper struct { - Credentials any `json:"credentials"` - } - err := json.Unmarshal(data, &wrapper) - Expect(err).NotTo(HaveOccurred()) - data, err = json.Marshal(wrapper.Credentials) - Expect(err).NotTo(HaveOccurred()) - } - - Expect(json.Unmarshal(data, receiver)).NotTo(HaveOccurred()) -} diff --git a/acceptance-tests/helpers/services/create.go b/acceptance-tests/helpers/services/create.go index 083ed67c..e87b0653 100644 --- a/acceptance-tests/helpers/services/create.go +++ b/acceptance-tests/helpers/services/create.go @@ -29,6 +29,7 @@ func CreateInstance(offering, plan string, opts ...Option) *ServiceInstance { cfg := defaultConfig(offering, plan, opts...) args := []string{ "create-service", + "--wait", offering, plan, cfg.name, @@ -40,34 +41,13 @@ func CreateInstance(offering, plan string, opts ...Option) *ServiceInstance { args = append(args, "-c", cfg.parameters) } - switch cf.Version() { - case cf.VersionV8: - createInstanceWithWait(cfg.name, args) - default: - createInstanceWithPoll(cfg.name, args) - } - - return &ServiceInstance{Name: cfg.name} -} - -func createInstanceWithWait(name string, args []string) { - args = append(args, "--wait") session := cf.Start(args...) Eventually(session).WithTimeout(operationTimeout).Should(Exit(0), func() string { - out, _ := cf.Run("service", name) + out, _ := cf.Run("service", cfg.name) return out }) -} - -func createInstanceWithPoll(name string, args []string) { - session := cf.Start(args...) - Eventually(session).WithTimeout(asyncCommandTimeout).Should(Exit(0)) - Eventually(func() string { - out, _ := cf.Run("service", name) - Expect(out).NotTo(MatchRegexp(`status:\s+create failed`)) - return out - }).WithTimeout(operationTimeout).WithPolling(pollingInterval).Should(MatchRegexp(`status:\s+create succeeded`)) + return &ServiceInstance{Name: cfg.name} } func WithDefaultBroker() Option { @@ -76,12 +56,6 @@ func WithDefaultBroker() Option { } } -func WithMASBBroker() Option { - return func(c *config) { - c.serviceBrokerName = func() string { return "azure-service-broker" } - } -} - func WithBroker(broker *brokers.Broker) Option { return func(c *config) { c.serviceBrokerName = func() string { return broker.Name } diff --git a/acceptance-tests/helpers/services/delete.go b/acceptance-tests/helpers/services/delete.go index 5422c43a..93334ff6 100644 --- a/acceptance-tests/helpers/services/delete.go +++ b/acceptance-tests/helpers/services/delete.go @@ -12,28 +12,10 @@ func (s *ServiceInstance) Delete() { } func Delete(name string) { - switch cf.Version() { - case cf.VersionV8: - deleteWithWait(name) - default: - deleteWithPoll(name) - } -} - -func deleteWithWait(name string) { session := cf.Start("delete-service", "-f", name, "--wait") Eventually(session).WithTimeout(operationTimeout).Should(Exit(0)) } -func deleteWithPoll(name string) { - cf.Run("delete-service", "-f", name) - - Eventually(func() string { - out, _ := cf.Run("services") - return out - }).WithTimeout(operationTimeout).WithPolling(pollingInterval).ShouldNot(ContainSubstring(name)) -} - func (s *ServiceInstance) Purge() { cf.Run("purge-service-instance", "-f", s.Name) } diff --git a/acceptance-tests/helpers/services/services.go b/acceptance-tests/helpers/services/services.go index e1913a29..88e6d6fa 100644 --- a/acceptance-tests/helpers/services/services.go +++ b/acceptance-tests/helpers/services/services.go @@ -2,8 +2,4 @@ package services import "time" -const ( - asyncCommandTimeout = 5 * time.Minute - operationTimeout = time.Hour - pollingInterval = 10 * time.Second -) +const operationTimeout = time.Hour diff --git a/acceptance-tests/helpers/services/update.go b/acceptance-tests/helpers/services/update.go index ff707ce0..73196e1f 100644 --- a/acceptance-tests/helpers/services/update.go +++ b/acceptance-tests/helpers/services/update.go @@ -8,15 +8,6 @@ import ( ) func (s *ServiceInstance) Update(parameters ...string) { - switch cf.Version() { - case cf.VersionV8: - s.updateServiceWithWait(parameters...) - default: - s.updateServiceWithPoll(parameters...) - } -} - -func (s *ServiceInstance) updateServiceWithWait(parameters ...string) { args := append([]string{"update-service", s.Name, "--wait"}, parameters...) session := cf.Start(args...) @@ -25,16 +16,3 @@ func (s *ServiceInstance) updateServiceWithWait(parameters ...string) { return out }) } - -func (s *ServiceInstance) updateServiceWithPoll(parameters ...string) { - args := append([]string{"update-service", s.Name}, parameters...) - - session := cf.Start(args...) - Eventually(session).WithTimeout(asyncCommandTimeout).Should(Exit(0)) - - Eventually(func() string { - out, _ := cf.Run("service", s.Name) - Expect(out).NotTo(MatchRegexp(`status:\s+update failed`)) - return out - }).WithTimeout(operationTimeout).WithPolling(pollingInterval).Should(MatchRegexp(`status:\s+update succeeded`)) -} diff --git a/acceptance-tests/helpers/services/upgrade.go b/acceptance-tests/helpers/services/upgrade.go index 17c08367..c6e097d1 100644 --- a/acceptance-tests/helpers/services/upgrade.go +++ b/acceptance-tests/helpers/services/upgrade.go @@ -18,7 +18,10 @@ func (s *ServiceInstance) Upgrade() { } session := cf.Start("upgrade-service", s.Name, "--force", "--wait") - Eventually(session).WithTimeout(asyncCommandTimeout).Should(Exit(0)) + Eventually(session).WithTimeout(operationTimeout).Should(Exit(0), func() string { + out, _ := cf.Run("service", s.Name) + return out + }) out, _ := cf.Run("service", s.Name) Expect(out).To(MatchRegexp(`status:\s+update succeeded`)) @@ -40,7 +43,7 @@ func (s *ServiceInstance) UpgradeExpectFailure() { Expect(s.UpgradeAvailable()).To(BeTrue(), "service instance does not have an upgrade available") session := cf.Start("upgrade-service", s.Name, "--force", "--wait") - Eventually(session).WithTimeout(asyncCommandTimeout).Should(Exit()) + Eventually(session).WithTimeout(operationTimeout).Should(Exit()) out, _ := cf.Run("service", s.Name) Expect(out).To(MatchRegexp(`status:\s+update failed`)) diff --git a/acceptance-tests/upgrade/update_and_upgrade_mssql_db_failover_group_existing_test.go b/acceptance-tests/upgrade/update_and_upgrade_mssql_db_failover_group_existing_test.go index eb97ab86..b360abbb 100644 --- a/acceptance-tests/upgrade/update_and_upgrade_mssql_db_failover_group_existing_test.go +++ b/acceptance-tests/upgrade/update_and_upgrade_mssql_db_failover_group_existing_test.go @@ -15,7 +15,7 @@ import ( ) var _ = Describe("Upgrade and Update csb-azure-mssql-db-failover-group 'existing' plan", Label("mssql-db-failover-group-existing"), func() { - When("upgrading broker version", Label("modern"), func() { + When("upgrading broker version", func() { It("should continue to work", func() { ctx := context.Background()