Author: everett
Date: Wed May 28 16:36:18 2014
New Revision: 5432

Log:
Add verification scripts

Added:
    dev/jclouds/verify_jclouds_rc.cmd   (with props)
    dev/jclouds/verify_jclouds_rc.sh   (with props)

Added: dev/jclouds/verify_jclouds_rc.cmd
==============================================================================
--- dev/jclouds/verify_jclouds_rc.cmd (added)
+++ dev/jclouds/verify_jclouds_rc.cmd Wed May 28 16:36:18 2014
@@ -0,0 +1,98 @@
+@echo off
+setlocal
+set TAR_EXEC=C:\Users\aphillips\Downloads\TarTool\TarTool.exe
+set FCIV_EXEC=C:\Users\aphillips\Downloads\fciv.exe
+set GPG_EXEC=C:\Program Files (x86)\GnuPG\gpg.exe
+set SED_EXEC=C:\Users\aphillips\Downloads\sed\sed.exe
+
+if [%1]==[] (
+  echo Usage: verify-jclouds ^<dists-directory^> [release-version]
+  exit /b 1
+)
+
+set DIST_DIR=%1
+if not [%2]==[] (
+  set RELEASE_VERSION=%2
+) else (
+  for /f "delims=- tokens=1" %%i in ("%1") do set RELEASE_VERSION=%%i
+)
+echo Release version: %RELEASE_VERSION%
+
+echo Downloading release dists
+set SVN_DIR=https://dist.apache.org/repos/dist/dev/jclouds/%1
+svn export %SVN_DIR%
+
+if ERRORLEVEL 1 (
+  echo ERROR: Unable to download distributions from "%SVN_DIR%"
+  exit /b 1
+)
+
+cd "%1"
+
+set LOGFILE=checksums.txt
+for %%i in (*.tar.gz) do (
+  echo Verifying "%%i"
+  echo ## %%i >> "%LOGFILE%"
+  echo --- >> "%LOGFILE%"
+  "%GPG_EXEC%" --verify %%i.asc >> "%LOGFILE%" 2>&1
+  echo. >> "%LOGFILE%"
+  echo MD5 >> "%LOGFILE%"
+  "%FCIV_EXEC%" -md5 %%i >> "%LOGFILE%"
+  type %%i.md5 >> "%LOGFILE%"
+  echo. >> "%LOGFILE%"
+  echo. >> "%LOGFILE%"
+  echo SHA >> "%LOGFILE%"
+  "%FCIV_EXEC%" -sha1 %%i >> "%LOGFILE%"
+  type %%i.sha1 >> "%LOGFILE%"
+  echo. >> "%LOGFILE%"
+  echo. >> "%LOGFILE%"
+  echo Untarring "%%i"
+  "%TAR_EXEC%" %%i .
+)
+
+set ARCHIVES_LOGFILE=archives.txt
+for /D %%i in (jclouds*) do (
+  echo Seaching in %%i >> "%ARCHIVES_LOGFILE%"
+  for %%j in (.jar,.bin,.zip,.tar.gz) do (
+    echo Seaching for %%j... >> "%ARCHIVES_LOGFILE%"
+    dir /S /B %%i\*%%j >> "%ARCHIVES_LOGFILE%" 2>&1
+  )
+)
+
+echo Preparing clean Maven environment
+ren "%USERPROFILE%"\.m2\repository repository_orig
+ren "%USERPROFILE%"\.m2\settings.xml settings.xml.orig
+dir "%USERPROFILE%"\.m2\
+
+set MAVEN_LOGFILE=maven-log.txt
+cmd /c mvn --version >> "%MAVEN_LOGFILE%"
+echo. >> "%MAVEN_LOGFILE%"
+echo. >> "%MAVEN_LOGFILE%"
+for %%j in 
(jclouds,jclouds-labs,jclouds-labs-aws,jclouds-labs-google,jclouds-labs-openstack,jclouds-chef,jclouds-karaf,jclouds-cli)
 do (
+  if exist "%%j-%RELEASE_VERSION%" (
+    echo Building "%%j"
+    echo ## %%j >> "%MAVEN_LOGFILE%"
+    echo --- >> "%MAVEN_LOGFILE%"
+    cmd /c mvn clean install -Dmaven.javadoc.skip=true -f 
".\%%j-%RELEASE_VERSION%\pom.xml" >> "%MAVEN_LOGFILE%" 2>&1
+    if ERRORLEVEL 1 echo WARN: Failure in "%%j"
+    echo. >> "%MAVEN_LOGFILE%"
+    echo. >> "%MAVEN_LOGFILE%"
+  )
+)
+
+echo Checking examples
+set EXAMPLE_LOGFILE=example-log.txt
+cmd /c git clone https://github.com/jclouds/jclouds-examples.git >> 
%EXAMPLE_LOGFILE% 2>&1
+pushd .\jclouds-examples\blobstore-basics
+"%SED_EXEC%" s/^<groupId^>org\.jclouds/^<groupId^>org\.apache\.jclouds/g 
pom.xml | "%SED_EXEC%" 
s/^<jclouds\.version^>.*^<\/jclouds\.version^>/^<jclouds\.version^>%RELEASE_VERSION%^<\/jclouds\.version^>/g
  > pom-processed.xml
