-
Notifications
You must be signed in to change notification settings - Fork 173
Release processs automation investigation
tingtli edited this page Jul 11, 2018
·
6 revisions
This documentation describes to automate some of the release process steps to reduce the manual work when xCAT is released.
When we release candidate build, generally we do preparation work, then run the test, if the test passes, we update some documentation to finish the release process. The automation process will have 2 parts. One is before the test, the other one is after the test. So, the new release process have following steps.
Name: pre_release
Usage: ./pre_release
Flow:
1. Prompt to ask user to input the release version <release_number>
2. Prompt to ask user to confirm Y/N?
3. If no, exit, if yes, go ahead to modify the release file (/xcat-core/docs/source/conf.py)
4. Commit the change? Y/N
5. If no, exit, if yes, go ahead to commit the change.
6. end
Name:go_release
Usage: ./go_release
Flow:
1. Prompt to ask user to input the release number
2. Prompt to ask user to confirm Y/N?
3. If no, exit, if yes, go ahead
4. Prompt to modify xcat.org download.html (Y/N/E)
Y: modify xcat.org, go ahead
N: not modify xcat.org, go ahead
E: exit
5. Prompt to modify xcat.org index.html (Y/N/E)
Y: modify xcat.org, go ahead
N: not modify xcat.org, go ahead
E: exit
6. Display the change and prompt to confirm the commit Y/N/E?
Y: commit
N: not commit, go ahead
E: exit
7. Prompt to upload build to xcat.org (debug mode /upload mode/Exit)
Debug mode: gives out debug information
Upload mode: upload the build to xcat.org
Exit:exit
8. Go back to step 7? Y/N ?
Y: got back to 7
N: go ahead
E: exit
9. Prompt to link xcat-dep tar ball (Y/N/E)
Y: find the link and gives out the message. Is this correct (Y/N)
Y:confirm and go ahead.
N:go back to 9.
N: go ahead
E: exit
10. bump version in xcat-core (Y/N/E)
Y: update xcat version (git)
N: go ahead
E: exit
11. Edit README.rst (Y/N/E)
Y: update README.rst (git)
N: go ahead
E: exit
12. tag branch (Y/N/E)
Y: tag (git)
N: go ahead
E: exit
13. Sync xcat.org from master branch to stable branch
Y: sync (git)
N: go ahead
E: exit
14. Update xCAT Offical Portal server to obtain the latest pages.
Y: get stable branch (git)
N: go ahead
E: exit
15. Run process on https://github.com/xcat2/xcat-core/releases/new
Y: run process on release page (restapi)
N: go ahead
E: exit
16. Edit the sidebar News in the Wiki on xCAT github, to add a new entry for current release.
Y: edit page (restapi)
N: go ahead
E: exit
17. end
[root@nn release]# cat prebuild
#Before do candidate build, update xCAT release information.
#git checkout <new_branch>
#sed -i s/$new_release/$old_release/g docs/source/conf.py
#git add docs/source/conf.py
(rewrite once and git checkin once)
#add new lines to docs/source/overview/xcat2_release.rst
#git add docs/source/overview/xcat2_release.rst
#git commit docs/source/conf.py -m "update for xCAT 2.x.x release "
[root@nn release]# cat afterbuild
#Section 1
#To update index and download page in xcat.org
# git checkout <new_branch>
# sed -i s/$current_release/$new_release/g download.html
# sed -i s/$old_release/$current_release/g download.html
# add one line for the next release in about line 43 in index.html
# git add download.html index.html
# git commit download.html index.html -m "update for xCAT 2.x release "
#Section 2
#To promote xCAT GA code to xcat.org
#ssh xcat.org -l xcat
#cd /var/www/xcat.org
//Note: 2.x is current release version
#promote_build.py --type=snap $current_build --link_latest --force
# cd /var/www/xcat.org/files/xcat/xcat-dep/2.x_Linux/
#find the latest xcat-dep package which has been verified
# ln -s xcat-dep-201707281008.tar.bz2 xcat-dep-$current_release-linux.tar.bz2
#cd /var/www/xcat.org/files/xcat/xcat-dep/2.x_Ubuntu/
#ln -s xcat-dep-ubuntu-201707281008.tar.bz2 xcat-dep-2.13.8-ubuntu.tar.bz2
## Bump version
#git checkout <new branch>
#edit version
#Edit README.rst (link to https://github.com/xcat2/xcat-core/blob/master/README.rst, modify README.rst :
1. latest
2. stable
3. refer to branch https://readthedocs.org/projects/xcat-docs/versions/
)
#git add Version README.rst -m "update for xCAT XXX release"
#git commit
##tag
#git checkout 2.14
#git pull upstream 2.14
#git push origin 2.14
#git tag -a 2.14.<x> -m 'xCAT 2.14.<x> release' -f
#git push --tags origin 2.14 -f
#git push --tags upstream 2.14 -f
#git ls-remote --tags ./. # list tags in current repo
#git ls-remote --tags # list tags in remote repo
[root@server]#ssh 10.3.5.10 -l root
[root@ 10.3.5.10]#ssh xcat.org -l xcat
xcat@sense: cd /var/www/xcat.org
xcat@sense: git checkout stable
xcat@sense: git pull
10. Run process on https://github.com/xcat2/xcat-core/releases/new
open page https://github.com/xcat2/xcat-core/releases/new
Edit the page. Taking 2.13.8 for example:
Enter 2.13.8 to Tag version input box
Choose 2.13 in @ target dorp-down box
Enter 2.13.8 to release title input box
Enter some description in Describe this release input box. please refer to 2.13.8 release page
This is the release process which can be referenced.
https://github.ibm.com/xcat2/team_process/blob/master/FVT/docs/Release_process.md
- Nov 13, 2024: xCAT 2.17 released.
- Mar 08, 2023: xCAT 2.16.5 released.
- Jun 20, 2022: xCAT 2.16.4 released.
- Nov 17, 2021: xCAT 2.16.3 released.
- May 25, 2021: xCAT 2.16.2 released.
- Nov 06, 2020: xCAT 2.16.1 released.
- Jun 17, 2020: xCAT 2.16 released.
- Mar 06, 2020: xCAT 2.15.1 released.
- Nov 11, 2019: xCAT 2.15 released.
- Mar 29, 2019: xCAT 2.14.6 released.
- Dec 07, 2018: xCAT 2.14.5 released.
- Oct 19, 2018: xCAT 2.14.4 released.
- Aug 24, 2018: xCAT 2.14.3 released.
- Jul 13, 2018: xCAT 2.14.2 released.
- Jun 01, 2018: xCAT 2.14.1 released.
- Apr 20, 2018: xCAT 2.14 released.
- Mar 14, 2018: xCAT 2.13.11 released.
- Jan 26, 2018: xCAT 2.13.10 released.
- Dec 18, 2017: xCAT 2.13.9 released.
- Nov 03, 2017: xCAT 2.13.8 released.
- Sep 22, 2017: xCAT 2.13.7 released.
- Aug 10, 2017: xCAT 2.13.6 released.
- Jun 30, 2017: xCAT 2.13.5 released.
- May 19, 2017: xCAT 2.13.4 released.
- Apr 14, 2017: xCAT 2.13.3 released.
- Feb 24, 2017: xCAT 2.13.2 released.
- Jan 13, 2017: xCAT 2.13.1 released.
- Dec 09, 2016: xCAT 2.13 released.
- Dec 06, 2016: xCAT 2.9.4 (AIX only) released.
- Nov 11, 2016: xCAT 2.12.4 released.
- Sep 30, 2016: xCAT 2.12.3 released.
- Aug 19, 2016: xCAT 2.12.2 released.
- Jul 08, 2016: xCAT 2.12.1 released.
- May 20, 2016: xCAT 2.12 released.
- Apr 22, 2016: xCAT 2.11.1 released.
- Mar 11, 2016: xCAT 2.9.3 (AIX only) released.
- Dec 11, 2015: xCAT 2.11 released.
- Nov 11, 2015: xCAT 2.9.2 (AIX only) released.
- Jul 30, 2015: xCAT 2.10 released.
- Jul 30, 2015: xCAT migrates from sourceforge to github
- Jun 26, 2015: xCAT 2.7.9 released.
- Mar 20, 2015: xCAT 2.9.1 released.
- Dec 12, 2014: xCAT 2.9 released.
- Sep 5, 2014: xCAT 2.8.5 released.
- May 23, 2014: xCAT 2.8.4 released.
- Jan 24, 2014: xCAT 2.7.8 released.
- Nov 15, 2013: xCAT 2.8.3 released.
- Jun 26, 2013: xCAT 2.8.2 released.
- May 17, 2013: xCAT 2.7.7 released.
- May 10, 2013: xCAT 2.8.1 released.
- Feb 28, 2013: xCAT 2.8 released.
- Nov 30, 2012: xCAT 2.7.6 released.
- Oct 29, 2012: xCAT 2.7.5 released.
- Aug 27, 2012: xCAT 2.7.4 released.
- Jun 22, 2012: xCAT 2.7.3 released.
- May 25, 2012: xCAT 2.7.2 released.
- Apr 20, 2012: xCAT 2.7.1 released.
- Mar 19, 2012: xCAT 2.7 released.
- Mar 15, 2012: xCAT 2.6.11 released.
- Jan 23, 2012: xCAT 2.6.10 released.
- Nov 15, 2011: xCAT 2.6.9 released.
- Sep 30, 2011: xCAT 2.6.8 released.
- Aug 26, 2011: xCAT 2.6.6 released.
- May 20, 2011: xCAT 2.6 released.
- Feb 14, 2011: Watson plays on Jeopardy and is managed by xCAT!
- xCAT OS And Hw Support Matrix
- Oct 22, 2010: xCAT 2.5 released.
- Apr 30, 2010: xCAT 2.4 is released.
- Oct 31, 2009: xCAT 2.3 released. xCAT's 10 year anniversary!
- Apr 16, 2009: xCAT 2.2 released.
- Oct 31, 2008: xCAT 2.1 released.
- Sep 12, 2008: Support for xCAT 2 can now be purchased!
- June 9, 2008: xCAT breaths life into (at the time) the fastest supercomputer on the planet
- May 30, 2008: xCAT 2.0 for Linux officially released!
- Oct 31, 2007: IBM open sources xCAT 2.0 to allow collaboration among all of the xCAT users.
- Oct 31, 1999: xCAT 1.0 is born!
xCAT started out as a project in IBM developed by Egan Ford. It was quickly adopted by customers and IBM manufacturing sites to rapidly deploy clusters.