ci: switch keycloak out of containers (#1070)

Signed-off-by: Mohammed Naser <mnaser@vexxhost.com>
diff --git a/molecule/keycloak/create.yml b/molecule/keycloak/create.yml
new file mode 120000
index 0000000..5e5dbdc
--- /dev/null
+++ b/molecule/keycloak/create.yml
@@ -0,0 +1 @@
+../aio/create.yml
\ No newline at end of file
diff --git a/molecule/keycloak/group_vars b/molecule/keycloak/group_vars
new file mode 120000
index 0000000..6a6b2f1
--- /dev/null
+++ b/molecule/keycloak/group_vars
@@ -0,0 +1 @@
+../aio/group_vars
\ No newline at end of file
diff --git a/molecule/keycloak/host_vars b/molecule/keycloak/host_vars
new file mode 120000
index 0000000..6dd61d6
--- /dev/null
+++ b/molecule/keycloak/host_vars
@@ -0,0 +1 @@
+../aio/host_vars
\ No newline at end of file
diff --git a/molecule/keycloak/molecule.yml b/molecule/keycloak/molecule.yml
index 6446c65..d1e4346 120000
--- a/molecule/keycloak/molecule.yml
+++ b/molecule/keycloak/molecule.yml
@@ -1 +1 @@
-../shared/molecule.yml
\ No newline at end of file
+../aio/molecule.yml
\ No newline at end of file
diff --git a/molecule/keycloak/prepare.yml b/molecule/keycloak/prepare.yml
index b94b2ed..5edf407 100644
--- a/molecule/keycloak/prepare.yml
+++ b/molecule/keycloak/prepare.yml
@@ -12,8 +12,11 @@
 # License for the specific language governing permissions and limitations
 # under the License.
 
-- import_playbook: ../shared/prepare/base.yml
-- import_playbook: ../shared/prepare/kubernetes.yml
+- name: Install Kubernetes
+  ansible.builtin.import_playbook: vexxhost.atmosphere.kubernetes
+
+- name: Install CSI
+  ansible.builtin.import_playbook: vexxhost.atmosphere.csi
 
 - hosts: controllers
   become: true
diff --git a/zuul.d/jobs.yaml b/zuul.d/jobs.yaml
index 9a33828..76ced26 100644
--- a/zuul.d/jobs.yaml
+++ b/zuul.d/jobs.yaml
@@ -37,13 +37,6 @@
       - atmosphere-buildset-registry
 
 - job:
-    name: atmosphere-molecule-keycloak
-    parent: atmosphere-molecule
-    pre-run: zuul.d/playbooks/molecule-keycloak/pre.yml
-    vars:
-      tox_envlist: molecule-keycloak
-
-- job:
     name: atmosphere-molecule-csi
     parent: atmosphere-molecule
     abstract: true
@@ -64,11 +57,22 @@
     name: atmosphere-molecule-aio
     parent: atmosphere-molecule
     abstract: true
-    timeout: 7200
     pre-run: zuul.d/playbooks/molecule-aio/pre.yml
     post-run: zuul.d/playbooks/molecule-aio/post.yml
     roles:
       - zuul: openstack/openstack-helm-infra
+
+- job:
+    name: atmosphere-molecule-aio-keycloak
+    parent: atmosphere-molecule-aio
+    vars:
+      tox_envlist: molecule-keycloak
+
+- job:
+    name: atmosphere-molecule-aio-full
+    parent: atmosphere-molecule-aio
+    abstract: true
+    timeout: 7200
     nodeset:
       nodes:
         - name: ubuntu-jammy
@@ -76,13 +80,13 @@
 
 - job:
     name: atmosphere-molecule-aio-openvswitch
-    parent: atmosphere-molecule-aio
+    parent: atmosphere-molecule-aio-full
     vars:
       tox_envlist: molecule-aio-openvswitch
 
 - job:
     name: atmosphere-molecule-aio-ovn
-    parent: atmosphere-molecule-aio
+    parent: atmosphere-molecule-aio-full
     # NOTE(mnaser): https://github.com/vexxhost/atmosphere/issues/662
     voting: false
     vars:
diff --git a/zuul.d/playbooks/molecule-keycloak/pre.yml b/zuul.d/playbooks/molecule-keycloak/pre.yml
deleted file mode 100644
index ab0c6e1..0000000
--- a/zuul.d/playbooks/molecule-keycloak/pre.yml
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright (c) 2024 VEXXHOST, Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-- name: Prepare host for Keycloak tests
-  hosts: all
-  roles:
-    - ensure-docker
diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml
index 55e21fa..7037611 100644
--- a/zuul.d/project.yaml
+++ b/zuul.d/project.yaml
@@ -16,11 +16,12 @@
     check:
       jobs:
         - atmosphere-buildset-registry
+        - atmosphere-molecule-aio-keycloak
         - atmosphere-molecule-aio-openvswitch
         - atmosphere-molecule-aio-ovn
         - atmosphere-molecule-csi-local-path-provisioner
         - atmosphere-molecule-csi-rbd
-        - atmosphere-molecule-keycloak
     post:
       jobs:
+        - atmosphere-molecule-aio-keycloak
         - atmosphere-upload-images