mirror of
https://github.com/NixOS/nix.git
synced 2025-11-26 04:00:59 +01:00
cleanup old shell script
This commit is contained in:
parent
25117fd165
commit
986a50ac78
1 changed files with 0 additions and 80 deletions
|
|
@ -1,80 +0,0 @@
|
||||||
#! /bin/sh
|
|
||||||
|
|
||||||
#TODO EXCLUDE PATHS AND MAKE PARAMETERS AND STORE OBJECT!
|
|
||||||
#check if all needed ... exists, if not, exit with an error
|
|
||||||
|
|
||||||
svnbin=/nix/var/nix/profiles/per-user/root/profile/bin/svn
|
|
||||||
subversionedpaths=( /nix/state/v6rr3yi5ilgn3k0kwxkk633ap4z0m1zi-hellohardcodedstateworld-1.0/ /nix/state/v6rr3yi5ilgn3k0kwxkk633ap4z0m1zi-hellohardcodedstateworld-1.0/log/ )
|
|
||||||
subversionedpathsInterval=( 0 0 )
|
|
||||||
nonversionedpaths=( /nix/state/v6rr3yi5ilgn3k0kwxkk633ap4z0m1zi-hellohardcodedstateworld-1.0/cache/ /nix/state/v6rr3yi5ilgn3k0kwxkk633ap4z0m1zi-hellohardcodedstateworld-1.0/log/test/ /nix/state/v6rr3yi5ilgn3k0kwxkk633ap4z0m1zi-hellohardcodedstateworld-1.0/log/test2/test2/ /nix/state/v6rr3yi5ilgn3k0kwxkk633ap4z0m1zi-hellohardcodedstateworld-1.0/logging/ )
|
|
||||||
checkouts=( "/nix/var/nix/profiles/per-user/root/profile/bin/svn checkout file:///nix/staterepos/99dj5zg1ginj5as75nkb0psnp02krv2s-hellohardcodedstateworld-1.0 /nix/state/v6rr3yi5ilgn3k0kwxkk633ap4z0m1zi-hellohardcodedstateworld-1.0/" "/nix/var/nix/profiles/per-user/root/profile/bin/svn checkout file:///nix/staterepos/9ph3nd4irpvgs66h24xjvxrwpnrwy9n0-hellohardcodedstateworld-1.0 /nix/state/v6rr3yi5ilgn3k0kwxkk633ap4z0m1zi-hellohardcodedstateworld-1.0/log/" )
|
|
||||||
|
|
||||||
# if a dir exists, get his rev. number or check it out again (maybe the dir was deleted)
|
|
||||||
|
|
||||||
i=0
|
|
||||||
for path in ${subversionedpaths[@]}
|
|
||||||
do
|
|
||||||
if test -d $path; then
|
|
||||||
cd $path;
|
|
||||||
output=$($svnbin stat 2>&1 | grep "is not a working copy");
|
|
||||||
if [ "$output" != "" ] ; then #if the dir exists but is not yet an svn dir: create repos, if it doenst exits (is removed or something) than we dont do anything
|
|
||||||
${checkouts[$i]};
|
|
||||||
|
|
||||||
repos=$(svn info | grep "Repository Root" | sed 's/Repository Root: //'); # get the revision number of the repository
|
|
||||||
revision=$(svn info $repos | grep "Revision: " | sed 's/Revision: //');
|
|
||||||
interval=${subversionedpathsInterval[$i]};
|
|
||||||
|
|
||||||
#TODO BUG !!!!!!!! THE REVISION DOESNT GO UP WE NEED A DB CONNECTION OR A FILE TO HOLD A COUNTER ...!
|
|
||||||
|
|
||||||
if [ "$interval" = "0" ] || [ "$($revision % $interval)" = "0" ]; then # if we dont have an interval or the interval is due... commit
|
|
||||||
|
|
||||||
allsubdirs=( $(echo *) );
|
|
||||||
subdirs=();
|
|
||||||
for subdir in ${allsubdirs[@]} #add all, exlucding explicity stated direct versioned-subdirs or explicity stated nonversioned-subdirs
|
|
||||||
do #this is only to prevent some warnings, ultimately we would like svn add to have a option 'exclude dirs'
|
|
||||||
subdir="$(pwd)/$subdir/";
|
|
||||||
exclude=0;
|
|
||||||
|
|
||||||
for svnp in ${subversionedpaths[@]} #check if the subdir is in the list of subverioned paths
|
|
||||||
do
|
|
||||||
if [ "$svnp" = "$subdir" ]; then
|
|
||||||
exclude=1;
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
for nonvp in ${nonversionedpaths[@]} #check if the subdir is in the list of dirs that aren't supposed to be versioned
|
|
||||||
do
|
|
||||||
if [ "$nonvp" = "$subdir" ]; then
|
|
||||||
exclude=1;
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ $exclude = 0 ]; then #If it is ... that we exclude the subdir
|
|
||||||
subdirs[${#subdirs[*]}]=$subdir
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ "$subdirs" != "" ]; then
|
|
||||||
svn add $subdirs; #add all subdirs
|
|
||||||
|
|
||||||
for revpath in ${nonversionedpaths[@]} #We need to revert sub-sub* dirs, since these havent been excluded
|
|
||||||
do
|
|
||||||
if test -d $revpath; then
|
|
||||||
if [ "${revpath:0:${#path}}" == "$path" ]; then
|
|
||||||
#echo "$path revert $revpath";
|
|
||||||
svn revert $revpath;
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
svn -m "" commit; #Finally, we commit
|
|
||||||
fi
|
|
||||||
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
cd - &> /dev/null;
|
|
||||||
fi
|
|
||||||
let "i+=1"
|
|
||||||
done
|
|
||||||
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue