File: setversion.sh

package info (click to toggle)
python-csb43 0.10.1%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,048 kB
  • sloc: python: 11,036; sh: 101; makefile: 17
file content (69 lines) | stat: -rwxr-xr-x 1,186 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#!/bin/bash

# SPDX-FileCopyrightText: 2024 wmj <wmj.py@gmx.com>
#
# SPDX-License-Identifier: LGPL-3.0-or-later

INIT_FILES="src/csb43/__init__.py"
DOC_FILES="doc/source/conf.py"

echoerr(){
    >&2 echo $1
}

usage(){
    echoerr "$0 <version>"
}

check_clean_wd(){
    git diff --quiet
    if [[ "$?" != "0" ]]
    then
        echoerr "The working directory is dirty. Aborting."
        exit 1
    fi
}

major_version(){
    echo $1 | sed -r 's/^([^\.]+(\.[^\.]+)?).*/\1/'
}

change_init(){
    for f in ${INIT_FILES}
    do
        sed -i -r -e "s/^(__version__ *= *)(.*)/\1'$1'/" $f
    done
}

change_docconf(){

    release=$1
    version=$(major_version ${release})

    for f in ${DOC_FILES}
    do
        sed -i -r -e "s/^(version *= *)(.*)/\1'${version}'/" \
                  -e "s/^(release *= *)(.*)/\1'${release}'/" \
                  $f
    done
}

change_version(){
    echo "$1" > VERSION
}

if [ -z "$1" ]
  then
    usage
    exit 1
fi

check_clean_wd &&
make test &&
#change_version $1 &&
# change_init $1 &&
# change_docconf $1 &&
make doc &&
git co -b release/$1 &&
git ci --all -m "version set to $1 [skip ci]" &&
echoerr "PROCESO EXITOSO. Nueva versión: $1"