Skip to content

Commit

Permalink
update how_release based on 7.8.6RC3 experience (OSGeo#1913)
Browse files Browse the repository at this point in the history
  • Loading branch information
landam authored Oct 10, 2021
1 parent 327425c commit 6a04ee1
Showing 1 changed file with 28 additions and 31 deletions.
59 changes: 28 additions & 31 deletions doc/howto_release.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# How to release GRASS GIS binaries and source code

*Note: Some steps in this text are to be done by the development coordinator
(currently Markus Neteler, PSC Chair) due to needed logins.*
(currently Markus Neteler and Martin Landa) due to needed logins.*

## HOWTO create a release

Expand All @@ -17,7 +17,7 @@ Check examples if still compiling
### Fix typos in source code with

```bash
utils/fix_typos.sh
tools/fix_typos.sh
```

### i18N: sync from Transifex
Expand All @@ -29,7 +29,7 @@ master .po files

```bash
cd locale
sh ~/software/grass-addons/utils/transifex_merge.sh
sh ~/software/grass-addons/tools/transifex_merge.sh
make
make verify
# ... then fix .po files as needed.
Expand All @@ -51,7 +51,7 @@ rm -f config.guess config.sub
wget http://git.savannah.gnu.org/cgit/config.git/plain/config.guess
wget http://git.savannah.gnu.org/cgit/config.git/plain/config.sub
git diff config.guess config.sub
autoconf-2.13
autoconf2.69
```

Now check if configure still works.
Expand All @@ -74,16 +74,16 @@ git push origin config_sub_update_r78
rm -f locale/templates/*.pot
rm -f locale/po/messages.mo
rm -f demolocation/PERMANENT/.bash*
find . -name '*~' | xargs rm
find . -name '*.bak' | xargs rm
find . -name '*.swp' | xargs rm
find . -name '.#*' | xargs rm
find . -name '*.orig' | xargs rm
find . -name '*.rej' | xargs rm
find . -name '*.o' | xargs rm
find . -name '*.pyc' | xargs rm
find . -name 'OBJ.*' | xargs rm -r
find . -name '__pycache__' | xargs rm -r
find . -name '*~' | xargs -r rm
find . -name '*.bak' | xargs -r rm
find . -name '*.swp' | xargs -r rm
find . -name '.#*' | xargs -r rm
find . -name '*.orig' | xargs -r rm
find . -name '*.rej' | xargs -r rm
find . -name '*.o' | xargs -r rm
find . -name '*.pyc' | xargs -r rm
find . -name 'OBJ.*' | xargs -r rm -r
find . -name '__pycache__' | xargs -r rm -r
rm -f python/grass/ctypes/ctypesgencore/parser/lextab.py
rm -f gui/wxpython/menustrings.py gui/wxpython/build_ext.pyc \
gui/wxpython/xml/menudata.xml gui/wxpython/xml/module_tree_menudata.xml
Expand Down Expand Up @@ -115,11 +115,6 @@ Example:
2019
```

~~Update OSGeo4W setup.hint file~~
~~no longer needed~~
~~vim mswindows/osgeo4w/setup_x86.hint.tmpl~~
~~vim mswindows/osgeo4w/setup_x86_64.hint.tmpl~~

### Create release tag

(see <https://help.github.com/en/articles/creating-releases>)
Expand Down Expand Up @@ -179,7 +174,7 @@ md5sum grass-${VERSION}.tar.gz > grass-${VERSION}.md5sum
Create Changelog file on release branch:

```bash
python utils/gitlog2changelog.py
python3 tools/gitlog2changelog.py
mv ChangeLog ChangeLog_$VERSION
head ChangeLog_$VERSION
gzip ChangeLog_$VERSION
Expand Down Expand Up @@ -219,7 +214,8 @@ Note: grasslxd only reachable via jumphost - https://wiki.osgeo.org/wiki/SAC_Ser

```bash
# Store the source tarball (twice) in (use scp -p FILES grass:):
SERVER1=grasslxd
USER=neteler
SERVER1=grass.lxd
SERVER1DIR=/var/www/code_and_data/grass$MAJOR$MINOR/source/
SERVER2=upload.osgeo.org
SERVER2DIR=/osgeo/download/grass/grass$MAJOR$MINOR/source/
Expand All @@ -228,26 +224,27 @@ echo $SERVER2:$SERVER2DIR

# upload along with associated files:
scp -p grass-$VERSION.* AUTHORS COPYING ChangeLog_$VERSION.gz \
INSTALL REQUIREMENTS.html SUBMITTING neteler@$SERVER1:$SERVER1DIR
INSTALL REQUIREMENTS.html SUBMITTING $USER@$SERVER1:$SERVER1DIR

scp -p grass-$VERSION.* AUTHORS COPYING ChangeLog_$VERSION.gz \
INSTALL REQUIREMENTS.html SUBMITTING neteler@$SERVER2:$SERVER2DIR
INSTALL REQUIREMENTS.html SUBMITTING $USER@$SERVER2:$SERVER2DIR

# Only at full release!
# generate link to "latest" source code
ssh neteler@$SERVER1 "cd $SERVER1DIR ; rm -f grass-$MAJOR.$MINOR-latest.tar.gz"
ssh neteler@$SERVER1 "cd $SERVER1DIR ; ln -s grass-$VERSION.tar.gz grass-$MAJOR.$MINOR-latest.tar.gz"
ssh neteler@$SERVER1 "cd $SERVER1DIR ; rm -f grass-$MAJOR.$MINOR-latest.md5sum"
ssh neteler@$SERVER1 "cd $SERVER1DIR ; ln -s grass-$VERSION.tar.md5sum grass-$MAJOR.$MINOR-latest.md5sum"
ssh $USER@$SERVER1 "cd $SERVER1DIR ; rm -f grass-$MAJOR.$MINOR-latest.tar.gz"
ssh $USER@$SERVER1 "cd $SERVER1DIR ; ln -s grass-$VERSION.tar.gz grass-$MAJOR.$MINOR-latest.tar.gz"
ssh $USER@$SERVER1 "cd $SERVER1DIR ; rm -f grass-$MAJOR.$MINOR-latest.md5sum"
ssh $USER@$SERVER1 "cd $SERVER1DIR ; ln -s grass-$VERSION.tar.md5sum grass-$MAJOR.$MINOR-latest.md5sum"

# verify
echo "https://grass.osgeo.org/grass$MAJOR$MINOR/source/"

# update winGRASS related files: Update the winGRASS version
vim grass-addons/tools/wingrass-packager/grass_packager_release.bat
vim grass-addons/tools/wingrass-packager/grass_addons.sh
vim grass-addons/tools/wingrass-packager/grass_copy_wwwroot.sh
vim grass-addons/tools/wingrass-packager/cronjob.sh # major/minor release only
# https://github.com/landam/wingrass-maintenance-scripts
vim wingrass-maintenance-scripts/grass_packager_release.bat
vim wingrass-maintenance-scripts/grass_addons.sh
vim wingrass-maintenance-scripts/grass_copy_wwwroot.sh
vim wingrass-maintenance-scripts/cronjob.sh # major/minor release only

# update addons - major/minor release only
vim grass-addons/tools/addons/grass-addons-publish.sh
Expand Down

0 comments on commit 6a04ee1

Please sign in to comment.