Changeset 5b01725


Ignore:
Timestamp:
Jun 26, 2013 9:06:56 AM (10 months ago)
Author:
Kris Moore <kris@…>
Branches:
master, 9.2-release, releng/10.0, releng/10.0.1
Children:
084c528
Parents:
451fc94
Message:

Add new branches / chbranch functionality to pc-updatemanager.

This will allow users to see what branches are available, I.E. 9.1-RELEASE, 9-TRUEOS, etc and upgrade their system to them.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src-sh/pc-updatemanager/pc-updatemanager

    r02f5b7c r5b01725  
    6868        echo "$0 - Usage 
    6969---- 
     70  branches              - List available system branches 
     71  chbranch <tag>        - Change to new system branch 
    7072  check                 - Check for system updates 
    7173  install <tag>,<tag2>  - Install system updates 
     
    145147 
    146148} 
     149 
     150do_branch() { 
     151  up="$1" 
     152 
     153  # Setup our variable to catch if we have a bad branch 
     154  BRANCHFOUND="0"  
     155 
     156  while read line 
     157  do 
     158     echo $line | grep -q "^BRANCHES:" 
     159     if [ $? -eq 0 ] ; then 
     160        for i in `echo $line | cut -d ':' -f 2 | sed 's|,| |g'` 
     161        do 
     162          if [ "$i" != "$up" ] ; then continue ;fi 
     163          if [ "`uname -r | cut -d '-' -f 1-2`" = "$up" ] ; then  
     164             echo "You are already on this branch!" 
     165             BRANCHFOUND="1" 
     166             continue; 
     167          fi 
     168          start_major_fbsd_update "fbsd-$up" 
     169          BRANCHFOUND="1" 
     170          break 
     171        done 
     172     fi 
     173  done < ${PATCHTMPFILE} 
     174 
     175  # If no patches 
     176  if [ "${BRANCHFOUND}" = "0" ]; then  
     177     # No available updates 
     178     echo "Unknown branch ${1}" 
     179  fi 
     180 
     181  rm ${PATCHTMPFILE} 
     182 
     183}; 
     184 
     185list_branches() { 
     186  # Setup our variable, we have no branches so far 
     187  BRANCHFOUND="0"  
     188 
     189  while read line 
     190  do 
     191     echo $line | grep -q "^BRANCHES:" 
     192     if [ $? -eq 0 ] ; then 
     193        echo "Available branches:" 
     194        echo "----------------------------------" 
     195        echo $line | cut -d ':' -f 2 | sed 's|,|\ 
     196|g' 
     197        echo "" 
     198        echo "To change branches run: ${0} chbranch <branch>" 
     199        BRANCHFOUND="1" 
     200        continue 
     201     fi 
     202  done < ${PATCHTMPFILE} 
     203 
     204  # If no patches 
     205  if [ "${BRANCHFOUND}" = "0" ]; then  
     206     # No available updates 
     207     echo "No branches currently available!" 
     208  fi 
     209 
     210  rm ${PATCHTMPFILE} 
     211 
     212}; 
    147213 
    148214do_check() { 
     
    190256      echo "------------------------------------" 
    191257   fi 
    192    echo "NAME: FreeBSD System Update to ${sysUpNVer}"  
     258   echo "NAME: System Update to ${sysUpNVer}"  
    193259   echo "TYPE: SYSUPDATE"  
    194260   echo "TAG: fbsd-${sysUpNVer}" 
     
    447513            continue 
    448514          else 
    449             echo $up | grep -q "^release-"  
    450             if [ $? -eq 0 ] ; then  
    451               start_major_update "$up" 
    452               continue 
    453             fi  
    454  
    455515            # Doing regular pcbsd patch 
    456516            start_pcbsd_patch "${up}" 
     
    539599           check) get_update_file 
    540600                  do_check ;; 
     601        branches) get_update_file 
     602                  list_branches ;; 
     603        chbranch) get_update_file 
     604                  do_branch "${2}" ;; 
    541605        pkgcheck) checkup_pkgs ;; 
    542606       pkgupdate) update_pkgs "$2" ;; 
Note: See TracChangeset for help on using the changeset viewer.