From ec050b2f1a1a1e51692251d3a7687e48c226fff5 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Thu, 4 Feb 2016 07:14:34 +0200 Subject: Updates during the 0.2.0 release --- release.txt | 111 ++++++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 97 insertions(+), 14 deletions(-) (limited to 'release.txt') diff --git a/release.txt b/release.txt index c813817..e9985c6 100644 --- a/release.txt +++ b/release.txt @@ -1,40 +1,106 @@ TODO ==== -@@ Run tests in each project/package? -@@ Local Clang test is broken and disabled. -@@ Release date update in man page generation +@@ Looks like we need a public staging host. +@@ Local Clang test is broken and disabled, using FreeBSD for Clang testing +Notes +==== +- Be very careful with submodules if fixing anything, remember to update + build2-toolchain. Setup ===== -- Set passwordless sudo, logins to freebsd, cppget1 - - Make symlinks to development b, bpkg in /usr/local/bin/, used as the latest toolchain. - Boot cppget1, freebsd VMs, make sure data/time is correct. +- Set passwordless sudo, logins to freebsd, cppget1, rbook (Mac OS) + + For Mac OS: + echo "boris ALL=(ALL) NOPASSWD:ALL" >>/etc/sudoers + #echo "192.168.111.103 cppget1 pkg.cppget1" >>/etc/hosts + #echo "192.168.0.19 protem" >>/etc/hosts + curl --resolve 'pkg.cppget1:8080:192.168.0.19' http://pkg.cppget1:8080/1/ + iptables -t nat -A PREROUTING -d 192.168.0.19 -p tcp --dport 8080 -j DNAT --to-destination 192.168.111.103:80 + +- Copy prerequisites into build2-X.Y/, generate sha256 sums in BINARY (-b) + - Build new prerequisites (if any) on local, freebsd (install to /usr/local). Prelude ======= -- Copy new/updated prerequisites into build2-X.Y/ +- Review '@@' items [note: etc, private excluded] + + etc/review | less -R -- Need to update submodules? +- Increment version to final. -- Need to regenerate ODB files, CLI documentation? + * Need to update versions/dates for man generation. - Close schema versions, review schema changlog difference from previous release (tag) for any data migration that may be required (@@ Would also need to test this). -- Run bpkg tests, valgrind, remote (publish) +- Need to update submodules? Remember to push first. + +- Need to regenerate ODB files, CLI documentation, in build2-toolchin! + +- Update everything: + + b libbutl/ build2/ libbpkg/ bpkg/ brep/ build2-toolchain-default/ + +- Run tests for each project: + + * b 'test(libbutl/ libbpkg/)' + + * Manually in build2/ + + * Manually in bpkg/; test valgrind, publish, test remote with -v, FreeBSD + tools: + + ./test.sh -v --remote --fetch fetch --fetch-option --no-verify-peer \ + --tar bsdtar --sha256 sha256-freebsd + + * Update hello repository: + + cd hello + for d in hello libhello libprint libformat repository; do \ + git -C $d status; done + ./release -a + + * Update cppget repository (existing packages, not publishing yet): + + cd cppget.org + git -C repository status + ./update repository/1/ + + This might not work in the early stage (backwards-incompatible) + + ./test -c cxx -c config.cxx.loptions=-L/usr/local/lib \ + -c config.cxx.poptions="-I/usr/include/apache2 -I/usr/include/apr-1.0" \ + repository/1/ + + * Test dev integration of brep/ on hello and cppget repos + + First check if Apache2 configuration needs updating (INSTALL-DEV). Then + from build2/ work root: + + # This will have broken links since we are not running it as /pkg/hello. + # + brep/migrate/brep-migrate --recreate + brep/load/brep-load hello/brep-loader-home.conf + sudo /etc/init.d/apache2 restart + + brep/migrate/brep-migrate --recreate + brep/load/brep-load cppget.org/brep-loader-home.conf + sudo /etc/init.d/apache2 restart Procession ========== @@ -48,7 +114,14 @@ Procession etc/stage - Determine the earliest supported toolchain (see requires: in manifests), - update ./test + update etc/test + +- Publish hello repository [@@ Ideally we would want to stage it. Perhaps + on cppget1?] + +- Test Intro steps: + + etc/intro https://build2.org/pkg/1/hello/ - Test @@ -64,23 +137,33 @@ Procession - Test production and save a copy of toolchain in etc1/install/X.Y.Z etc/install -t -i "etc1/install/`cat build2-toolchain/version`" \ - https://download.build2.org/0.1/build2-toolchain-0.1.0.tar.gz \ + https://download.build2.org/0.Y/build2-toolchain-0.2.0.tar.gz \ + https://pkg.cppget.org/1/alpha + +etc/install -t -i "etc1/install/`cat build2-toolchain/version`" \ + https://download.build2.org/0.2/build2-toolchain-0.2.0.tar.gz \ https://pkg.cppget.org/1/alpha - Upgrade brep on cppget.org (using pkg.cppget.org), verify works -- Tag +- Tag (review tag_modules) etc/tag ./push.sh -- Commit and push cppget.org +- Commit and push cppget.org, hello git repositories + +Release +======= +cat `ls -1 *.sha256` Postlude ======== +- Need to regenerate/republish hello/ repository? + - Increment and open schema versions. Maybe not. Maybe we should only do that when there is a model change. -- Increment project versions +- Increment project versions to alpha1 -- cgit v1.1