+popd
+cmd /c mvn clean package -f 
./jclouds-examples/blobstore-basics/pom-processed.xml >> %EXAMPLE_LOGFILE% 2>&1
+dir .\jclouds-examples\blobstore-basics\target
+
+echo Restoring Maven environment
+ren "%USERPROFILE%"\.m2\repository repository_jclouds_verification
+ren "%USERPROFILE%"\.m2\repository_orig repository
+ren "%USERPROFILE%"\.m2\settings.xml.orig settings.xml
+dir "%USERPROFILE%"\.m2\
+endlocal
+

Propchange: dev/jclouds/verify_jclouds_rc.cmd
------------------------------------------------------------------------------
    svn:executable = *

Added: dev/jclouds/verify_jclouds_rc.sh
==============================================================================
--- dev/jclouds/verify_jclouds_rc.sh (added)
+++ dev/jclouds/verify_jclouds_rc.sh Wed May 28 16:36:18 2014
@@ -0,0 +1,44 @@
+#!/bin/bash
+set -ex
+
+RELEASE=$1
+
+if [ -e /sbin/md5 ]; then
+    MD5SUM="/sbin/md5 -q"
+else
+    MD5SUM=/usr/bin/md5sum
+fi
+
+if [ -e /sbin/sha1 ]; then
+    SHA1SUM=/sbin/sha1
+elif [ -e /usr/bin/shasum ]; then
+    SHA1SUM=/usr/bin/shasum
+else
+    SHA1SUM=/usr/bin/sha1sum
+fi
+
+curl http://www.apache.org/dist/jclouds/KEYS | gpg --import
+
+svn co https://dist.apache.org/repos/dist/dev/jclouds/$RELEASE
+
+cd $RELEASE
+
+for tarball in `ls *.tar.gz`; do
+    # Verify md5sum
+    diff -wB <($MD5SUM ${tarball} | perl -pe 's/(.*?)\s.*/$1/') <(cat 
${tarball}.md5);
+    # Verify sha1sum
+    diff -wq <($SHA1SUM ${tarball}|perl -pe 's/(.*?)\s.*/$1/') <(cat 
${tarball}.sha1);
+    # verify signature
+    gpg --verify ${tarball}.asc ${tarball};
+    # Untar
+    tar -xzf ${tarball};
+done
+
+for d in jclouds jclouds-labs jclouds-labs-openstack jclouds-labs-aws 
jclouds-labs-google jclouds-chef jclouds-karaf jclouds-cli; do
+    reldir=${d}-$(echo $RELEASE | perl -pe 's/(.*)-rc.*/$1/');
+    if [ -d "${reldir}" ]; then
+       cd ${reldir};
+       mvn clean install;
+       cd ..;
+    fi
+done

Propchange: dev/jclouds/verify_jclouds_rc.sh
------------------------------------------------------------------------------
    svn:executable = *


Reply via email to