Merge "Job to update docs configuration in docs and other odl projects"
[releng/builder.git] / jjb / docs / docs_version_bump_projects.sh
1 #!/bin/bash
2 # SPDX-License-Identifier: EPL-1.0
3 ##############################################################################
4 # Copyright (c) 2019 The Linux Foundation and others.
5 #
6 # All rights reserved. This program and the accompanying materials
7 # are made available under the terms of the Eclipse Public License v1.0
8 # which accompanies this distribution, and is available at
9 # http://www.eclipse.org/legal/epl-v10.html
10 ##############################################################################
11
12 update_file_usage () {
13     echo "Usage: $0 <release_name> <PUBLISH>"
14     echo ""
15     echo "    release_name:  The release_name e.g Magnesium ."
16     echo "    PUBLISH:  Set to true to PUBLISH"
17     echo ""
18 }
19 while getopts :h: opts; do
20   case "$opts" in
21     h)
22         update_file_usage
23         exit 0
24         ;;
25     [?])
26         update_file_usage
27         exit 1
28         ;;
29   esac
30 done
31 if [ "$GERRIT_PROJECT" == "releng/autorelease" ]; then
32     # User input
33     RELEASE_NAME=$RELEASE_NAME
34     # Captilize Version Name
35     release_name="$(tr '[:lower:]' '[:upper:]' <<< "${RELEASE_NAME:0:1}")${RELEASE_NAME:1}"
36     echo "Start Version Updating in odl-projects"
37     echo "RELEASE_NAME : $release_name"
38     ################
39     # Start script #
40     ###############
41
42     git submodule update
43     #'|| true' for repo like serviceutils where docs/conf.yaml doesn't exist
44     command='sed -i ''"s/.*version.*/version: '"$release_name"'/"'' docs/conf.yaml || true'
45     git submodule foreach "git checkout $STREAM"
46     git submodule foreach "$command"
47     if [ "$PUBLISH" == "true" ]
48       then
49         echo "Update docs header to $release_name in $STREAM"
50         git submodule foreach "git add . || true"
51         git submodule foreach "git commit -s -m 'Update docs header to $release_name in $STREAM
52
53     Should be $release_name on $STREAM.' || true"
54         git submodule foreach "git review || true"
55     fi
56 fi