]> source.dussan.org Git - archiva.git/commitdiff
Adding workspace prepare for CI build
authorMartin Stockhammer <martin.stockhammer@ars.de>
Wed, 24 Oct 2018 19:05:57 +0000 (21:05 +0200)
committerMartin Stockhammer <martin.stockhammer@ars.de>
Wed, 24 Oct 2018 19:05:57 +0000 (21:05 +0200)
Jenkinsfile
src/ci/scripts/prepareWorkspace.sh [new file with mode: 0644]

index 6b8667a3f34493a4f712480e63c225707d13f991..9cf047989f11ba4d270d7ad76be3790d222cf94a 100644 (file)
@@ -57,6 +57,8 @@ pipeline {
                                 // Needs a lot of time to reload the repository files, try without cleanup
                                 // Not sure, but maybe
                                 // sh "rm -rf .repository"
+                                sh "chmod 755 ./src/ci/scripts/prepareWorkspace.sh"
+                                sh "./src/ci/scripts/prepareWorkspace.sh"
 
                                 // Run test phase / ignore test failures
                                 // -B: Batch mode
diff --git a/src/ci/scripts/prepareWorkspace.sh b/src/ci/scripts/prepareWorkspace.sh
new file mode 100644 (file)
index 0000000..941a99e
--- /dev/null
@@ -0,0 +1,81 @@
+#!/usr/bin/env 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.
+#
+#  Author: Martin Stockhammer <martin_s@apache.org>
+#  Date:   2017-05-24
+#
+#  Removes directories that are not used anymore.
+##
+ATTIC_DIRS="archiva-modules/archiva-base/archiva-indexer"
+REMOVE_DIRS=".indexer"
+TMP_DIRECTORY=".tmp"
+
+while [ ! -z "$1" ]; do
+  case "$1" in
+    -d)
+      shift
+      REPO_DIR=$1
+      shift
+      ;;
+    *)
+      shift
+      ;;
+  esac
+done
+
+if [ -e "${TMP_DIRECTORY}" ]; then
+  rm -rf "${TMP_DIRECTORY}"
+fi
+mkdir -p "${TMP_DIRECTORY}"
+
+if [ -d "${REPO_DIR}" ]; then
+  rm -rf "${REPO_DIR}"
+else
+  echo "WARNING: Directory not found ${REPO_DIR}"
+fi
+
+for i in ${ATTIC_DIRS}; do
+ if [ "X${i}" != "X" -a -d ${i} ]; then
+   echo "Deleting directory ${i}"
+   rm -rf ${i}
+ fi
+done
+
+for i in ${REMOVE_DIRS}; do
+  find . -type d -name "${i}" -print0 | xargs -0 rm -rvf
+done
+
+TMP_DIRS="/tmp/archiva /var/tmp/archiva"
+for MY_TMP in $TMP_DIRS; do
+  if [ -e ${MY_TMP} ]; then
+    echo "Trying to delete ${MY_TMP}"
+    rm -rf ${MY_TMP} >/dev/null 2>&1
+  fi
+  if [ -e ${MY_TMP} ]; then
+    echo "Trying to move ${MY_TMP} away"
+    mv ${MY_TMP} ${MY_TMP}.$$
+  fi
+  if [ -e ${MY_TMP} ]; then
+    echo "Warning there exists a temporary directory, that cannot be cleaned ${MY_TMP}"
+    ls -latr ${MY_TMP}
+    ls -latr $(dirname ${MY_TMP})
+  fi
+done
+
+exit 0