You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ro...@apache.org on 2021/08/20 11:40:20 UTC

[cloudstack] branch 4.15 updated: vr: cleanup files in /var/cache/cloud/processed every day (#5331)

This is an automated email from the ASF dual-hosted git repository.

rohit pushed a commit to branch 4.15
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/4.15 by this push:
     new 0390281  vr: cleanup files in /var/cache/cloud/processed every day (#5331)
0390281 is described below

commit 0390281ad2d1574c5fb8b9164375b6236858dce9
Author: Wei Zhou <57...@users.noreply.github.com>
AuthorDate: Fri Aug 20 13:40:04 2021 +0200

    vr: cleanup files in /var/cache/cloud/processed every day (#5331)
    
    * vr: cleanup files in /var/cache/cloud/processed every day
    
    * #5331: add license header
---
 .../etc/cron.daily/clean_cloud_processed_files     | 38 ++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/systemvm/debian/etc/cron.daily/clean_cloud_processed_files b/systemvm/debian/etc/cron.daily/clean_cloud_processed_files
new file mode 100755
index 0000000..fbd7c5b
--- /dev/null
+++ b/systemvm/debian/etc/cron.daily/clean_cloud_processed_files
@@ -0,0 +1,38 @@
+#!/bin/bash
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you 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.
+
+# clear processed files in /var/cache/cloud/processed
+
+THRESHOLD=80
+DIRECTORY=/var/cache/cloud/processed
+DAYS=180
+MIN_DAYS=5
+
+if [ ! -d $DIRECTORY ];then
+    echo "$DIRECTORY not found"
+    exit 0
+fi
+
+percent=$(df --output=pcent $DIRECTORY | tr -dc '0-9')
+
+while [[ $percent -gt $THRESHOLD ]] && [[ $DAYS -gt $MIN_DAYS ]];do
+    echo "Removing files in $DIRECTORY older than $DAYS days"
+    find $DIRECTORY -type f -a -mtime +$DAYS -delete
+    DAYS=$((DAYS-1))
+    percent=$(df --output=pcent $DIRECTORY | tr -dc '0-9')
+done