diff --git a/src/app/utilities/delete/DeleteComponent.ts b/src/app/utilities/delete/DeleteComponent.ts
index 9a8a0d8..f65712d 100644
--- a/src/app/utilities/delete/DeleteComponent.ts
+++ b/src/app/utilities/delete/DeleteComponent.ts
@@ -229,18 +229,25 @@
       this.deleteURL = environment.NSCONFIGTEMPLATE_URL;
       this.notifyMessage = 'DELETEDSUCCESSFULLY';
     } else if (data.page === 'k8-infra-profile') {
+      this.forceDelete = this.params.forceDeleteType;
       this.deleteURL = environment.K8SINFRACONFIGPROFILE_URL;
     } else if (data.page === 'k8-infra-controller') {
+      this.forceDelete = this.params.forceDeleteType;
       this.deleteURL = environment.K8SINFRACONTROLLERPROFILE_URL;
     } else if (data.page === 'k8-app-profile') {
+      this.forceDelete = this.params.forceDeleteType;
       this.deleteURL = environment.K8SAPPPROFILE_URL;
     } else if (data.page === 'k8-resource-profile') {
+      this.forceDelete = this.params.forceDeleteType;
       this.deleteURL = environment.K8SRESOURCEPROFILE_URL;
     } else if (data.page === 'oka-packages') {
+      this.forceDelete = this.params.forceDeleteType;
       this.deleteURL = environment.OKAPACKAGES_URL;
     } else if (data.page === 'k8-ksu') {
+      this.forceDelete = this.params.forceDeleteType;
       this.deleteURL = environment.KSU_URL;
     } else if (data.page === 'k8-cluster') {
+      this.forceDelete = this.params.forceDeleteType;
       this.page = data.page;
     }
   }
@@ -252,6 +259,11 @@
     };
     let deletingURl: string = '';
     if (this.forceDelete) {
+      if (this.page === 'k8-cluster') {
+        if (this.createdbyosm === 'true') {
+          this.deleteURL = environment.K8SCREATECLUSTER_URL;
+        }
+      }
       deletingURl = this.deleteURL + '/' + this.id + '?FORCE=true';
       this.notifyMessage = 'DELETEDSUCCESSFULLY';
     } else if (this.page === 'k8-cluster') {
diff --git a/src/app/utilities/oka-packages-action/OkaPackagesActionComponent.html b/src/app/utilities/oka-packages-action/OkaPackagesActionComponent.html
index ca48eb6..c7627d8 100644
--- a/src/app/utilities/oka-packages-action/OkaPackagesActionComponent.html
+++ b/src/app/utilities/oka-packages-action/OkaPackagesActionComponent.html
@@ -16,13 +16,17 @@
 Author: SANDHYA JS (sandhya.j@tataelxsi.co.in)
 -->
 <div class="btn-group list action" role="group">
-    <button [disabled]="state != 'CREATED'" type="button" class="btn btn-primary" (click)="deleteoka()" placement="top" container="body"
-      ngbTooltip="{{'DELETE' | translate}}">
-      <i class="far fa-trash-alt icons"></i>
-    </button>
-    <button [disabled]="state != 'CREATED'" type="button" class="btn btn-primary" (click)="okaEdit()" placement="top" container="body"
-      ngbTooltip="{{'EDIT' | translate}}">
-      <i class="far fa-edit icons"></i>
-    </button>
-  </div>
-  <app-loader [waitingMessage]="message" *ngIf="isLoadingDownloadResult"></app-loader>
\ No newline at end of file
+  <button type="button" class="btn btn-primary" (click)="deleteoka(false)"
+    placement="top" container="body" ngbTooltip="{{'DELETE' | translate}}">
+    <i class="far fa-trash-alt icons"></i>
+  </button>
+  <button [disabled]="state != 'CREATED'" type="button" class="btn btn-primary" (click)="okaEdit()" placement="top"
+    container="body" ngbTooltip="{{'EDIT' | translate}}">
+    <i class="far fa-edit icons"></i>
+  </button>
+  <button type="button" class="btn btn-primary" (click)="deleteoka(true)"
+    placement="top" container="body" ngbTooltip="{{'FORCEDELETE' | translate}}">
+    <i class="fas fa-trash-alt icons text-danger" title="delete"></i>
+  </button>
+</div>
+<app-loader [waitingMessage]="message" *ngIf="isLoadingDownloadResult"></app-loader>
\ No newline at end of file
diff --git a/src/app/utilities/oka-packages-action/OkaPackagesActionComponent.ts b/src/app/utilities/oka-packages-action/OkaPackagesActionComponent.ts
index 6fdbd1b..37ae771 100644
--- a/src/app/utilities/oka-packages-action/OkaPackagesActionComponent.ts
+++ b/src/app/utilities/oka-packages-action/OkaPackagesActionComponent.ts
@@ -75,9 +75,12 @@
     }
 
     /** Delete NS Config oka @public */
-    public deleteoka(): void {
+    public deleteoka(forceAction: boolean): void {
         // eslint-disable-next-line security/detect-non-literal-fs-filename
         const modalRef: NgbModalRef = this.modalService.open(DeleteComponent, { backdrop: 'static' });
+        modalRef.componentInstance.params = {
+            forceDeleteType: forceAction
+        };
         modalRef.result.then((result: MODALCLOSERESPONSEDATA) => {
             if (result) {
                 this.sharedService.callData();
