Skip to content
Snippets Groups Projects
release-startdev.sh 2.19 KiB
Newer Older
  • Learn to ignore specific revisions
  • #!/bin/bash
    
    #
    # Copyright (C) 2023 Das Land Schleswig-Holstein vertreten durch den
    # Ministerpräsidenten des Landes Schleswig-Holstein
    # Staatskanzlei
    # Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
    #
    # Lizenziert unter der EUPL, Version 1.2 oder - sobald
    # diese von der Europäischen Kommission genehmigt wurden -
    # Folgeversionen der EUPL ("Lizenz");
    # Sie dürfen dieses Werk ausschließlich gemäß
    # dieser Lizenz nutzen.
    # Eine Kopie der Lizenz finden Sie hier:
    #
    # https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
    #
    # Sofern nicht durch anwendbare Rechtsvorschriften
    # gefordert oder in schriftlicher Form vereinbart, wird
    # die unter der Lizenz verbreitete Software "so wie sie
    # ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
    # ausdrücklich oder stillschweigend - verbreitet.
    # Die sprachspezifischen Genehmigungen und Beschränkungen
    # unter der Lizenz sind dem Lizenztext zu entnehmen.
    #
    
    
    #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 "
    
    
    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"