diff --git a/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/VendorSoftwareProductManagerImpl.java b/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/VendorSoftwareProductManagerImpl.java
index 052bd78..a2db915 100644
--- a/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/VendorSoftwareProductManagerImpl.java
+++ b/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/VendorSoftwareProductManagerImpl.java
@@ -697,7 +697,7 @@
                 JsonUtil.json2Object(zipFileManifest, ManifestContent.class);
         for (FileData fileData : manifestContent.getData()) {
             if ((fileData.getFile()).contains("dummy_ignore.yaml")) {
-                String filePath = new File("").getAbsolutePath();
+                String filePath = new File("").getAbsolutePath() + "/resources";
                 File envFilePath = new File(filePath + "/base_template.env");
                 File baseFilePath = new File(filePath + "/base_template.yaml");
                 try (
diff --git a/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/onboarding/OnboardingPackageProcessor.java b/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/onboarding/OnboardingPackageProcessor.java
index d1b64e2..a40f2eb 100644
--- a/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/onboarding/OnboardingPackageProcessor.java
+++ b/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/onboarding/OnboardingPackageProcessor.java
@@ -143,7 +143,7 @@
                     dataEnvList.add(dummyEnv);
                     dummyHeat.setData(dataEnvList);
                     newfiledata.add(dummyHeat);
-                    String filePath = new File("").getAbsolutePath();
+                    String filePath = new File("").getAbsolutePath() + "/resources";
                     File envFilePath = new File(filePath + "/base_template.env");
                     File baseFilePath = new File(filePath + "/base_template.yaml");
                     try (
diff --git a/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/orchestration/process/OrchestrationTemplateProcessZipHandler.java b/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/orchestration/process/OrchestrationTemplateProcessZipHandler.java
index 45dc5fa..71e47db 100644
--- a/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/orchestration/process/OrchestrationTemplateProcessZipHandler.java
+++ b/openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/orchestration/process/OrchestrationTemplateProcessZipHandler.java
@@ -150,7 +150,7 @@
     for (FileData fileData : manifestContent.getData()) {
       if (Objects.nonNull(fileData.getType()) &&
               fileData.getType().equals(FileData.Type.HELM) && fileData.getBase()) {
-        String filePath = new File("").getAbsolutePath();
+        String filePath = new File("").getAbsolutePath() + "/resources";
         File envFilePath = new File(filePath + "/base_template.env");
         File baseFilePath = new File(filePath + "/base_template.yaml");
         try (
diff --git a/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/files/default/base_template.env b/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/files/default/base_template.env
new file mode 100644
index 0000000..1b96230
--- /dev/null
+++ b/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/files/default/base_template.env
@@ -0,0 +1,4 @@
+parameters:
+  vnf_name: demo_vnf_ignore
+  vnf_id: demo_app
+  vf_module_id: demo_module_id
\ No newline at end of file
diff --git a/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/files/default/base_template.yaml b/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/files/default/base_template.yaml
new file mode 100644
index 0000000..eb6962b
--- /dev/null
+++ b/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/files/default/base_template.yaml
@@ -0,0 +1,49 @@
+
+
+heat_template_version: 2013-05-23
+
+description: Dummy base heat template
+
+##############
+#            #
+# PARAMETERS #
+#            #
+##############
+
+parameters:
+  vnf_name:
+    type: string
+    description: VNF_NAME
+  vnf_id:
+    type: string
+    label: VNF ID
+    description: The VNF ID is provided by ONAP
+  vf_module_id:
+    type: string
+    label: VF Module ID
+    description: The VF Module ID is provided by ONAP
+
+#############
+#           #
+# RESOURCES #
+#           #
+#############
+
+resources:
+  dummy:
+    type: OS::Heat::None
+    properties:
+      vnf_name:
+        get_param: vnf_name
+      vnf_id:
+        get_param: vnf_id
+      vf_module_id:
+        get_param: vf_module_id
+
+  #SDC won't allow too dummy resource as it has to find 'topology_template' TOSCA equivalent in heat templates
+  dummy_base:
+    type: OS::Nova::Server
+    properties:
+      name: test
+      image: test
+      flavor: test
\ No newline at end of file
diff --git a/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/recipes/ON_7_setup_base_template.rb b/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/recipes/ON_7_setup_base_template.rb
new file mode 100644
index 0000000..c84e660
--- /dev/null
+++ b/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/recipes/ON_7_setup_base_template.rb
@@ -0,0 +1,14 @@
+cookbook_file "#{ENV['JETTY_BASE']}/resources/base_template.yaml" do
+  source "base_template.yaml"
+  mode 0644
+  owner "jetty"
+  group "jetty"
+end
+ 
+cookbook_file "#{ENV['JETTY_BASE']}/resources/base_template.env" do
+  source "base_template.env"
+  mode 0644
+  owner "jetty"
+  group "jetty"
+end
+ 
diff --git a/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-solo/roles/sdc-onboard-backend.json b/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-solo/roles/sdc-onboard-backend.json
index 53915ff..5fdf89b 100644
--- a/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-solo/roles/sdc-onboard-backend.json
+++ b/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-solo/roles/sdc-onboard-backend.json
@@ -15,7 +15,8 @@
     "recipe[sdc-onboard-backend::ON_3_logback]",
     "recipe[sdc-onboard-backend::ON_4_setup_jetty_modules]",
     "recipe[sdc-onboard-backend::ON_5_setup_configuration]",
-    "recipe[sdc-onboard-backend::ON_6_prepareProbeFile]"
+    "recipe[sdc-onboard-backend::ON_6_prepareProbeFile]",
+    "recipe[sdc-onboard-backend::ON_7_setup_base_template]"
   ],
   "env_run_lists": {
   }
