diff --git a/ci/scripts/check_ccache.sh b/ci/scripts/check_ccache.sh new file mode 100755 index 0000000000..0eb277fdb9 --- /dev/null +++ b/ci/scripts/check_ccache.sh @@ -0,0 +1,61 @@ +#!/bin/bash + +OS_NAME="linux" +CODE_NAME=$(lsb_release -sc) +OS_MD5=$(lsb_release -s | md5sum | cut -d " " -f 1) +BRANCH_NAMES=$(git log --decorate | head -n 1 | sed 's/.*(\(.*\))/\1/' | sed 's=[a-zA-Z]*\/==g' | awk -F", " '{$1=""; print $0}') +ARTIFACTORY_URL="" +CCACHE_DIRECTORY="${HOME}/.ccache" + +while getopts "l:d:h" arg +do + case $arg in + l) + ARTIFACTORY_URL=$OPTARG + ;; + d) + CCACHE_DIRECTORY=$OPTARG + ;; + h) # help + echo " + +parameter: +-l: artifactory url +-d: ccache directory +-h: help + +usage: +./build.sh -l \${ARTIFACTORY_URL} -d \${CCACHE_DIRECTORY} [-h] + " + exit 0 + ;; + ?) + echo "ERROR! unknown argument" + exit 1 + ;; + esac +done + +if [[ -z "${ARTIFACTORY_URL}" || "${ARTIFACTORY_URL}" == "" ]];then + echo "you have not input ARTIFACTORY_URL !" + exit 1 +fi + +for BRANCH_NAME in ${BRANCH_NAMES} +do + echo "fetching ${BRANCH_NAME}/ccache-${OS_NAME}-${CODE_NAME}-${OS_MD5}.tar.gz" + wget -q --method HEAD "${ARTIFACTORY_URL}/${BRANCH_NAME}/ccache-${OS_NAME}-${CODE_NAME}-${OS_MD5}.tar.gz" + if [[ $? == 0 ]];then + wget "${ARTIFACTORY_URL}/${BRANCH_NAME}/ccache-${OS_NAME}-${CODE_NAME}-${OS_MD5}.tar.gz" && \ + mkdir -p ${CCACHE_DIRECTORY} && \ + tar zxf ccache-${OS_NAME}-${CODE_NAME}-${OS_MD5}.tar.gz -C ${CCACHE_DIRECTORY} && \ + rm ccache-${OS_NAME}-${CODE_NAME}-${OS_MD5}.tar.gz + if [[ $? == 0 ]];then + echo "found cache" + exit 0 + fi + fi +done + +echo "could not download cache" && exit 1 + diff --git a/ci/scripts/update_ccache.sh b/ci/scripts/update_ccache.sh new file mode 100644 index 0000000000..5f167e4e73 --- /dev/null +++ b/ci/scripts/update_ccache.sh @@ -0,0 +1,55 @@ +#!/bin/bash + +OS_NAME="linux" +CODE_NAME=$(lsb_release -sc) +OS_MD5=$(lsb_release -s | md5sum | cut -d " " -f 1) +BRANCH_NAMES=$(git log --decorate | head -n 1 | sed 's/.*(\(.*\))/\1/' | sed 's=[a-zA-Z]*\/==g' | awk -F", " '{$1=""; print $0}') +ARTIFACTORY_URL="" +ARTIFACTORY_USER="" +ARTIFACTORY_PASSWORD="" +CCACHE_DIRECTORY="${HOME}/.ccache" + +while getopts "l:u:p:d:h" arg +do + case $arg in + l) + ARTIFACTORY_URL=$OPTARG + ;; + u) + ARTIFACTORY_USER=$OPTARG + ;; + p) + ARTIFACTORY_PASSWORD=$OPTARG + ;; + d) + CCACHE_DIRECTORY=$OPTARG + ;; + h) # help + echo " + +parameter: +-l: artifactory url +-u: artifactory user +-p: artifactory password +-d: ccache directory +-h: help + +usage: +./build.sh -l \${ARTIFACTORY_URL} -u \${ARTIFACTORY_USER} -p \${ARTIFACTORY_PASSWORD} -d \${CCACHE_DIRECTORY} [-h] + " + exit 0 + ;; + ?) + echo "ERROR! unknown argument" + exit 1 + ;; + esac +done + +if [[ -z "${ARTIFACTORY_URL}" || "${ARTIFACTORY_URL}" == "" ]];then + echo "you have not input ARTIFACTORY_URL !" + exit 1 +fi + +tar zcf ./ccache.tar.gz -C ${HOME}/.ccache . +