Repository: smallrye/smallrye-stork
Pull request #28 (2021-07-01 13:44:26)

Rename to Stork


Patch:
diff --git a/.github/project.yml b/.github/project.yml
index 4b41ab6f..0c08319e 100644
--- a/.github/project.yml
+++ b/.github/project.yml
@@ -1,4 +1,4 @@
-name: SmallRye Dux
+name: SmallRye Stork
 release:
   current-version: 1.0.0
   next-version: 1.0.0-SNAPSHOT
diff --git a/README.adoc b/README.adoc
index ea40188c..eda52ea1 100644
--- a/README.adoc
+++ b/README.adoc
@@ -1,15 +1,15 @@
-image:https://github.com/smallrye/smallrye-dux/workflows/SmallRye%20Build/badge.svg?branch=main[link={ci}]
-image:https://sonarcloud.io/api/project_badges/measure?project=smallrye_smallrye-dux&metric=alert_status["Quality Gate Status", link={sonar}]
-image:https://img.shields.io/github/license/smallrye/smallrye-dux.svg["License", link="http://www.apache.org/licenses/LICENSE-2.0"]
-image:https://img.shields.io/maven-central/v/io.smallrye.dux/smallrye-dux?color=green["Maven", link="https://search.maven.org/search?q=g:io.smallrye.dux%20AND%20a:smallrye-dux-api"]
+image:https://github.com/smallrye/smallrye-stork/workflows/SmallRye%20Build/badge.svg?branch=main[link={ci}]
+image:https://sonarcloud.io/api/project_badges/measure?project=smallrye_smallrye-stork&metric=alert_status["Quality Gate Status", link={sonar}]
+image:https://img.shields.io/github/license/smallrye/smallrye-stork.svg["License", link="http://www.apache.org/licenses/LICENSE-2.0"]
+image:https://img.shields.io/maven-central/v/io.smallrye.stork/smallrye-stork?color=green["Maven", link="https://search.maven.org/search?q=g:io.smallrye.stork%20AND%20a:smallrye-stork-api"]
 
-== SmallRye Dux
+== SmallRye Stork
 
-SmallRye Dux, Dux in short, is an extensible Service Discovery and Client-Side 
+SmallRye Stork, Stork in short, is an extensible Service Discovery and Client-Side
 Load Balancer implementation designed to work well with reactive libraries.
-Dux APIs use https://smallrye.io/smallrye-mutiny/[SmallRye Mutiny].
+Stork APIs use https://smallrye.io/smallrye-mutiny/[SmallRye Mutiny].
 
-Dux maps service names to addresses. 
+Stork maps service names to addresses.
 
 Required `ServiceDiscovery` provides a list of addresses (as `ServiceInstance`)
 for a given service name.
@@ -18,33 +18,33 @@ Optional `LoadBalancer` selects a single `ServiceInstance` for a call.
 === Configuring user applications
 The project's core aims to be vendor neutral. Aside from using Mutiny for the APIs,
 it has no dependencies. As such, it provides a universal abstraction of configuration 
-and vendors can choose their own way of providing Dux configuration.
+and vendors can choose their own way of providing Stork configuration.
 
-MicroProfile based frameworks can use MicroProfile Config to configure Dux. 
+MicroProfile based frameworks can use MicroProfile Config to configure Stork.
 Below is an example snippet of such a configuration:
 
 [source,properties]
 ----
-dux.my-service.service-discovery=consul
-dux.my-service.service-discovery.some-service-discovery-property=property-value
-dux.my-service.load-balancer=round-robin
-dux.my-service.load-balancer.some-load-balancer-property=some-prop-value
+stork.my-service.service-discovery=consul
+stork.my-service.service-discovery.some-service-discovery-property=property-value
+stork.my-service.load-balancer=round-robin
+stork.my-service.load-balancer.some-load-balancer-property=some-prop-value
 
-dux.my-other-service.service-discovery=test-sd-1
-dux.my-other-service.load-balancer=test-lb-1
+stork.my-other-service.service-discovery=test-sd-1
+stork.my-other-service.load-balancer=test-lb-1
 ----
 
-MicroProfile Config support for configuring SmallRye Dux is provided by the 
-`smallrye-dux-microprofile` artifact.
+MicroProfile Config support for configuring SmallRye Stork is provided by the
+`smallrye-stork-microprofile` artifact.
 
-=== Integrating client libraries with Dux
+=== Integrating client libraries with Stork
 Client libraries would most often use a `LoadBalancer` to get a single address
 for a call.
-`LoadBalancer` for a service can be retrieved from `Dux` singleton:
+`LoadBalancer` for a service can be retrieved from `Stork` singleton:
 
 [source,java]
 ----
-LoadBalancer loadBalancer = Dux.getInstance().getLoadBalancer(serviceName);
+LoadBalancer loadBalancer = Stork.getInstance().getLoadBalancer(serviceName);
 Uni<ServiceInstance> serviceInstance = loadBalancer.selectServiceInstace();
 ----
 
@@ -53,29 +53,29 @@ given service from `ServiceDiscovery`:
 
 [source,java]
 ----
-ServiceDiscovery serviceDiscovery = Dux.getInstance().getServiceDiscovery(serviceName);
+ServiceDiscovery serviceDiscovery = Stork.getInstance().getServiceDiscovery(serviceName);
 Multi<ServiceInstance> serviceInstances = serviceDiscovery.getServiceInstances();
 ----
 
 === Extending the functionality
