Skip to content
Snippets Groups Projects
release-startdev.sh 1.3 KiB
Newer Older
  • Learn to ignore specific revisions
  • #!/bin/bash
    
    
    #set -x
    
    if [ "$#" -ne 1 ]; then
        echo "Aufruf: ozg-release-startdev.sh NEWVERSION"
        exit 1
    fi
    
    
    NEWVERSION=$1
    
    # pom.xml:main -> project.version setzen
    # projectname/pom.xml:parent -> project.parent.version setzen
    # projectname/pom.xml:parent,main -> project.parent.version und project.version setzen
    #
    PROJECTS="pom.xml:main 
    
              alfa-service/pom.xml:parent
    
              alfa-server/pom.xml:parent
    
              alfa-client/pom.xml:parent "
    
    
    for PROJECT in $PROJECTS;
    do
      POMFILE=$(echo $PROJECT | cut -d':' -f1)
      ACTIONS=$(echo $PROJECT | cut -d':' -f2)
    
    
      ## Auf SNAPSHOT Versionen testen
      if fgrep -q "SNAPSHOT" $POMFILE; then
    
        RED='\033[0;31m'
        NC='\033[0m'
        echo "${RED}ERROR: Datei "$POMFILE" enthält noch SNAPSHOT Versionen, das sollte hier nicht passieren.${NC}"
        exit 1
    
      fi
    
      ## Versionen setzen
    
      if [[ $ACTIONS == *"main"* ]] ; then
        xmlstarlet ed --pf -L -N w="http://maven.apache.org/POM/4.0.0" -u '//w:project/w:version' -v $NEWVERSION $POMFILE
      fi
    
      if [[ $ACTIONS == *"parent"* ]]; then
        xmlstarlet ed --pf -L -N w="http://maven.apache.org/POM/4.0.0" -u '//w:project/w:parent/w:version' -v $NEWVERSION $POMFILE
      fi
    done
    
    
    
    echo
    echo "NEXT STEPS:"
    echo "***********"
    echo "Änderungen prüfen"
    echo "git commit -a -m 'start development "$NEWVERSION"'"
    echo "git push"