Agroal datasource should be initialized eagerly
**Describe the bug**
Currently the datasources are flagged as `@ApplicaitonScoped`, which means they are wrapped by a proxy making them initialized on first use.

This is annoying as
 - we don't respect the configuration of pre-filling the pool on boot
 - we can't validate the connection properties, deferring any failure (however also affected by #4503)
 - it's an overhead

diff --git a/extensions/agroal/deployment/src/main/java/io/quarkus/agroal/deployment/AgroalProcessor.java b/extensions/agroal/deployment/src/main/java/io/quarkus/agroal/deployment/AgroalProcessor.java
index 59df7c1589c..1e495fe4189 100644
--- a/extensions/agroal/deployment/src/main/java/io/quarkus/agroal/deployment/AgroalProcessor.java
+++ b/extensions/agroal/deployment/src/main/java/io/quarkus/agroal/deployment/AgroalProcessor.java
@@ -11,9 +11,9 @@
 import java.util.Optional;
 import java.util.Set;
 
-import javax.enterprise.context.ApplicationScoped;
 import javax.enterprise.inject.Default;
 import javax.enterprise.inject.Produces;
+import javax.inject.Singleton;
 import javax.sql.XADataSource;
 
 import org.eclipse.microprofile.metrics.Metadata;
@@ -358,7 +358,7 @@ private void createDataSourceProducerBean(BuildProducer<GeneratedBeanBuildItem>
                 .className(dataSourceProducerClassName)
                 .superClass(AbstractDataSourceProducer.class)
                 .build();
-        classCreator.addAnnotation(ApplicationScoped.class);
+        classCreator.addAnnotation(Singleton.class);
 
         for (AggregatedDataSourceBuildTimeConfigBuildItem aggregatedDataSourceBuildTimeConfig : aggregatedDataSourceBuildTimeConfigs) {
             String dataSourceName = aggregatedDataSourceBuildTimeConfig.getName();
@@ -366,7 +366,7 @@ private void createDataSourceProducerBean(BuildProducer<GeneratedBeanBuildItem>
             MethodCreator dataSourceMethodCreator = classCreator.getMethodCreator(
                     "createDataSource_" + HashUtil.sha1(dataSourceName),
                     AgroalDataSource.class);
-            dataSourceMethodCreator.addAnnotation(ApplicationScoped.class);
+            dataSourceMethodCreator.addAnnotation(Singleton.class);
             dataSourceMethodCreator.addAnnotation(Produces.class);
             if (aggregatedDataSourceBuildTimeConfig.isDefault()) {
                 dataSourceMethodCreator.addAnnotation(Default.class);
['extensions/agroal/deployment/src/main/java/io/quarkus/agroal/deployment/AgroalProcessor.java']