-In Dux, extensibility is based on the 
+In Stork, extensibility is based on the
 [Service Provider Interface](https://docs.oracle.com/javase/tutorial/sound/SPI-intro.html) mechanism.
 
 ==== Configuration provider
-To add a custom configuration provider, create an implementation of `DuxConfigProvider`
+To add a custom configuration provider, create an implementation of `ConfigProvider`
 and register it with the Service Provider Interfaces mechanism.
 
-SmallRye Dux comes with MicroProfile Config based configuration provider. 
-To use it, add `smallrye-dux-microprofile` to your project.
+SmallRye Stork comes with MicroProfile Config based configuration provider.
+To use it, add `smallrye-stork-microprofile` to your project.
 
 ==== Service Discovery
-To implement a custom service discovery for Dux, implement the `ServiceDiscoveryProvider`
+To implement a custom service discovery for Stork, implement the `ServiceDiscoveryProvider`
 interface and register it with the Service Provider Interface mechanism.
 
 Please note that the `ServiceDiscovery` implementation must be non-blocking.
 
 ==== Load Balancer
-To implement a custom load balancer for Dux, implement the `LoadBalancerProvider`
+To implement a custom load balancer for Stork, implement the `LoadBalancerProvider`
 interface and register it with the Service Provider Interface mechanism.
 
 Please note that the `LoadBalancer` implementation, similarly to `ServiceDiscovery` 
diff --git a/api/pom.xml b/api/pom.xml
index c2d658e9..8844ef41 100644
--- a/api/pom.xml
+++ b/api/pom.xml
@@ -5,14 +5,14 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <groupId>io.smallrye.dux</groupId>
-        <artifactId>smallrye-dux-parent</artifactId>
+        <groupId>io.smallrye.stork</groupId>
+        <artifactId>smallrye-stork-parent</artifactId>
         <version>1.0-SNAPSHOT</version>
     </parent>
 
-    <artifactId>smallrye-dux-api</artifactId>
+    <artifactId>smallrye-stork-api</artifactId>
 
-    <name>SmallRye Dux : interface for library integration</name>
+    <name>SmallRye Stork : interface for library integration</name>
 
     <dependencies>
         <dependency>
diff --git a/api/src/main/java/io/smallrye/dux/LoadBalancer.java b/api/src/main/java/io/smallrye/dux/LoadBalancer.java
deleted file mode 100644
index 8fed914a..00000000
--- a/api/src/main/java/io/smallrye/dux/LoadBalancer.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package io.smallrye.dux;
-
-import io.smallrye.mutiny.Uni;
-
-/**
- * Works with a single service name.
- * Provides a single service instance.
- * <br>
- * <b>Must be non-blocking</b>
- */
-public interface LoadBalancer {
-
-    /**
-     * Provide a single {@link ServiceInstance}
-     * 
-     * @return a Uni with a ServiceInstance
-     */
-    Uni<ServiceInstance> selectServiceInstance();
-}
diff --git a/api/src/main/java/io/smallrye/stork/LoadBalancer.java b/api/src/main/java/io/smallrye/stork/LoadBalancer.java
new file mode 100644
index 00000000..f3f2b22b
--- /dev/null
+++ b/api/src/main/java/io/smallrye/stork/LoadBalancer.java
@@ -0,0 +1,32 @@
+package io.smallrye.stork;
+
+import java.util.List;
+
+import io.smallrye.mutiny.Uni;
+
+/**
+ * Works with a single service name.
+ * Provides a single service instance.
+ * <br>
+ * <b>Must be non-blocking</b>
+ */
+public interface LoadBalancer {
+
+    /**
+     * Provide a single {@link ServiceInstance}
+     *
+     * @return a Uni with a ServiceInstance
+     */
+    Uni<ServiceInstance> selectServiceInstance();
+
+    /**
+     * Provide a single {@link ServiceInstance} from the given list.
+     *
+     * This is useful for cases like gRPC where connections to all available service instances
+     * may be created upfront, and then, per call, one of them is selected.
+     *
+     * @param serviceInstances instances to choose from
+     * @return a ServiceInstance
+     */
+    ServiceInstance selectServiceInstance(List<ServiceInstance> serviceInstances);
+}
diff --git a/api/src/main/java/io/smallrye/stork/Service.java b/api/src/main/java/io/smallrye/stork/Service.java
new file mode 100644
index 00000000..e141ae83
--- /dev/null
+++ b/api/src/main/java/io/smallrye/stork/Service.java
@@ -0,0 +1,38 @@
+package io.smallrye.stork;
+
+import io.smallrye.mutiny.Multi;
+import io.smallrye.mutiny.Uni;
+
+public class Service {
+
+    private final LoadBalancer loadBalancer;
+    private final ServiceDiscovery serviceDiscovery;
+
+    public Service(LoadBalancer loadBalancer, ServiceDiscovery serviceDiscovery) {
+        this.loadBalancer = loadBalancer;
+        this.serviceDiscovery = serviceDiscovery;
+    }
+
+    /**
+     * Provide a single {@link ServiceInstance}
+     *
+     * @return a Uni with a ServiceInstance
+     */
+    public Uni<ServiceInstance> selectServiceInstance() {
+        return serviceDiscovery.getServiceInstances().collect()
+                .asList()
+                .map(loadBalancer::selectServiceInstance);
+    }
+
+    public Multi<ServiceInstance> getServiceInstances() {
+        return serviceDiscovery.getServiceInstances();
+    }
+
+    public LoadBalancer getLoadBalancer() {
+        return loadBalancer;
+    }
+
+    public ServiceDiscovery getServiceDiscovery() {
+        return serviceDiscovery;
+    }
+}
diff --git a/api/src/main/java/io/smallrye/dux/ServiceDiscovery.java b/api/src/main/java/io/smallrye/stork/ServiceDiscovery.java
similarity index 92%
rename from api/src/main/java/io/smallrye/dux/ServiceDiscovery.java
rename to api/src/main/java/io/smallrye/stork/ServiceDiscovery.java
index ff942261..4c94b55d 100644
--- a/api/src/main/java/io/smallrye/dux/ServiceDiscovery.java
+++ b/api/src/main/java/io/smallrye/stork/ServiceDiscovery.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux;
+package io.smallrye.stork;
 
 import io.smallrye.mutiny.Multi;
 
diff --git a/api/src/main/java/io/smallrye/dux/ServiceInstance.java b/api/src/main/java/io/smallrye/stork/ServiceInstance.java
similarity index 92%
rename from api/src/main/java/io/smallrye/dux/ServiceInstance.java
rename to api/src/main/java/io/smallrye/stork/ServiceInstance.java
index 96e36176..fa7260e5 100644
--- a/api/src/main/java/io/smallrye/dux/ServiceInstance.java
+++ b/api/src/main/java/io/smallrye/stork/ServiceInstance.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux;
+package io.smallrye.stork;
 
 public final class ServiceInstance {
 
diff --git a/api/src/main/java/io/smallrye/dux/Dux.java b/api/src/main/java/io/smallrye/stork/Stork.java
similarity index 78%
rename from api/src/main/java/io/smallrye/dux/Dux.java
rename to api/src/main/java/io/smallrye/stork/Stork.java
index 0bd37bc2..9f0b7f50 100644
--- a/api/src/main/java/io/smallrye/dux/Dux.java
+++ b/api/src/main/java/io/smallrye/stork/Stork.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux;
+package io.smallrye.stork;
 
 import java.util.Comparator;
 import java.util.Map;
@@ -8,19 +8,19 @@ import java.util.concurrent.ConcurrentHashMap;
 import java.util.function.Function;
 import java.util.stream.Collectors;
 
-import io.smallrye.dux.config.DuxConfigProvider;
-import io.smallrye.dux.config.ServiceConfig;
-import io.smallrye.dux.spi.ElementWithType;
-import io.smallrye.dux.spi.LoadBalancerProvider;
-import io.smallrye.dux.spi.ServiceDiscoveryProvider;
+import io.smallrye.stork.config.ConfigProvider;
+import io.smallrye.stork.config.ServiceConfig;
+import io.smallrye.stork.spi.ElementWithType;
+import io.smallrye.stork.spi.LoadBalancerProvider;
+import io.smallrye.stork.spi.ServiceDiscoveryProvider;
 
 /**
- * The entrypoint for SmallRye Dux
+ * The entrypoint for SmallRye Stork
  *
- * Use `Dux.getInstance()` to get a hold of a configured instance, and retrieve `ServiceDiscovery` and/or `LoadBalancer`
+ * Use `Stork.getInstance()` to get a hold of a configured instance, and retrieve `ServiceDiscovery` and/or `LoadBalancer`
  * from it.
  */
-public final class Dux {
+public final class Stork {
     // TODO replace all the exceptions here with dedicated ones?
 
     private final Map<String, ServiceDiscovery> serviceDiscoveries = new ConcurrentHashMap<>();
@@ -46,20 +46,20 @@ public final class Dux {
     }
 
     @Deprecated // for tests only
-    Dux() {
+    Stork() {
         Map<String, LoadBalancerProvider> loadBalancerProviders = getAll(LoadBalancerProvider.class);
         Map<String, ServiceDiscoveryProvider> serviceDiscoveryProviders = getAll(ServiceDiscoveryProvider.class);
 
-        ServiceLoader<DuxConfigProvider> configs = ServiceLoader.load(DuxConfigProvider.class);
+        ServiceLoader<ConfigProvider> configs = ServiceLoader.load(ConfigProvider.class);
         // mstodo test for multiple config providers!!
-        Optional<DuxConfigProvider> highestPrioConfigProvider = configs.stream()
+        Optional<ConfigProvider> highestPrioConfigProvider = configs.stream()
                 .map(ServiceLoader.Provider::get)
-                .max(Comparator.comparingInt(DuxConfigProvider::priority));
+                .max(Comparator.comparingInt(ConfigProvider::priority));
 
-        DuxConfigProvider configProvider = highestPrioConfigProvider.orElseThrow(
-                () -> new IllegalStateException("No DuxConfigProvider found"));
+        ConfigProvider configProvider = highestPrioConfigProvider.orElseThrow(
+                () -> new IllegalStateException("No SmallRye Stork ConfigProvider found"));
 
-        for (ServiceConfig serviceConfig : configProvider.getDuxConfigs()) {
+        for (ServiceConfig serviceConfig : configProvider.getConfigs()) {
             final var serviceDiscoveryConfig = serviceConfig.serviceDiscovery();
             if (serviceDiscoveryConfig == null) {
                 throw new IllegalArgumentException(
@@ -102,9 +102,9 @@ public final class Dux {
                 .collect(Collectors.toMap(ElementWithType::type, Function.identity()));
     }
 
-    private static final Dux dux = new Dux();
+    private static final Stork stork = new Stork();
 
-    public static Dux getInstance() {
-        return dux;
+    public static Stork getInstance() {
+        return stork;
     }
 }
diff --git a/api/src/main/java/io/smallrye/dux/config/DuxConfigProvider.java b/api/src/main/java/io/smallrye/stork/config/ConfigProvider.java
similarity index 66%
rename from api/src/main/java/io/smallrye/dux/config/DuxConfigProvider.java
rename to api/src/main/java/io/smallrye/stork/config/ConfigProvider.java
index 83e7b868..f2d348eb 100644
--- a/api/src/main/java/io/smallrye/dux/config/DuxConfigProvider.java
+++ b/api/src/main/java/io/smallrye/stork/config/ConfigProvider.java
@@ -1,22 +1,22 @@
-package io.smallrye.dux.config;
+package io.smallrye.stork.config;
 
 import java.util.List;
 
 /**
  * Configuration provider for Service Discovery and Load Balancer
  */
-public interface DuxConfigProvider {
+public interface ConfigProvider {
     /**
      * Get a list of service configurations, each wrapping a configuration for both
      * ServiceDiscovery and LoadBalancer
      *
      * @return a list of configurations
      */
-    List<ServiceConfig> getDuxConfigs();
+    List<ServiceConfig> getConfigs();
 
     /**
      * Priority of the configuration provider.
-     * A single DuxConfigProvider is used in an application, the one with the highest priority
+     * A single ConfigProvider is used in an application, the one with the highest priority
      *
      * @return the priority
      */
diff --git a/api/src/main/java/io/smallrye/dux/config/LoadBalancerConfig.java b/api/src/main/java/io/smallrye/stork/config/LoadBalancerConfig.java
similarity index 92%
rename from api/src/main/java/io/smallrye/dux/config/LoadBalancerConfig.java
rename to api/src/main/java/io/smallrye/stork/config/LoadBalancerConfig.java
index c1fd29e3..2e884735 100644
--- a/api/src/main/java/io/smallrye/dux/config/LoadBalancerConfig.java
+++ b/api/src/main/java/io/smallrye/stork/config/LoadBalancerConfig.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux.config;
+package io.smallrye.stork.config;
 
 import java.util.Map;
 
diff --git a/api/src/main/java/io/smallrye/dux/config/ServiceConfig.java b/api/src/main/java/io/smallrye/stork/config/ServiceConfig.java
similarity index 95%
rename from api/src/main/java/io/smallrye/dux/config/ServiceConfig.java
rename to api/src/main/java/io/smallrye/stork/config/ServiceConfig.java
index 4e941b35..db6170bb 100644
--- a/api/src/main/java/io/smallrye/dux/config/ServiceConfig.java
+++ b/api/src/main/java/io/smallrye/stork/config/ServiceConfig.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux.config;
+package io.smallrye.stork.config;
 
 /**
  * Service configuration, wraps both (optional) LoadBalancer configuration and (required) ServiceDiscovery configuration
diff --git a/api/src/main/java/io/smallrye/dux/config/ServiceDiscoveryConfig.java b/api/src/main/java/io/smallrye/stork/config/ServiceDiscoveryConfig.java
similarity index 93%
rename from api/src/main/java/io/smallrye/dux/config/ServiceDiscoveryConfig.java
rename to api/src/main/java/io/smallrye/stork/config/ServiceDiscoveryConfig.java
index cb41b222..edf90dea 100644
--- a/api/src/main/java/io/smallrye/dux/config/ServiceDiscoveryConfig.java
+++ b/api/src/main/java/io/smallrye/stork/config/ServiceDiscoveryConfig.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux.config;
+package io.smallrye.stork.config;
 
 import java.util.Map;
 
diff --git a/api/src/main/java/io/smallrye/dux/spi/ElementWithType.java b/api/src/main/java/io/smallrye/stork/spi/ElementWithType.java
similarity index 64%
rename from api/src/main/java/io/smallrye/dux/spi/ElementWithType.java
rename to api/src/main/java/io/smallrye/stork/spi/ElementWithType.java
index a996da6d..d4d1e68a 100644
--- a/api/src/main/java/io/smallrye/dux/spi/ElementWithType.java
+++ b/api/src/main/java/io/smallrye/stork/spi/ElementWithType.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux.spi;
+package io.smallrye.stork.spi;
 
 public interface ElementWithType {
     String type();
diff --git a/api/src/main/java/io/smallrye/dux/spi/LoadBalancerProvider.java b/api/src/main/java/io/smallrye/stork/spi/LoadBalancerProvider.java
similarity index 53%
rename from api/src/main/java/io/smallrye/dux/spi/LoadBalancerProvider.java
rename to api/src/main/java/io/smallrye/stork/spi/LoadBalancerProvider.java
index ae22898d..f7f9d9c2 100644
--- a/api/src/main/java/io/smallrye/dux/spi/LoadBalancerProvider.java
+++ b/api/src/main/java/io/smallrye/stork/spi/LoadBalancerProvider.java
@@ -1,8 +1,8 @@
-package io.smallrye.dux.spi;
+package io.smallrye.stork.spi;
 
-import io.smallrye.dux.LoadBalancer;
-import io.smallrye.dux.ServiceDiscovery;
-import io.smallrye.dux.config.LoadBalancerConfig;
+import io.smallrye.stork.LoadBalancer;
+import io.smallrye.stork.ServiceDiscovery;
+import io.smallrye.stork.config.LoadBalancerConfig;
 
 public interface LoadBalancerProvider extends ElementWithType {
     LoadBalancer createLoadBalancer(LoadBalancerConfig config, ServiceDiscovery serviceDiscovery);
diff --git a/api/src/main/java/io/smallrye/dux/spi/ServiceDiscoveryProvider.java b/api/src/main/java/io/smallrye/stork/spi/ServiceDiscoveryProvider.java
similarity index 56%
rename from api/src/main/java/io/smallrye/dux/spi/ServiceDiscoveryProvider.java
rename to api/src/main/java/io/smallrye/stork/spi/ServiceDiscoveryProvider.java
index eec748e7..c8eb325f 100644
--- a/api/src/main/java/io/smallrye/dux/spi/ServiceDiscoveryProvider.java
+++ b/api/src/main/java/io/smallrye/stork/spi/ServiceDiscoveryProvider.java
@@ -1,7 +1,7 @@
-package io.smallrye.dux.spi;
+package io.smallrye.stork.spi;
 
-import io.smallrye.dux.ServiceDiscovery;
-import io.smallrye.dux.config.ServiceDiscoveryConfig;
+import io.smallrye.stork.ServiceDiscovery;
+import io.smallrye.stork.config.ServiceDiscoveryConfig;
 
 public interface ServiceDiscoveryProvider extends ElementWithType {
     ServiceDiscovery createServiceDiscovery(ServiceDiscoveryConfig config);
diff --git a/api/src/main/java/io/smallrye/dux/spi/ServiceInstanceIds.java b/api/src/main/java/io/smallrye/stork/spi/ServiceInstanceIds.java
similarity index 90%
rename from api/src/main/java/io/smallrye/dux/spi/ServiceInstanceIds.java
rename to api/src/main/java/io/smallrye/stork/spi/ServiceInstanceIds.java
index 3790fa94..124f542e 100644
--- a/api/src/main/java/io/smallrye/dux/spi/ServiceInstanceIds.java
+++ b/api/src/main/java/io/smallrye/stork/spi/ServiceInstanceIds.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux.spi;
+package io.smallrye.stork.spi;
 
 import java.util.concurrent.atomic.AtomicLong;
 
diff --git a/api/src/main/java/io/smallrye/dux/spi/SimpleServiceConfig.java b/api/src/main/java/io/smallrye/stork/spi/SimpleServiceConfig.java
similarity index 93%
rename from api/src/main/java/io/smallrye/dux/spi/SimpleServiceConfig.java
rename to api/src/main/java/io/smallrye/stork/spi/SimpleServiceConfig.java
index 2dab14ec..83d54c6f 100644
--- a/api/src/main/java/io/smallrye/dux/spi/SimpleServiceConfig.java
+++ b/api/src/main/java/io/smallrye/stork/spi/SimpleServiceConfig.java
@@ -1,11 +1,11 @@
-package io.smallrye.dux.spi;
+package io.smallrye.stork.spi;
 
 import java.util.Collections;
 import java.util.Map;
 
-import io.smallrye.dux.config.LoadBalancerConfig;
-import io.smallrye.dux.config.ServiceConfig;
-import io.smallrye.dux.config.ServiceDiscoveryConfig;
+import io.smallrye.stork.config.LoadBalancerConfig;
+import io.smallrye.stork.config.ServiceConfig;
+import io.smallrye.stork.config.ServiceDiscoveryConfig;
 
 public class SimpleServiceConfig implements ServiceConfig {
 
diff --git a/api/src/main/java/io/smallrye/dux/utils/HostAndPort.java b/api/src/main/java/io/smallrye/stork/utils/HostAndPort.java
similarity index 85%
rename from api/src/main/java/io/smallrye/dux/utils/HostAndPort.java
rename to api/src/main/java/io/smallrye/stork/utils/HostAndPort.java
index 58c4c03a..67d6011f 100644
--- a/api/src/main/java/io/smallrye/dux/utils/HostAndPort.java
+++ b/api/src/main/java/io/smallrye/stork/utils/HostAndPort.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux.utils;
+package io.smallrye.stork.utils;
 
 public class HostAndPort {
     public final String host;
diff --git a/api/src/main/java/io/smallrye/dux/utils/DuxAddressUtils.java b/api/src/main/java/io/smallrye/stork/utils/StorkAddressUtils.java
similarity index 98%
rename from api/src/main/java/io/smallrye/dux/utils/DuxAddressUtils.java
rename to api/src/main/java/io/smallrye/stork/utils/StorkAddressUtils.java
index d80d6209..41390fe1 100644
--- a/api/src/main/java/io/smallrye/dux/utils/DuxAddressUtils.java
+++ b/api/src/main/java/io/smallrye/stork/utils/StorkAddressUtils.java
@@ -1,8 +1,8 @@
-package io.smallrye.dux.utils;
+package io.smallrye.stork.utils;
 
 import static java.lang.String.format;
 
-public final class DuxAddressUtils {
+public final class StorkAddressUtils {
 
     public static HostAndPort parseToHostAndPort(String serviceAddress,
             int defaultPort,
diff --git a/coverage/pom.xml b/coverage/pom.xml
index fea72bd9..099d73c9 100644
--- a/coverage/pom.xml
+++ b/coverage/pom.xml
@@ -3,38 +3,38 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <groupId>io.smallrye.dux</groupId>
-        <artifactId>smallrye-dux-parent</artifactId>
+        <groupId>io.smallrye.stork</groupId>
+        <artifactId>smallrye-stork-parent</artifactId>
         <version>1.0-SNAPSHOT</version>
     </parent>
 
-    <artifactId>smallrye-dux-coverage</artifactId>
+    <artifactId>smallrye-stork-coverage</artifactId>
     <packaging>pom</packaging>
 
-    <name>SmallRye Dux : Coverage</name>
+    <name>SmallRye Stork : Coverage</name>
 
     <dependencies>
         <dependency>
-            <groupId>io.smallrye.dux</groupId>
-            <artifactId>smallrye-dux-api</artifactId>
+            <groupId>io.smallrye.stork</groupId>
+            <artifactId>smallrye-stork-api</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <dependency>
-            <groupId>io.smallrye.dux</groupId>
-            <artifactId>smallrye-dux-microprofile</artifactId>
+            <groupId>io.smallrye.stork</groupId>
+            <artifactId>smallrye-stork-microprofile</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <dependency>
-            <groupId>io.smallrye.dux</groupId>
-            <artifactId>smallrye-dux-service-discovery-static-list</artifactId>
+            <groupId>io.smallrye.stork</groupId>
+            <artifactId>smallrye-stork-service-discovery-static-list</artifactId>
             <version>${project.version}</version>
         </dependency>
 
         <dependency>
-            <groupId>io.smallrye.dux</groupId>
-            <artifactId>smallrye-dux-load-balancer-round-robin</artifactId>
+            <groupId>io.smallrye.stork</groupId>
+            <artifactId>smallrye-stork-load-balancer-round-robin</artifactId>
             <version>${project.version}</version>
         </dependency>
     </dependencies>
diff --git a/load-balancer/round-robin/pom.xml b/load-balancer/round-robin/pom.xml
index 4a69af07..42babf07 100644
--- a/load-balancer/round-robin/pom.xml
+++ b/load-balancer/round-robin/pom.xml
@@ -5,28 +5,28 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <groupId>io.smallrye.dux</groupId>
-        <artifactId>smallrye-dux-parent</artifactId>
+        <groupId>io.smallrye.stork</groupId>
+        <artifactId>smallrye-stork-parent</artifactId>
         <version>1.0-SNAPSHOT</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
-    <artifactId>smallrye-dux-load-balancer-round-robin</artifactId>
+    <artifactId>smallrye-stork-load-balancer-round-robin</artifactId>
 
-    <name>SmallRye Dux Load Balancer : Round Robin</name>
+    <name>SmallRye Stork Load Balancer : Round Robin</name>
 
     <dependencies>
         <dependency>
-            <groupId>io.smallrye.dux</groupId>
-            <artifactId>smallrye-dux-api</artifactId>
+            <groupId>io.smallrye.stork</groupId>
+            <artifactId>smallrye-stork-api</artifactId>
         </dependency>
         <dependency>
-            <groupId>io.smallrye.dux</groupId>
-            <artifactId>smallrye-dux-test-utils</artifactId>
+            <groupId>io.smallrye.stork</groupId>
+            <artifactId>smallrye-stork-test-utils</artifactId>
             <scope>test</scope>
         </dependency>
         <dependency>
-            <groupId>io.smallrye.dux</groupId>
-            <artifactId>smallrye-dux-service-discovery-static-list</artifactId>
+            <groupId>io.smallrye.stork</groupId>
+            <artifactId>smallrye-stork-service-discovery-static-list</artifactId>
             <scope>test</scope>
         </dependency>
         <dependency>
diff --git a/load-balancer/round-robin/src/main/java/io/smallrye/dux/loadbalancer/roundrobin/RoundRobinLoadBalancer.java b/load-balancer/round-robin/src/main/java/io/smallrye/stork/loadbalancer/roundrobin/RoundRobinLoadBalancer.java
similarity index 65%
rename from load-balancer/round-robin/src/main/java/io/smallrye/dux/loadbalancer/roundrobin/RoundRobinLoadBalancer.java
rename to load-balancer/round-robin/src/main/java/io/smallrye/stork/loadbalancer/roundrobin/RoundRobinLoadBalancer.java
index 6bafe0cb..6c61c7a5 100644
--- a/load-balancer/round-robin/src/main/java/io/smallrye/dux/loadbalancer/roundrobin/RoundRobinLoadBalancer.java
+++ b/load-balancer/round-robin/src/main/java/io/smallrye/stork/loadbalancer/roundrobin/RoundRobinLoadBalancer.java
@@ -1,12 +1,13 @@
-package io.smallrye.dux.loadbalancer.roundrobin;
+package io.smallrye.stork.loadbalancer.roundrobin;
 
+import java.util.Comparator;
 import java.util.List;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import io.smallrye.dux.LoadBalancer;
-import io.smallrye.dux.ServiceDiscovery;
-import io.smallrye.dux.ServiceInstance;
 import io.smallrye.mutiny.Uni;
+import io.smallrye.stork.LoadBalancer;
+import io.smallrye.stork.ServiceDiscovery;
+import io.smallrye.stork.ServiceInstance;
 
 public class RoundRobinLoadBalancer implements LoadBalancer {
 
@@ -25,6 +26,12 @@ public class RoundRobinLoadBalancer implements LoadBalancer {
                 .map(this::select);
     }
 
+    @Override
+    public ServiceInstance selectServiceInstance(List<ServiceInstance> serviceInstances) {
+        serviceInstances.sort(Comparator.comparingLong(ServiceInstance::getId));
+        return select(serviceInstances);
+    }
+
     private ServiceInstance select(List<ServiceInstance> instances) {
         if (instances.isEmpty()) {
             return null;
diff --git a/load-balancer/round-robin/src/main/java/io/smallrye/dux/loadbalancer/roundrobin/RoundRobinLoadBalancerProvider.java b/load-balancer/round-robin/src/main/java/io/smallrye/stork/loadbalancer/roundrobin/RoundRobinLoadBalancerProvider.java
similarity index 59%
rename from load-balancer/round-robin/src/main/java/io/smallrye/dux/loadbalancer/roundrobin/RoundRobinLoadBalancerProvider.java
rename to load-balancer/round-robin/src/main/java/io/smallrye/stork/loadbalancer/roundrobin/RoundRobinLoadBalancerProvider.java
index 9b0609cf..32467188 100644
--- a/load-balancer/round-robin/src/main/java/io/smallrye/dux/loadbalancer/roundrobin/RoundRobinLoadBalancerProvider.java
+++ b/load-balancer/round-robin/src/main/java/io/smallrye/stork/loadbalancer/roundrobin/RoundRobinLoadBalancerProvider.java
@@ -1,9 +1,9 @@
-package io.smallrye.dux.loadbalancer.roundrobin;
+package io.smallrye.stork.loadbalancer.roundrobin;
 
-import io.smallrye.dux.LoadBalancer;
-import io.smallrye.dux.ServiceDiscovery;
-import io.smallrye.dux.config.LoadBalancerConfig;
-import io.smallrye.dux.spi.LoadBalancerProvider;
+import io.smallrye.stork.LoadBalancer;
+import io.smallrye.stork.ServiceDiscovery;
+import io.smallrye.stork.config.LoadBalancerConfig;
+import io.smallrye.stork.spi.LoadBalancerProvider;
 
 public class RoundRobinLoadBalancerProvider implements LoadBalancerProvider {
 
diff --git a/load-balancer/round-robin/src/main/resources/META-INF/services/io.smallrye.dux.spi.LoadBalancerProvider b/load-balancer/round-robin/src/main/resources/META-INF/services/io.smallrye.dux.spi.LoadBalancerProvider
deleted file mode 100644
index 67968b95..00000000
--- a/load-balancer/round-robin/src/main/resources/META-INF/services/io.smallrye.dux.spi.LoadBalancerProvider
+++ /dev/null
@@ -1,1 +0,0 @@
-io.smallrye.dux.loadbalancer.roundrobin.RoundRobinLoadBalancerProvider
\ No newline at end of file
diff --git a/load-balancer/round-robin/src/main/resources/META-INF/services/io.smallrye.stork.spi.LoadBalancerProvider b/load-balancer/round-robin/src/main/resources/META-INF/services/io.smallrye.stork.spi.LoadBalancerProvider
new file mode 100644
index 00000000..c88cbc8c
--- /dev/null
+++ b/load-balancer/round-robin/src/main/resources/META-INF/services/io.smallrye.stork.spi.LoadBalancerProvider
@@ -0,0 +1,1 @@
+io.smallrye.stork.loadbalancer.roundrobin.RoundRobinLoadBalancerProvider
\ No newline at end of file
diff --git a/microprofile/pom.xml b/microprofile/pom.xml
index 7da59b90..943a9a3b 100644
--- a/microprofile/pom.xml
+++ b/microprofile/pom.xml
@@ -5,19 +5,19 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <groupId>io.smallrye.dux</groupId>
-        <artifactId>smallrye-dux-parent</artifactId>
+        <groupId>io.smallrye.stork</groupId>
+        <artifactId>smallrye-stork-parent</artifactId>
         <version>1.0-SNAPSHOT</version>
     </parent>
 
-    <artifactId>smallrye-dux-microprofile</artifactId>
+    <artifactId>smallrye-stork-microprofile</artifactId>
 
-    <name>SmallRye Dux : interface for library integration</name>
+    <name>SmallRye Stork : interface for library integration</name>
 
     <dependencies>
         <dependency>
-            <groupId>io.smallrye.dux</groupId>
-            <artifactId>smallrye-dux-api</artifactId>
+            <groupId>io.smallrye.stork</groupId>
+            <artifactId>smallrye-stork-api</artifactId>
         </dependency>
         <dependency>
             <groupId>org.eclipse.microprofile.config</groupId>
@@ -33,8 +33,8 @@
             <scope>test</scope>
         </dependency>
         <dependency>
-            <groupId>io.smallrye.dux</groupId>
-            <artifactId>smallrye-dux-test-utils</artifactId>
+            <groupId>io.smallrye.stork</groupId>
+            <artifactId>smallrye-stork-test-utils</artifactId>
             <scope>test</scope>
         </dependency>
         <dependency>
diff --git a/microprofile/src/main/java/io/smallrye/dux/microprofile/MicroProfileConfigProvider.java b/microprofile/src/main/java/io/smallrye/stork/microprofile/MicroProfileConfigProvider.java
similarity index 85%
rename from microprofile/src/main/java/io/smallrye/dux/microprofile/MicroProfileConfigProvider.java
rename to microprofile/src/main/java/io/smallrye/stork/microprofile/MicroProfileConfigProvider.java
index 682f4615..06d4bc06 100644
--- a/microprofile/src/main/java/io/smallrye/dux/microprofile/MicroProfileConfigProvider.java
+++ b/microprofile/src/main/java/io/smallrye/stork/microprofile/MicroProfileConfigProvider.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux.microprofile;
+package io.smallrye.stork.microprofile;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -6,24 +6,23 @@ import java.util.List;
 import java.util.Map;
 
 import org.eclipse.microprofile.config.Config;
-import org.eclipse.microprofile.config.ConfigProvider;
 import org.jboss.logging.Logger;
 
-import io.smallrye.dux.config.DuxConfigProvider;
-import io.smallrye.dux.config.ServiceConfig;
-import io.smallrye.dux.spi.SimpleServiceConfig;
+import io.smallrye.stork.config.ConfigProvider;
+import io.smallrye.stork.config.ServiceConfig;
+import io.smallrye.stork.spi.SimpleServiceConfig;
 
-public class MicroProfileConfigProvider implements DuxConfigProvider {
+public class MicroProfileConfigProvider implements ConfigProvider {
 
     private static final Logger log = Logger.getLogger(MicroProfileConfigProvider.class);
 
-    public static final String DUX = "dux";
+    public static final String DUX = "stork";
     public static final String LOAD_BALANCER = "load-balancer";
     public static final String SERVICE_DISCOVERY = "service-discovery";
     private final List<ServiceConfig> serviceConfigs = new ArrayList<>();
 
     public MicroProfileConfigProvider() {
-        Config config = ConfigProvider.getConfig();
+        Config config = org.eclipse.microprofile.config.ConfigProvider.getConfig();
 
         Map<String, Map<String, String>> propertiesByServiceName = new HashMap<>();
 
@@ -34,9 +33,9 @@ public class MicroProfileConfigProvider implements DuxConfigProvider {
             }
 
             // all properties are now of form
-            // dux.<service-name>.(load-balancer|service-discovery)...
+            // stork.<service-name>.(load-balancer|service-discovery)...
             if (property.length < 3) {
-                log.warn("Potentially invalid property for SmallRye Dux: " + propertyName);
+                log.warn("Potentially invalid property for SmallRye Stork: " + propertyName);
             }
 
             String serviceName = property[1];
@@ -88,7 +87,7 @@ public class MicroProfileConfigProvider implements DuxConfigProvider {
     }
 
     @Override
-    public List<ServiceConfig> getDuxConfigs() {
+    public List<ServiceConfig> getConfigs() {
         return serviceConfigs;
     }
 
diff --git a/microprofile/src/main/resources/META-INF/services/io.smallrye.dux.config.DuxConfigProvider b/microprofile/src/main/resources/META-INF/services/io.smallrye.dux.config.DuxConfigProvider
deleted file mode 100644
index 68d12c84..00000000
--- a/microprofile/src/main/resources/META-INF/services/io.smallrye.dux.config.DuxConfigProvider
+++ /dev/null
@@ -1,1 +0,0 @@
-io.smallrye.dux.microprofile.MicroProfileConfigProvider
\ No newline at end of file
diff --git a/microprofile/src/main/resources/META-INF/services/io.smallrye.stork.config.ConfigProvider b/microprofile/src/main/resources/META-INF/services/io.smallrye.stork.config.ConfigProvider
new file mode 100644
index 00000000..ef0afffc
--- /dev/null
+++ b/microprofile/src/main/resources/META-INF/services/io.smallrye.stork.config.ConfigProvider
@@ -0,0 +1,1 @@
+io.smallrye.stork.microprofile.MicroProfileConfigProvider
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index ab650252..66149226 100644
--- a/pom.xml
+++ b/pom.xml
@@ -24,8 +24,8 @@
         <version>28</version>
     </parent>
 
-    <groupId>io.smallrye.dux</groupId>
-    <artifactId>smallrye-dux-parent</artifactId>
+    <groupId>io.smallrye.stork</groupId>
+    <artifactId>smallrye-stork-parent</artifactId>
     <version>1.0-SNAPSHOT</version>
 
     <packaging>pom</packaging>
@@ -41,8 +41,8 @@
         <version.mutiny>0.17.0</version.mutiny>
         <version.smallrye-config>2.3.0</version.smallrye-config>
 
-        <sonar.projectName>SmallRye Dux</sonar.projectName>
-        <sonar.projectKey>smallrye_smallrye-dux</sonar.projectKey>
+        <sonar.projectName>SmallRye Stork</sonar.projectName>
+        <sonar.projectKey>smallrye_smallrye-stork</sonar.projectKey>
         <sonar.moduleKey>${project.groupId}:${project.artifactId}</sonar.moduleKey>
     </properties>
 
@@ -55,7 +55,7 @@
 
     <issueManagement>
         <system>GitHub</system>
-        <url>https://github.com/smallrye/smallrye-dux/issues</url>
+        <url>https://github.com/smallrye/smallrye-stork/issues</url>
     </issueManagement>
 
     <scm>
@@ -90,29 +90,29 @@
 
             <!-- Dependencies provided by the project -->
             <dependency>
-                <groupId>io.smallrye.dux</groupId>
-                <artifactId>smallrye-dux-api</artifactId>
+                <groupId>io.smallrye.stork</groupId>
+                <artifactId>smallrye-stork-api</artifactId>
                 <version>${project.version}</version>
             </dependency>
             <dependency>
-                <groupId>io.smallrye.dux</groupId>
-                <artifactId>smallrye-dux-test-utils</artifactId>
+                <groupId>io.smallrye.stork</groupId>
+                <artifactId>smallrye-stork-test-utils</artifactId>
                 <version>${project.version}</version>
             </dependency>
             <dependency>
-                <groupId>io.smallrye.dux</groupId>
-                <artifactId>smallrye-dux-static-list</artifactId>
+                <groupId>io.smallrye.stork</groupId>
+                <artifactId>smallrye-stork-static-list</artifactId>
                 <version>${project.version}</version>
             </dependency>
             <dependency>
-                <groupId>io.smallrye.dux</groupId>
+                <groupId>io.smallrye.stork</groupId>
                 <!--todo: name is lengthy, shorten it?-->
-                <artifactId>smallrye-dux-load-balancer-round-robin</artifactId>
+                <artifactId>smallrye-stork-load-balancer-round-robin</artifactId>
                 <version>${project.version}</version>
             </dependency>
             <dependency>
-                <groupId>io.smallrye.dux</groupId>
-                <artifactId>smallrye-dux-service-discovery-static-list</artifactId>
+                <groupId>io.smallrye.stork</groupId>
+                <artifactId>smallrye-stork-service-discovery-static-list</artifactId>
                 <version>${project.version}</version>
             </dependency>
         </dependencies>
diff --git a/service-discovery/static-list/pom.xml b/service-discovery/static-list/pom.xml
index 4ed18708..61207ebd 100644
--- a/service-discovery/static-list/pom.xml
+++ b/service-discovery/static-list/pom.xml
@@ -19,24 +19,24 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <groupId>io.smallrye.dux</groupId>
-        <artifactId>smallrye-dux-parent</artifactId>
+        <groupId>io.smallrye.stork</groupId>
+        <artifactId>smallrye-stork-parent</artifactId>
         <version>1.0-SNAPSHOT</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
 
-    <artifactId>smallrye-dux-service-discovery-static-list</artifactId>
+    <artifactId>smallrye-stork-service-discovery-static-list</artifactId>
 
-    <name>SmallRye Dux Service Discovery : Static List</name>
+    <name>SmallRye Stork Service Discovery : Static List</name>
 
     <dependencies>
         <dependency>
-            <groupId>io.smallrye.dux</groupId>
-            <artifactId>smallrye-dux-api</artifactId>
+            <groupId>io.smallrye.stork</groupId>
+            <artifactId>smallrye-stork-api</artifactId>
         </dependency>
         <dependency>
-            <groupId>io.smallrye.dux</groupId>
-            <artifactId>smallrye-dux-test-utils</artifactId>
+            <groupId>io.smallrye.stork</groupId>
+            <artifactId>smallrye-stork-test-utils</artifactId>
             <scope>test</scope>
         </dependency>
         <dependency>
diff --git a/service-discovery/static-list/src/main/java/io/smallrye/dux/servicediscovery/staticlist/StaticListServiceDiscovery.java b/service-discovery/static-list/src/main/java/io/smallrye/stork/servicediscovery/staticlist/StaticListServiceDiscovery.java
similarity index 78%
rename from service-discovery/static-list/src/main/java/io/smallrye/dux/servicediscovery/staticlist/StaticListServiceDiscovery.java
rename to service-discovery/static-list/src/main/java/io/smallrye/stork/servicediscovery/staticlist/StaticListServiceDiscovery.java
index b656c6ee..4fc45f2c 100644
--- a/service-discovery/static-list/src/main/java/io/smallrye/dux/servicediscovery/staticlist/StaticListServiceDiscovery.java
+++ b/service-discovery/static-list/src/main/java/io/smallrye/stork/servicediscovery/staticlist/StaticListServiceDiscovery.java
@@ -1,11 +1,11 @@
-package io.smallrye.dux.servicediscovery.staticlist;
+package io.smallrye.stork.servicediscovery.staticlist;
 
 import java.util.Collections;
 import java.util.List;
 
-import io.smallrye.dux.ServiceDiscovery;
-import io.smallrye.dux.ServiceInstance;
 import io.smallrye.mutiny.Multi;
+import io.smallrye.stork.ServiceDiscovery;
+import io.smallrye.stork.ServiceInstance;
 
 public final class StaticListServiceDiscovery implements ServiceDiscovery {
 
diff --git a/service-discovery/static-list/src/main/java/io/smallrye/dux/servicediscovery/staticlist/StaticListServiceDiscoveryProvider.java b/service-discovery/static-list/src/main/java/io/smallrye/stork/servicediscovery/staticlist/StaticListServiceDiscoveryProvider.java
similarity index 67%
rename from service-discovery/static-list/src/main/java/io/smallrye/dux/servicediscovery/staticlist/StaticListServiceDiscoveryProvider.java
rename to service-discovery/static-list/src/main/java/io/smallrye/stork/servicediscovery/staticlist/StaticListServiceDiscoveryProvider.java
index 9768d92d..c42f42b8 100644
--- a/service-discovery/static-list/src/main/java/io/smallrye/dux/servicediscovery/staticlist/StaticListServiceDiscoveryProvider.java
+++ b/service-discovery/static-list/src/main/java/io/smallrye/stork/servicediscovery/staticlist/StaticListServiceDiscoveryProvider.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux.servicediscovery.staticlist;
+package io.smallrye.stork.servicediscovery.staticlist;
 
 import java.util.ArrayList;
 import java.util.Comparator;
@@ -6,22 +6,22 @@ import java.util.List;
 import java.util.Map;
 import java.util.regex.Pattern;
 
-import io.smallrye.dux.ServiceDiscovery;
-import io.smallrye.dux.ServiceInstance;
-import io.smallrye.dux.config.ServiceDiscoveryConfig;
-import io.smallrye.dux.spi.ServiceDiscoveryProvider;
-import io.smallrye.dux.spi.ServiceInstanceIds;
+import io.smallrye.stork.ServiceDiscovery;
+import io.smallrye.stork.ServiceInstance;
+import io.smallrye.stork.config.ServiceDiscoveryConfig;
+import io.smallrye.stork.spi.ServiceDiscoveryProvider;
+import io.smallrye.stork.spi.ServiceInstanceIds;
 
 public class StaticListServiceDiscoveryProvider implements ServiceDiscoveryProvider {
 
     @Override
     public ServiceDiscovery createServiceDiscovery(ServiceDiscoveryConfig config) {
         // we're configuring service discovery for
-        // config prefix dux.<service-name>.discovery
+        // config prefix stork.<service-name>.discovery
         // URLs for static config should be listed as:
-        // dux.<service-name>.discovery.1=...
-        // dux.<service-name>.discovery.2=...
-        // dux.<service-name>.discovery.3=...
+        // stork.<service-name>.discovery.1=...
+        // stork.<service-name>.discovery.2=...
+        // stork.<service-name>.discovery.3=...
         Map<String, String> parameters = config.parameters();
         Pattern number = Pattern.compile("\\d+");
         List<ServiceInstance> addressList = new ArrayList<>();
diff --git a/service-discovery/static-list/src/main/resources/META-INF/services/io.smallrye.dux.spi.ServiceDiscoveryProvider b/service-discovery/static-list/src/main/resources/META-INF/services/io.smallrye.dux.spi.ServiceDiscoveryProvider
deleted file mode 100644
index 88ea4bc1..00000000
--- a/service-discovery/static-list/src/main/resources/META-INF/services/io.smallrye.dux.spi.ServiceDiscoveryProvider
+++ /dev/null
@@ -1,1 +0,0 @@
-io.smallrye.dux.servicediscovery.staticlist.StaticListServiceDiscoveryProvider
\ No newline at end of file
diff --git a/service-discovery/static-list/src/main/resources/META-INF/services/io.smallrye.stork.spi.ServiceDiscoveryProvider b/service-discovery/static-list/src/main/resources/META-INF/services/io.smallrye.stork.spi.ServiceDiscoveryProvider
new file mode 100644
index 00000000..2305b441
--- /dev/null
+++ b/service-discovery/static-list/src/main/resources/META-INF/services/io.smallrye.stork.spi.ServiceDiscoveryProvider
@@ -0,0 +1,1 @@
+io.smallrye.stork.servicediscovery.staticlist.StaticListServiceDiscoveryProvider
\ No newline at end of file


Test patch:
diff --git a/api/src/test/java/io/smallrye/utils/DuxAddressUtilsTest.java b/api/src/test/java/io/smallrye/utils/StorkAddressUtilsTest.java
similarity index 69%
rename from api/src/test/java/io/smallrye/utils/DuxAddressUtilsTest.java
rename to api/src/test/java/io/smallrye/utils/StorkAddressUtilsTest.java
index e3a9d4f1..7875265b 100644
--- a/api/src/test/java/io/smallrye/utils/DuxAddressUtilsTest.java
+++ b/api/src/test/java/io/smallrye/utils/StorkAddressUtilsTest.java
@@ -4,15 +4,15 @@ import static org.assertj.core.api.Assertions.assertThat;
 
 import org.junit.jupiter.api.Test;
 
-import io.smallrye.dux.utils.DuxAddressUtils;
-import io.smallrye.dux.utils.HostAndPort;
+import io.smallrye.stork.utils.HostAndPort;
+import io.smallrye.stork.utils.StorkAddressUtils;
 
-public class DuxAddressUtilsTest {
+public class StorkAddressUtilsTest {
 
     @Test
     void shouldParseIpv6WithoutPort() {
         String ipv6WithoutPort = "2001:0db8:85a3:0000:0000:8a2e:0370:7334";
-        HostAndPort result = DuxAddressUtils.parseToHostAndPort(ipv6WithoutPort, 8080,
+        HostAndPort result = StorkAddressUtils.parseToHostAndPort(ipv6WithoutPort, 8080,
                 "serviceUsingDefaultPort");
         assertThat(result.host).isEqualTo(ipv6WithoutPort);
         assertThat(result.port).isEqualTo(8080);
@@ -23,7 +23,7 @@ public class DuxAddressUtilsTest {
         String ipv6WithoutPort = "2001:0db8:85a3:0000:0000:8a2e:0370:7334";
 
         String toParse = String.format("[%s]", ipv6WithoutPort);
-        HostAndPort result = DuxAddressUtils.parseToHostAndPort(toParse, 8080,
+        HostAndPort result = StorkAddressUtils.parseToHostAndPort(toParse, 8080,
                 "serviceWithSquareBracketsUsingDefaultPort");
         assertThat(result.host).isEqualTo(ipv6WithoutPort);
         assertThat(result.port).isEqualTo(8080);
@@ -36,7 +36,7 @@ public class DuxAddressUtilsTest {
 
         String toParse = String.format("[%s]:%d", ipv6WithoutPort, port);
 
-        HostAndPort result = DuxAddressUtils.parseToHostAndPort(toParse, 8080, "serviceUsingSpecifiedPort");
+        HostAndPort result = StorkAddressUtils.parseToHostAndPort(toParse, 8080, "serviceUsingSpecifiedPort");
         assertThat(result.host).isEqualTo(ipv6WithoutPort);
         assertThat(result.port).isEqualTo(1382);
     }
@@ -44,7 +44,7 @@ public class DuxAddressUtilsTest {
     @Test
     void shouldParseIpV4WithoutPort() {
         String ipV4WithoutPort = "127.0.0.1";
-        HostAndPort result = DuxAddressUtils.parseToHostAndPort(ipV4WithoutPort, 8383, "serviceUsingIPv4AdressWithoutPort");
+        HostAndPort result = StorkAddressUtils.parseToHostAndPort(ipV4WithoutPort, 8383, "serviceUsingIPv4AdressWithoutPort");
         assertThat(result.host).isEqualTo(ipV4WithoutPort);
         assertThat(result.port).isEqualTo(8383);
     }
@@ -53,7 +53,7 @@ public class DuxAddressUtilsTest {
     void shouldParseIpV4WithPort() {
         String address = "127.0.0.1";
         String addressWithPort = address + ":8787";
-        HostAndPort result = DuxAddressUtils.parseToHostAndPort(addressWithPort, 8383, "serviceUsingIPv4AdressWithPort");
+        HostAndPort result = StorkAddressUtils.parseToHostAndPort(addressWithPort, 8383, "serviceUsingIPv4AdressWithPort");
         assertThat(result.host).isEqualTo(address);
         assertThat(result.port).isEqualTo(8787);
     }
@@ -61,7 +61,7 @@ public class DuxAddressUtilsTest {
     @Test
     void shouldParseHostnameWithoutPort() {
         String address = "my-host.com.pl";
-        HostAndPort result = DuxAddressUtils.parseToHostAndPort(address, 8383, "serviceUsingHostnameWithoutPort");
+        HostAndPort result = StorkAddressUtils.parseToHostAndPort(address, 8383, "serviceUsingHostnameWithoutPort");
         assertThat(result.host).isEqualTo(address);
         assertThat(result.port).isEqualTo(8383);
     }
@@ -70,7 +70,7 @@ public class DuxAddressUtilsTest {
     void shoyuldParseHostnameWithPort() {
         String address = "my-host.com.pl";
         String addressWithPort = address + ":8989";
-        HostAndPort result = DuxAddressUtils.parseToHostAndPort(addressWithPort, 8383, "serviceUsingHostnameWithPort");
+        HostAndPort result = StorkAddressUtils.parseToHostAndPort(addressWithPort, 8383, "serviceUsingHostnameWithPort");
         assertThat(result.host).isEqualTo(address);
         assertThat(result.port).isEqualTo(8989);
     }
diff --git a/load-balancer/round-robin/src/test/java/io/smallrye/dux/loadbalancer/roundrobin/RoundRobinLoadBalancerTest.java b/load-balancer/round-robin/src/test/java/io/smallrye/stork/loadbalancer/roundrobin/RoundRobinLoadBalancerTest.java
similarity index 79%
rename from load-balancer/round-robin/src/test/java/io/smallrye/dux/loadbalancer/roundrobin/RoundRobinLoadBalancerTest.java
rename to load-balancer/round-robin/src/test/java/io/smallrye/stork/loadbalancer/roundrobin/RoundRobinLoadBalancerTest.java
index fc1552d7..59af63d0 100644
--- a/load-balancer/round-robin/src/test/java/io/smallrye/dux/loadbalancer/roundrobin/RoundRobinLoadBalancerTest.java
+++ b/load-balancer/round-robin/src/test/java/io/smallrye/stork/loadbalancer/roundrobin/RoundRobinLoadBalancerTest.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux.loadbalancer.roundrobin;
+package io.smallrye.stork.loadbalancer.roundrobin;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
@@ -8,16 +8,16 @@ import java.util.Map;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
-import io.smallrye.dux.Dux;
-import io.smallrye.dux.DuxTestUtils;
-import io.smallrye.dux.LoadBalancer;
-import io.smallrye.dux.test.TestConfigProvider;
+import io.smallrye.stork.LoadBalancer;
+import io.smallrye.stork.Stork;
+import io.smallrye.stork.StorkTestUtils;
+import io.smallrye.stork.test.TestConfigProvider;
 
 public class RoundRobinLoadBalancerTest {
 
     public static final String FST_SRVC_1 = "http://localhost:8080";
     public static final String FST_SRVC_2 = "http://localhost:8081";
-    private Dux dux;
+    private Stork stork;
 
     @BeforeEach
     void setUp() {
@@ -34,12 +34,12 @@ public class RoundRobinLoadBalancerTest {
                 null,
                 Map.of("4", "http://localhost:8083"));
 
-        dux = DuxTestUtils.getNewDuxInstance();
+        stork = StorkTestUtils.getNewStorkInstance();
     }
 
     @Test
     public void shouldGetServiceInstance() {
-        LoadBalancer loadBalancer = dux.getLoadBalancer("first-service");
+        LoadBalancer loadBalancer = stork.getLoadBalancer("first-service");
 
         assertThat(loadBalancer.selectServiceInstance().await().atMost(Duration.ofSeconds(5)).getValue()).isEqualTo(FST_SRVC_1);
         assertThat(loadBalancer.selectServiceInstance().await().atMost(Duration.ofSeconds(5)).getValue()).isEqualTo(FST_SRVC_2);
diff --git a/microprofile/src/test/java/io/smallrye/dux/microprofile/MicroProfileConfigProviderTest.java b/microprofile/src/test/java/io/smallrye/stork/microprofile/MicroProfileConfigProviderTest.java
similarity index 64%
rename from microprofile/src/test/java/io/smallrye/dux/microprofile/MicroProfileConfigProviderTest.java
rename to microprofile/src/test/java/io/smallrye/stork/microprofile/MicroProfileConfigProviderTest.java
index 7a72960a..f0c0c423 100644
--- a/microprofile/src/test/java/io/smallrye/dux/microprofile/MicroProfileConfigProviderTest.java
+++ b/microprofile/src/test/java/io/smallrye/stork/microprofile/MicroProfileConfigProviderTest.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux.microprofile;
+package io.smallrye.stork.microprofile;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
@@ -14,15 +14,15 @@ import org.junit.jupiter.api.Test;
 import io.smallrye.config.ConfigValuePropertiesConfigSource;
 import io.smallrye.config.SmallRyeConfig;
 import io.smallrye.config.SmallRyeConfigBuilder;
-import io.smallrye.dux.Dux;
-import io.smallrye.dux.DuxTestUtils;
-import io.smallrye.dux.LoadBalancer;
-import io.smallrye.dux.ServiceDiscovery;
-import io.smallrye.dux.config.LoadBalancerConfig;
-import io.smallrye.dux.config.ServiceDiscoveryConfig;
-import io.smallrye.dux.test.TestConfigProvider;
-import io.smallrye.dux.test.TestLoadBalancer;
-import io.smallrye.dux.test.TestServiceDiscovery;
+import io.smallrye.stork.LoadBalancer;
+import io.smallrye.stork.ServiceDiscovery;
+import io.smallrye.stork.Stork;
+import io.smallrye.stork.StorkTestUtils;
+import io.smallrye.stork.config.LoadBalancerConfig;
+import io.smallrye.stork.config.ServiceDiscoveryConfig;
+import io.smallrye.stork.test.TestConfigProvider;
+import io.smallrye.stork.test.TestLoadBalancer;
+import io.smallrye.stork.test.TestServiceDiscovery;
 
 public class MicroProfileConfigProviderTest {
 
@@ -35,7 +35,7 @@ public class MicroProfileConfigProviderTest {
     @BeforeAll
     public static void init() {
         initialPriority = TestConfigProvider.getPriority();
-        TestConfigProvider.setPriority(10); // lower it for Dux to pick up the MP one
+        TestConfigProvider.setPriority(10); // lower it for Stork to pick up the MP one
     }
 
     @AfterAll
@@ -46,15 +46,15 @@ public class MicroProfileConfigProviderTest {
     @Test
     void shouldConfigureServiceDiscoveryOnly() {
         Map<String, String> properties = new HashMap<>();
-        properties.put("dux." + FIRST_SERVICE + ".service-discovery", "test-sd-1");
-        properties.put("dux." + FIRST_SERVICE + ".service-discovery.1", "http://localhost:8080");
-        properties.put("dux." + FIRST_SERVICE + ".service-discovery.2", "http://localhost:8081");
+        properties.put("stork." + FIRST_SERVICE + ".service-discovery", "test-sd-1");
+        properties.put("stork." + FIRST_SERVICE + ".service-discovery.1", "http://localhost:8080");
+        properties.put("stork." + FIRST_SERVICE + ".service-discovery.2", "http://localhost:8081");
 
-        Dux dux = duxForConfig(properties);
+        Stork stork = storkForConfig(properties);
 
-        Assertions.assertThatThrownBy(() -> dux.getLoadBalancer(FIRST_SERVICE)).isInstanceOf(IllegalArgumentException.class);
+        Assertions.assertThatThrownBy(() -> stork.getLoadBalancer(FIRST_SERVICE)).isInstanceOf(IllegalArgumentException.class);
 
-        ServiceDiscovery serviceDiscovery = dux.getServiceDiscovery(FIRST_SERVICE);
+        ServiceDiscovery serviceDiscovery = stork.getServiceDiscovery(FIRST_SERVICE);
 
         assertThat(serviceDiscovery).isNotNull().isInstanceOf(TestServiceDiscovery.class);
 
@@ -69,14 +69,14 @@ public class MicroProfileConfigProviderTest {
     @Test
     void shouldConfigureServiceDiscoveryAndLoadBalancer() {
         Map<String, String> properties = new HashMap<>();
-        properties.put("dux." + SECOND_SERVICE + ".service-discovery", "test-sd-2");
-        properties.put("dux." + SECOND_SERVICE + ".load-balancer", "test-lb-2");
-        properties.put("dux." + SECOND_SERVICE + ".load-balancer.some-prop", "some-prop-value");
-        properties.put("dux." + SECOND_SERVICE + ".service-discovery.3", "http://localhost:8082");
+        properties.put("stork." + SECOND_SERVICE + ".service-discovery", "test-sd-2");
+        properties.put("stork." + SECOND_SERVICE + ".load-balancer", "test-lb-2");
+        properties.put("stork." + SECOND_SERVICE + ".load-balancer.some-prop", "some-prop-value");
+        properties.put("stork." + SECOND_SERVICE + ".service-discovery.3", "http://localhost:8082");
 
-        Dux dux = duxForConfig(properties);
+        Stork stork = storkForConfig(properties);
 
-        ServiceDiscovery serviceDiscovery = dux.getServiceDiscovery(SECOND_SERVICE);
+        ServiceDiscovery serviceDiscovery = stork.getServiceDiscovery(SECOND_SERVICE);
         assertThat(serviceDiscovery).isNotNull().isInstanceOf(TestServiceDiscovery.class);
 
         TestServiceDiscovery sd = (TestServiceDiscovery) serviceDiscovery;
@@ -87,7 +87,7 @@ public class MicroProfileConfigProviderTest {
         assertThat(sdConfig.parameters()).hasSize(1);
         assertThat(sdConfig.parameters()).containsAllEntriesOf(Map.of("3", "http://localhost:8082"));
 
-        LoadBalancer loadBalancer = dux.getLoadBalancer(SECOND_SERVICE);
+        LoadBalancer loadBalancer = stork.getLoadBalancer(SECOND_SERVICE);
         assertThat(loadBalancer).isInstanceOf(TestLoadBalancer.class);
 
         TestLoadBalancer lb = (TestLoadBalancer) loadBalancer;
@@ -104,17 +104,17 @@ public class MicroProfileConfigProviderTest {
     @Test
     void shouldHandleMultipleServices() {
         Map<String, String> properties = new HashMap<>();
-        properties.put("dux." + SECOND_SERVICE + ".service-discovery", "test-sd-2");
-        properties.put("dux." + SECOND_SERVICE + ".load-balancer", "test-lb-2");
-        properties.put("dux." + SECOND_SERVICE + ".load-balancer.some-prop", "some-prop-value");
-        properties.put("dux." + SECOND_SERVICE + ".service-discovery.3", "http://localhost:8082");
+        properties.put("stork." + SECOND_SERVICE + ".service-discovery", "test-sd-2");
+        properties.put("stork." + SECOND_SERVICE + ".load-balancer", "test-lb-2");
+        properties.put("stork." + SECOND_SERVICE + ".load-balancer.some-prop", "some-prop-value");
+        properties.put("stork." + SECOND_SERVICE + ".service-discovery.3", "http://localhost:8082");
 
-        properties.put("dux." + THIRD_SERVICE + ".service-discovery", "test-sd-1");
-        properties.put("dux." + THIRD_SERVICE + ".load-balancer", "test-lb-1");
+        properties.put("stork." + THIRD_SERVICE + ".service-discovery", "test-sd-1");
+        properties.put("stork." + THIRD_SERVICE + ".load-balancer", "test-lb-1");
 
-        Dux dux = duxForConfig(properties);
+        Stork stork = storkForConfig(properties);
 
-        ServiceDiscovery serviceDiscovery = dux.getServiceDiscovery(SECOND_SERVICE);
+        ServiceDiscovery serviceDiscovery = stork.getServiceDiscovery(SECOND_SERVICE);
         assertThat(serviceDiscovery).isNotNull().isInstanceOf(TestServiceDiscovery.class);
 
         TestServiceDiscovery sd = (TestServiceDiscovery) serviceDiscovery;
@@ -125,7 +125,7 @@ public class MicroProfileConfigProviderTest {
         assertThat(sdConfig.parameters()).hasSize(1);
         assertThat(sdConfig.parameters()).containsAllEntriesOf(Map.of("3", "http://localhost:8082"));
 
-        LoadBalancer loadBalancer = dux.getLoadBalancer(SECOND_SERVICE);
+        LoadBalancer loadBalancer = stork.getLoadBalancer(SECOND_SERVICE);
         assertThat(loadBalancer).isInstanceOf(TestLoadBalancer.class);
 
         TestLoadBalancer lb = (TestLoadBalancer) loadBalancer;
@@ -138,7 +138,7 @@ public class MicroProfileConfigProviderTest {
                 .hasSize(1)
                 .containsAllEntriesOf(Map.of("some-prop", "some-prop-value"));
 
-        serviceDiscovery = dux.getServiceDiscovery(THIRD_SERVICE);
+        serviceDiscovery = stork.getServiceDiscovery(THIRD_SERVICE);
         assertThat(serviceDiscovery).isInstanceOf(TestServiceDiscovery.class);
         sd = (TestServiceDiscovery) serviceDiscovery;
 
@@ -146,7 +146,7 @@ public class MicroProfileConfigProviderTest {
         assertThat(sd.getConfig().type()).isEqualTo("test-sd-1");
         assertThat(sd.getConfig().parameters()).isEmpty();
 
-        loadBalancer = dux.getLoadBalancer(THIRD_SERVICE);
+        loadBalancer = stork.getLoadBalancer(THIRD_SERVICE);
         assertThat(loadBalancer).isInstanceOf(TestLoadBalancer.class);
         lb = (TestLoadBalancer) loadBalancer;
 
@@ -155,11 +155,11 @@ public class MicroProfileConfigProviderTest {
         assertThat(lb.getConfig().parameters()).isEmpty();
     }
 
-    private Dux duxForConfig(Map<String, String> properties) {
+    private Stork storkForConfig(Map<String, String> properties) {
         SmallRyeConfig config = new SmallRyeConfigBuilder()
                 .withSources(new ConfigValuePropertiesConfigSource(properties, "test-config-source", 0))
                 .build();
         ConfigProviderResolver.setInstance(new TestMicroProfileConfigProvider(config));
-        return DuxTestUtils.getNewDuxInstance();
+        return StorkTestUtils.getNewStorkInstance();
     }
 }
diff --git a/microprofile/src/test/java/io/smallrye/dux/microprofile/TestMicroProfileConfigProvider.java b/microprofile/src/test/java/io/smallrye/stork/microprofile/TestMicroProfileConfigProvider.java
similarity index 96%
rename from microprofile/src/test/java/io/smallrye/dux/microprofile/TestMicroProfileConfigProvider.java
rename to microprofile/src/test/java/io/smallrye/stork/microprofile/TestMicroProfileConfigProvider.java
index 19d488cc..091a04cc 100644
--- a/microprofile/src/test/java/io/smallrye/dux/microprofile/TestMicroProfileConfigProvider.java
+++ b/microprofile/src/test/java/io/smallrye/stork/microprofile/TestMicroProfileConfigProvider.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux.microprofile;
+package io.smallrye.stork.microprofile;
 
 import org.eclipse.microprofile.config.Config;
 import org.eclipse.microprofile.config.spi.ConfigBuilder;
diff --git a/service-discovery/static-list/src/test/java/io/smallrye/dux/servicediscovery/staticlist/StaticListServiceDiscoveryTest.java b/service-discovery/static-list/src/test/java/io/smallrye/stork/servicediscovery/staticlist/StaticListServiceDiscoveryTest.java
similarity index 74%
rename from service-discovery/static-list/src/test/java/io/smallrye/dux/servicediscovery/staticlist/StaticListServiceDiscoveryTest.java
rename to service-discovery/static-list/src/test/java/io/smallrye/stork/servicediscovery/staticlist/StaticListServiceDiscoveryTest.java
index 22710485..145fbe7b 100644
--- a/service-discovery/static-list/src/test/java/io/smallrye/dux/servicediscovery/staticlist/StaticListServiceDiscoveryTest.java
+++ b/service-discovery/static-list/src/test/java/io/smallrye/stork/servicediscovery/staticlist/StaticListServiceDiscoveryTest.java
@@ -1,4 +1,4 @@
-package io.smallrye.dux.servicediscovery.staticlist;
+package io.smallrye.stork.servicediscovery.staticlist;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
@@ -9,14 +9,14 @@ import java.util.Map;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
-import io.smallrye.dux.Dux;
-import io.smallrye.dux.DuxTestUtils;
-import io.smallrye.dux.ServiceInstance;
-import io.smallrye.dux.test.TestConfigProvider;
+import io.smallrye.stork.ServiceInstance;
+import io.smallrye.stork.Stork;
+import io.smallrye.stork.StorkTestUtils;
+import io.smallrye.stork.test.TestConfigProvider;
 
 public class StaticListServiceDiscoveryTest {
 
-    Dux dux;
+    Stork stork;
 
     @BeforeEach
     void setUp() {
@@ -30,12 +30,12 @@ public class StaticListServiceDiscoveryTest {
         TestConfigProvider.addServiceConfig("third-service", null, "static",
                 null, Map.of("4", "http://localhost:8083"));
 
-        dux = DuxTestUtils.getNewDuxInstance();
+        stork = StorkTestUtils.getNewStorkInstance();
     }
 
     @Test
     void shouldGetAllServiceInstances() {
-        List<ServiceInstance> serviceInstances = Dux.getInstance().getServiceDiscovery("first-service")
+        List<ServiceInstance> serviceInstances = Stork.getInstance().getServiceDiscovery("first-service")
                 .getServiceInstances()
                 .collect().asList().await().atMost(Duration.ofSeconds(5));
 
diff --git a/test-utils/pom.xml b/test-utils/pom.xml
index 7253a980..5bea4dd0 100644
--- a/test-utils/pom.xml
+++ b/test-utils/pom.xml
@@ -5,20 +5,20 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <groupId>io.smallrye.dux</groupId>
-        <artifactId>smallrye-dux-parent</artifactId>
+        <groupId>io.smallrye.stork</groupId>
+        <artifactId>smallrye-stork-parent</artifactId>
         <version>1.0-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 
-    <artifactId>smallrye-dux-test-utils</artifactId>
+    <artifactId>smallrye-stork-test-utils</artifactId>
 
-    <name>SmallRye Dux Load Balancer : Test Utilities</name>
+    <name>SmallRye Stork Load Balancer : Test Utilities</name>
 
     <dependencies>
         <dependency>
-            <groupId>io.smallrye.dux</groupId>
-            <artifactId>smallrye-dux-api</artifactId>
+            <groupId>io.smallrye.stork</groupId>
+            <artifactId>smallrye-stork-api</artifactId>
         </dependency>
         <dependency>
             <groupId>org.assertj</groupId>
diff --git a/test-utils/src/main/java/io/smallrye/dux/DuxTestUtils.java b/test-utils/src/main/java/io/smallrye/dux/DuxTestUtils.java
deleted file mode 100644
index 6d6ce1cf..00000000
--- a/test-utils/src/main/java/io/smallrye/dux/DuxTestUtils.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package io.smallrye.dux;
-
-public class DuxTestUtils {
-    @SuppressWarnings("deprecation")
-    public static Dux getNewDuxInstance() {
-        return new Dux();
-    }
-}
diff --git a/test-utils/src/main/java/io/smallrye/stork/StorkTestUtils.java b/test-utils/src/main/java/io/smallrye/stork/StorkTestUtils.java
new file mode 100644
index 00000000..66fd0c26
--- /dev/null
+++ b/test-utils/src/main/java/io/smallrye/stork/StorkTestUtils.java
@@ -0,0 +1,8 @@
+package io.smallrye.stork;
+
+public class StorkTestUtils {
+    @SuppressWarnings("deprecation")
+    public static Stork getNewStorkInstance() {
+        return new Stork();
+    }
+}
diff --git a/test-utils/src/main/java/io/smallrye/dux/test/TestConfigProvider.java b/test-utils/src/main/java/io/smallrye/stork/test/TestConfigProvider.java
similarity index 81%
rename from test-utils/src/main/java/io/smallrye/dux/test/TestConfigProvider.java
rename to test-utils/src/main/java/io/smallrye/stork/test/TestConfigProvider.java
index 82cfb2d6..5a76e781 100644
--- a/test-utils/src/main/java/io/smallrye/dux/test/TestConfigProvider.java
+++ b/test-utils/src/main/java/io/smallrye/stork/test/TestConfigProvider.java
@@ -1,18 +1,18 @@
-package io.smallrye.dux.test;
+package io.smallrye.stork.test;
 
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
-import io.smallrye.dux.config.DuxConfigProvider;
-import io.smallrye.dux.config.LoadBalancerConfig;
-import io.smallrye.dux.config.ServiceConfig;
-import io.smallrye.dux.config.ServiceDiscoveryConfig;
+import io.smallrye.stork.config.ConfigProvider;
+import io.smallrye.stork.config.LoadBalancerConfig;
+import io.smallrye.stork.config.ServiceConfig;
+import io.smallrye.stork.config.ServiceDiscoveryConfig;
 
 /**
- * Dux config provider for tests, allows easily configuring stuff programmatically
+ * Stork config provider for tests, allows easily configuring stuff programmatically
  */
-public class TestConfigProvider implements DuxConfigProvider {
+public class TestConfigProvider implements ConfigProvider {
     private static final List<ServiceConfig> configs = new ArrayList<>();
 
     private static int priority = Integer.MAX_VALUE;
@@ -70,7 +70,7 @@ public class TestConfigProvider implements DuxConfigProvider {
     }
 
     @Override
-    public List<ServiceConfig> getDuxConfigs() {
+    public List<ServiceConfig> getConfigs() {
         return configs;
     }
 
diff --git a/test-utils/src/main/java/io/smallrye/dux/test/TestLoadBalancer.java b/test-utils/src/main/java/io/smallrye/stork/test/TestLoadBalancer.java
similarity index 67%
rename from test-utils/src/main/java/io/smallrye/dux/test/TestLoadBalancer.java
rename to test-utils/src/main/java/io/smallrye/stork/test/TestLoadBalancer.java
index 9c7c8c70..fd1766bf 100644
--- a/test-utils/src/main/java/io/smallrye/dux/test/TestLoadBalancer.java
+++ b/test-utils/src/main/java/io/smallrye/stork/test/TestLoadBalancer.java
@@ -1,10 +1,12 @@
-package io.smallrye.dux.test;
+package io.smallrye.stork.test;
+
+import java.util.List;
 
-import io.smallrye.dux.LoadBalancer;
-import io.smallrye.dux.ServiceDiscovery;
-import io.smallrye.dux.ServiceInstance;
-import io.smallrye.dux.config.LoadBalancerConfig;
 import io.smallrye.mutiny.Uni;
+import io.smallrye.stork.LoadBalancer;
+import io.smallrye.stork.ServiceDiscovery;
+import io.smallrye.stork.ServiceInstance;
+import io.smallrye.stork.config.LoadBalancerConfig;
 
 public class TestLoadBalancer implements LoadBalancer {
 
@@ -23,6 +25,11 @@ public class TestLoadBalancer implements LoadBalancer {
         return null;
     }
 
+    @Override
+    public ServiceInstance selectServiceInstance(List<ServiceInstance> serviceInstances) {
+        return null;
+    }
+
     public LoadBalancerConfig getConfig() {
         return config;
     }
diff --git a/test-utils/src/main/java/io/smallrye/dux/test/TestLoadBalancer1Provider.java b/test-utils/src/main/java/io/smallrye/stork/test/TestLoadBalancer1Provider.java
similarity index 64%
rename from test-utils/src/main/java/io/smallrye/dux/test/TestLoadBalancer1Provider.java
rename to test-utils/src/main/java/io/smallrye/stork/test/TestLoadBalancer1Provider.java
index f5957908..2c499dec 100644
--- a/test-utils/src/main/java/io/smallrye/dux/test/TestLoadBalancer1Provider.java
+++ b/test-utils/src/main/java/io/smallrye/stork/test/TestLoadBalancer1Provider.java
@@ -1,9 +1,9 @@
-package io.smallrye.dux.test;
+package io.smallrye.stork.test;
 
-import io.smallrye.dux.LoadBalancer;
-import io.smallrye.dux.ServiceDiscovery;
-import io.smallrye.dux.config.LoadBalancerConfig;
-import io.smallrye.dux.spi.LoadBalancerProvider;
+import io.smallrye.stork.LoadBalancer;
+import io.smallrye.stork.ServiceDiscovery;
+import io.smallrye.stork.config.LoadBalancerConfig;
+import io.smallrye.stork.spi.LoadBalancerProvider;
 
 public class TestLoadBalancer1Provider implements LoadBalancerProvider {
 
diff --git a/test-utils/src/main/java/io/smallrye/dux/test/TestLoadBalancer2Provider.java b/test-utils/src/main/java/io/smallrye/stork/test/TestLoadBalancer2Provider.java
similarity index 64%
rename from test-utils/src/main/java/io/smallrye/dux/test/TestLoadBalancer2Provider.java
rename to test-utils/src/main/java/io/smallrye/stork/test/TestLoadBalancer2Provider.java
index c28d7555..3a6c2daa 100644
--- a/test-utils/src/main/java/io/smallrye/dux/test/TestLoadBalancer2Provider.java
+++ b/test-utils/src/main/java/io/smallrye/stork/test/TestLoadBalancer2Provider.java
@@ -1,9 +1,9 @@
-package io.smallrye.dux.test;
+package io.smallrye.stork.test;
 
-import io.smallrye.dux.LoadBalancer;
-import io.smallrye.dux.ServiceDiscovery;
-import io.smallrye.dux.config.LoadBalancerConfig;
-import io.smallrye.dux.spi.LoadBalancerProvider;
+import io.smallrye.stork.LoadBalancer;
+import io.smallrye.stork.ServiceDiscovery;
+import io.smallrye.stork.config.LoadBalancerConfig;
+import io.smallrye.stork.spi.LoadBalancerProvider;
 
 public class TestLoadBalancer2Provider implements LoadBalancerProvider {
 
diff --git a/test-utils/src/main/java/io/smallrye/dux/test/TestServiceDiscovery.java b/test-utils/src/main/java/io/smallrye/stork/test/TestServiceDiscovery.java
similarity index 76%
rename from test-utils/src/main/java/io/smallrye/dux/test/TestServiceDiscovery.java
rename to test-utils/src/main/java/io/smallrye/stork/test/TestServiceDiscovery.java
index 8a5a710e..6a9fb85e 100644
--- a/test-utils/src/main/java/io/smallrye/dux/test/TestServiceDiscovery.java
+++ b/test-utils/src/main/java/io/smallrye/stork/test/TestServiceDiscovery.java
@@ -1,9 +1,9 @@
-package io.smallrye.dux.test;
+package io.smallrye.stork.test;
 
-import io.smallrye.dux.ServiceDiscovery;
-import io.smallrye.dux.ServiceInstance;
-import io.smallrye.dux.config.ServiceDiscoveryConfig;
 import io.smallrye.mutiny.Multi;
+import io.smallrye.stork.ServiceDiscovery;
+import io.smallrye.stork.ServiceInstance;
+import io.smallrye.stork.config.ServiceDiscoveryConfig;
 
 public class TestServiceDiscovery implements ServiceDiscovery {
 
diff --git a/test-utils/src/main/java/io/smallrye/dux/test/TestServiceDiscovery1Provider.java b/test-utils/src/main/java/io/smallrye/stork/test/TestServiceDiscovery1Provider.java
similarity index 66%
rename from test-utils/src/main/java/io/smallrye/dux/test/TestServiceDiscovery1Provider.java
rename to test-utils/src/main/java/io/smallrye/stork/test/TestServiceDiscovery1Provider.java
index 953fe3c1..45d3a669 100644
--- a/test-utils/src/main/java/io/smallrye/dux/test/TestServiceDiscovery1Provider.java
+++ b/test-utils/src/main/java/io/smallrye/stork/test/TestServiceDiscovery1Provider.java
@@ -1,8 +1,8 @@
-package io.smallrye.dux.test;
+package io.smallrye.stork.test;
 
-import io.smallrye.dux.ServiceDiscovery;
-import io.smallrye.dux.config.ServiceDiscoveryConfig;
-import io.smallrye.dux.spi.ServiceDiscoveryProvider;
+import io.smallrye.stork.ServiceDiscovery;
+import io.smallrye.stork.config.ServiceDiscoveryConfig;
+import io.smallrye.stork.spi.ServiceDiscoveryProvider;
 
 public class TestServiceDiscovery1Provider implements ServiceDiscoveryProvider {
 
diff --git a/test-utils/src/main/java/io/smallrye/dux/test/TestServiceDiscovery2Provider.java b/test-utils/src/main/java/io/smallrye/stork/test/TestServiceDiscovery2Provider.java
similarity index 66%
rename from test-utils/src/main/java/io/smallrye/dux/test/TestServiceDiscovery2Provider.java
rename to test-utils/src/main/java/io/smallrye/stork/test/TestServiceDiscovery2Provider.java
index 9928dfee..549da7d3 100644
--- a/test-utils/src/main/java/io/smallrye/dux/test/TestServiceDiscovery2Provider.java
+++ b/test-utils/src/main/java/io/smallrye/stork/test/TestServiceDiscovery2Provider.java
@@ -1,8 +1,8 @@
-package io.smallrye.dux.test;
+package io.smallrye.stork.test;
 
-import io.smallrye.dux.ServiceDiscovery;
-import io.smallrye.dux.config.ServiceDiscoveryConfig;
-import io.smallrye.dux.spi.ServiceDiscoveryProvider;
+import io.smallrye.stork.ServiceDiscovery;
+import io.smallrye.stork.config.ServiceDiscoveryConfig;
+import io.smallrye.stork.spi.ServiceDiscoveryProvider;
 
 public class TestServiceDiscovery2Provider implements ServiceDiscoveryProvider {
 
diff --git a/test-utils/src/main/resources/META-INF/services/io.smallrye.dux.config.DuxConfigProvider b/test-utils/src/main/resources/META-INF/services/io.smallrye.dux.config.DuxConfigProvider
deleted file mode 100644
index aeb26958..00000000
--- a/test-utils/src/main/resources/META-INF/services/io.smallrye.dux.config.DuxConfigProvider
+++ /dev/null
@@ -1,1 +0,0 @@
-io.smallrye.dux.test.TestConfigProvider
\ No newline at end of file
diff --git a/test-utils/src/main/resources/META-INF/services/io.smallrye.dux.spi.LoadBalancerProvider b/test-utils/src/main/resources/META-INF/services/io.smallrye.dux.spi.LoadBalancerProvider
deleted file mode 100644
index 65171e38..00000000
--- a/test-utils/src/main/resources/META-INF/services/io.smallrye.dux.spi.LoadBalancerProvider
+++ /dev/null
@@ -1,2 +0,0 @@
-io.smallrye.dux.test.TestLoadBalancer1Provider
-io.smallrye.dux.test.TestLoadBalancer2Provider
\ No newline at end of file
diff --git a/test-utils/src/main/resources/META-INF/services/io.smallrye.dux.spi.ServiceDiscoveryProvider b/test-utils/src/main/resources/META-INF/services/io.smallrye.dux.spi.ServiceDiscoveryProvider
deleted file mode 100644
index b5626e3e..00000000
--- a/test-utils/src/main/resources/META-INF/services/io.smallrye.dux.spi.ServiceDiscoveryProvider
+++ /dev/null
@@ -1,2 +0,0 @@
-io.smallrye.dux.test.TestServiceDiscovery1Provider
-io.smallrye.dux.test.TestServiceDiscovery2Provider
\ No newline at end of file
diff --git a/test-utils/src/main/resources/META-INF/services/io.smallrye.stork.config.ConfigProvider b/test-utils/src/main/resources/META-INF/services/io.smallrye.stork.config.ConfigProvider
new file mode 100644
index 00000000..6b8642f6
--- /dev/null
+++ b/test-utils/src/main/resources/META-INF/services/io.smallrye.stork.config.ConfigProvider
@@ -0,0 +1,1 @@
+io.smallrye.stork.test.TestConfigProvider
\ No newline at end of file
diff --git a/test-utils/src/main/resources/META-INF/services/io.smallrye.stork.spi.LoadBalancerProvider b/test-utils/src/main/resources/META-INF/services/io.smallrye.stork.spi.LoadBalancerProvider
new file mode 100644
index 00000000..81f96440
--- /dev/null
+++ b/test-utils/src/main/resources/META-INF/services/io.smallrye.stork.spi.LoadBalancerProvider
@@ -0,0 +1,2 @@
+io.smallrye.stork.test.TestLoadBalancer1Provider
+io.smallrye.stork.test.TestLoadBalancer2Provider
\ No newline at end of file
diff --git a/test-utils/src/main/resources/META-INF/services/io.smallrye.stork.spi.ServiceDiscoveryProvider b/test-utils/src/main/resources/META-INF/services/io.smallrye.stork.spi.ServiceDiscoveryProvider
new file mode 100644
index 00000000..67d950c5
--- /dev/null
+++ b/test-utils/src/main/resources/META-INF/services/io.smallrye.stork.spi.ServiceDiscoveryProvider
@@ -0,0 +1,2 @@
+io.smallrye.stork.test.TestServiceDiscovery1Provider
+io.smallrye.stork.test.TestServiceDiscovery2Provider
\ No newline at end of file