fix(manila): use ansible to create resources
diff --git a/roles/manila/defaults/main.yml b/roles/manila/defaults/main.yml
index d1dee4d..aaaf37d 100644
--- a/roles/manila/defaults/main.yml
+++ b/roles/manila/defaults/main.yml
@@ -21,3 +21,15 @@
 
 # List of annotations to apply to the Ingress
 manila_ingress_annotations: {}
+
+# Service instance flavor
+manila_flavor_name: m1.manila
+manila_flavor_vcpus: 2
+manila_flavor_ram: 2048
+manila_flavor_disk: 0
+
+# Service instance Image
+manila_image_name: manila-service-image
+manila_image_url: https://tarballs.opendev.org/openstack/manila-image-elements/images/manila-service-image-master.qcow2
+manila_image_container_format: bare
+manila_image_disk_format: raw
diff --git a/roles/manila/meta/main.yml b/roles/manila/meta/main.yml
index dfa384e..38e71af 100644
--- a/roles/manila/meta/main.yml
+++ b/roles/manila/meta/main.yml
@@ -25,6 +25,7 @@
 
 dependencies:
   - role: defaults
+  - role: openstacksdk
   - role: openstack_helm_endpoints
     vars:
       openstack_helm_endpoints_chart: manila
diff --git a/roles/manila/tasks/generate_resources.yml b/roles/manila/tasks/generate_resources.yml
new file mode 100644
index 0000000..b3969ac
--- /dev/null
+++ b/roles/manila/tasks/generate_resources.yml
@@ -0,0 +1,33 @@
+# Copyright (c) 2023 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: Create flavor
+  run_once: true
+  openstack.cloud.compute_flavor:
+    cloud: atmosphere
+    name: "{{ manila_flavor_name }}"
+    vcpus: "{{ manila_flavor_vcpus }}"
+    ram: "{{ manila_flavor_ram }}"
+    disk: "{{ manila_flavor_disk }}"
+    is_public: false
+  register: _manila_flavor
+
+- name: Upload service image
+  ansible.builtin.include_role:
+    name: glance_image
+  vars:
+    glance_image_name: "{{ manila_image_name }}"
+    glance_image_url: "{{ manila_image_url }}"
+    glance_image_container_format: "{{ manila_image_container_format }}"
+    glance_image_disk_format: "{{ manila_image_disk_format }}"
diff --git a/roles/manila/tasks/main.yml b/roles/manila/tasks/main.yml
index d6dad1c..067a66a 100644
--- a/roles/manila/tasks/main.yml
+++ b/roles/manila/tasks/main.yml
@@ -12,6 +12,10 @@
 # License for the specific language governing permissions and limitations
 # under the License.
 
+- name: Generate resources
+  ansible.builtin.import_tasks:
+    file: generate_resources.yml
+
 - name: Deploy Helm chart
   run_once: true
   kubernetes.core.helm:
diff --git a/roles/manila/vars/main.yml b/roles/manila/vars/main.yml
index abd6e41..456d41b 100644
--- a/roles/manila/vars/main.yml
+++ b/roles/manila/vars/main.yml
@@ -19,14 +19,9 @@
   pod:
     replicas:
       api: 3
-      data: 3
       scheduler: 3
-      share: 3
-  conf:
-    manila:
-      oslo_messaging_notifications:
-        driver: noop
-
+  bootstrap:
+    enabled: false
   dependencies:
     static:
       share:
@@ -35,7 +30,17 @@
             labels:
               application: openvswitch
               component: server
-
+  conf:
+    manila:
+      DEFAULT:
+        host: manila-share-worker
+      generic:
+        connect_share_server_to_tenant_network: true
+        limit_ssh_access: true
+        service_image_name: "{{ manila_image_name }}"
+        service_instance_flavor_id: "{{ _manila_flavor.id }}"
+      oslo_messaging_no tifications:
+        driver: noop
   manifests:
     ingress_api: false
     service_ingress_api: false