Skip to content

Migration path for v0.17.0

Vaibhav edited this page Jul 23, 2020 · 3 revisions

Breaking changes in v0.17.0

  1. Merging Gateway and EventSource CR into a single EventSource CR.
  2. Introducing EventBus as the transport layer and removing the subscription field from the Sensor.

Please read this document to understand the rationale behind the changes described above.

Migrating Gateway to EventSource

The existing Gateway and EventSource CRs are merged into a single EventSource CR. The container template and service fields are now available in the new EventSource CR. Take a look at the complete specification for the EventSource CR here for more info.

Steps

  1. Deploy the gateway-controller with v0.17.0 which is configured to delete existing gateway deployments and services.

  2. Update existing EventSource CR and fields service and template if required to configure container/service-specific fields. You can migrate these fields from existing Gateway CR. The examples for event-source are available here.

  3. Deploy the event-source controller along with eventbus and sensor controller.

  4. Delete the Gateway CR objects, the CRD and gateway controller.

  5. If you have installed v0.16.0, you need to delete the CRD eventbuses.argoproj.io which is incorrect CRD introduced in v0.16.0.

Sensor

The gatewayName field under the dependencies is renamed to eventSourceName.

Eventbus

With v0.17.0, the events will flow over the eventbus (backed by NATS streaming) from the EventSource to the Sensor which means the subscription field in the sensor will have no effect. With introduction of eventbus, we are aiming to abstract away the complexity of subscriptions, but at the same time providing better stability and delivery guarantees.

Make sure to install eventbus controller and a eventbus custom resource from the steps outlined in the installation section.