summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMorgan Richomme <morgan.richomme@orange.com>2016-07-07 12:05:17 +0000
committerGerrit Code Review <gerrit@172.30.200.206>2016-07-07 12:05:17 +0000
commitee93f8d5acac795fa04c66df1460b21d039ad1ed (patch)
treed20967404b1289eb7e8201aa408a87b47cb9b420
parent38d8a09ab2bcb65e92549264cb73e7ef4c06900b (diff)
parenta6789ba105da0ff9c802fb51403a3ffddaeb3f93 (diff)
Merge "Initial commit of retention script"
-rw-r--r--jjb/opnfv/artifact-cleanup.yml42
-rw-r--r--utils/retention_script.sh37
2 files changed, 79 insertions, 0 deletions
diff --git a/jjb/opnfv/artifact-cleanup.yml b/jjb/opnfv/artifact-cleanup.yml
new file mode 100644
index 000000000..b0f819145
--- /dev/null
+++ b/jjb/opnfv/artifact-cleanup.yml
@@ -0,0 +1,42 @@
+- project:
+ name: artifact-cleanup
+
+ project: 'releng'
+
+ jobs:
+ - 'artifact-cleanup-daily-{stream}'
+
+ stream:
+ - master:
+ branch: '{stream}'
+ gs-pathname: ''
+
+
+- job-template:
+ name: 'artifact-cleanup-daily-{stream}'
+
+ # Job template for daily builders
+ #
+ # Required Variables:
+ # stream: branch with - in place of / (eg. stable)
+ # branch: branch (eg. stable)
+ node: master
+
+ disabled: false
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ triggers:
+ - timed: 'H H * * *'
+
+ builders:
+ - shell: |
+ $WORKSPACE/utils/retention_script.sh
diff --git a/utils/retention_script.sh b/utils/retention_script.sh
new file mode 100644
index 000000000..9a8986ca5
--- /dev/null
+++ b/utils/retention_script.sh
@@ -0,0 +1,37 @@
+#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2016 The Linux Foundation and others
+#
+# 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.
+##############################################################################
+
+#These are the only projects that generate artifacts
+for x in armband ovsnfv fuel apex compass4nfv
+do
+
+ echo "Looking at artifacts for project $x"
+
+ while IFS= read -r artifact; do
+
+ artifact_date="$(gsutil ls -L $artifact | grep "Creation time:" | awk '{print $4,$5,$6}')"
+ age=$(($(date +%s)-$(date -d"$artifact_date" +%s)))
+ daysold=$(($age/86400))
+
+ if [[ "$daysold" -gt "10" ]]; then
+ echo "$daysold Days old Deleting: $(basename $artifact)"
+ else
+ echo "$daysold Days old Retaining: $(basename $artifact)"
+ fi
+
+ done < <(gsutil ls gs://artifacts.opnfv.org/"$x" |grep -v "/$")
+done