public inbox for ltp@lists.linux.it
 help / color / mirror / Atom feed
From: Avinesh Kumar <akumar@suse.de>
To: Petr Vorel <pvorel@suse.cz>
Cc: Richard Palethorpe <rpalethorpe@suse.com>, ltp@lists.linux.it
Subject: Re: [LTP] [PATCH v2 5/6] doc: Update release procedure
Date: Fri, 29 Sep 2023 11:00:42 +0530	[thread overview]
Message-ID: <12123900.MKNY5bReCh@localhost> (raw)
In-Reply-To: <20230927202121.300325-6-pvorel@suse.cz>

Hi Petr,
Thank you for these scripts and documentation, makes the release process very 
clear.
I didn't try running the scripts but looks fine.
Few minor spelling and grammatical nits below:

Reviewed-by: Avinesh Kumar <akumar@suse.de>
for all the patches.

On Thursday, September 28, 2023 1:51:20 AM IST Petr Vorel wrote:
> * Completely rewrite Release preparation (Cyril).
> * Update command examples.
> * Document helper scripts.
> * Update link to the release announcement.
> 
> Co-developed-by: Cyril Hrubis <chrubis@suse.cz>
> Signed-off-by: Petr Vorel <pvorel@suse.cz>
> ---
> "LTP Release Procedure" wiki page is (temporarily) visible on:
> https://github.com/pevik/ltp/wiki/TEST
> 
>  doc/LTP-Release-Procedure.asciidoc | 160 +++++++++++++++++++++++++----
>  1 file changed, 138 insertions(+), 22 deletions(-)
> 
> diff --git a/doc/LTP-Release-Procedure.asciidoc
> b/doc/LTP-Release-Procedure.asciidoc index cd7682fb8..101a1b8cb 100644
> --- a/doc/LTP-Release-Procedure.asciidoc
> +++ b/doc/LTP-Release-Procedure.asciidoc
> @@ -1,59 +1,175 @@
>  LTP Release Procedure
>  =====================
> 
> -This page contains quick summary of what needs to be done to do a LTP
> release. It's expected that LTP git is frozen and git HEAD was properly
> tested and that LTP git tree is cloned to a directory named 'ltp'. +1.
> Release preparations
> +-----------------------
> +
> +The release procedure generally takes a few weeks. In the first week or two
> +patches that should go into the release are reviewed and possibly merged.
s/two patches/two, patches/
> These +patches are either fixes or patches pointed out by the community. +
> +Patch review, when finished, is followed by a git freeze, which is a period
> +where only fixes are pushed to the git. During that period community is
> +expected to run a LTP pre-release tests, reports problems, and/or send
> fixes to +the mailing list. In this period we are especially making sure
> that there are +no regressions in the test results on a wide range of
> distributions and +architectures.
> +
> +Once the stabilization period has ended the time has finally come to
> proceed +with the release.
> 
>  NOTE: The string YYYYMMDD should be substituted to the current date.
probably this note should be moved down in the
"3. Tag the git and push changes to github" section.
> 
> -1. Tag the git
> ---------------
> +2. Prepare the release notes
> +----------------------------
> +
> +Part of the preparation is also to write the release notes, which are then
> add +to GitHub release and also send as announcement to various mailing
s/add to Github/added to the GitHub
s/also send/also sent
> list (see below). +
s/list/lists
> +Have a look at https://lore.kernel.org/ltp/ZGNiQ1sMGvPU_ETp@yuki/ to get
> the +idea how it should look.
> +
> +3. Tag the git and push changes to github
> +-----------------------------------------
> 
>  [source,sh]
>  --------------------------------------------------------------------
>  cd ltp
>  echo YYYYMMDD > VERSION
> -git commit -s -m 'LTP YYYYMMDD' VERSION
> -git tag -a YYYYMMDD -m 'LTP YYYYMMDD'
> +git commit -S -s -m 'LTP YYYYMMDD' VERSION
> +git tag -s -a YYYYMMDD -m 'LTP YYYYMMDD'
> +git push origin master:master
> +git push origin YYYYMMDD
>  --------------------------------------------------------------------
> 
> -2. Push changes to github
> --------------------------
> +NOTE: You can use './tools/tag-release.sh' script to have the above
> automated. +      It allows you to verify the tag before pushing it and
> does other checks. +
>  [source,sh]
>  --------------------------------------------------------------------
> -git push
> -git push --tags
> +$ ./tools/tag-release.sh
> +===== git push =====
> +echo "new tag: 'YYYYMMDD', previous tag: '20230127'"
> +tag YYYYMMDD
> +Tagger: Person-who-released LTP <foo@example.com>
> +Date:   Tue May 16 07:08:27 2023 +0200
> +
> +LTP YYYYMMDD
> +-----BEGIN PGP SIGNATURE-----
> +
> +iQJDBAABCAAtFiEEIBb+pIWLHDazLoM6wN7C7nLzOl8FAmRjD8sPHHB2b3JlbEBz
> +...
> +-----END PGP SIGNATURE-----
> +
> +commit 3ebc2dfa85c2445bb68d8c0d66e33c4da1e1b3a7
> +gpg: Signature made Tue 16 May 2023 07:08:08 AM CEST
> +gpg:                using RSA key 2016FEA4858B1C36B32E833AC0DEC2EE72F33A5F
> +...
> +Primary key fingerprint: 2016 FEA4 858B 1C36 B32E  833A C0DE C2EE 72F3 3A5F
> +Author: Person-who-released LTP <foo@example.com>
> +Date:   Tue May 16 07:08:08 2023 +0200
> +
> +    LTP YYYYMMDD
> +
> +    Signed-off-by: Person-who-released LTP <foo@example.com>
> +
> +diff --git a/VERSION b/VERSION
> +index af4c41fec..ae488c0e7 100644
> +--- a/VERSION
> ++++ b/VERSION
> +@@ -1 +1 @@
> +-20230127
> ++YYYYMMDD
> +
> +Please check tag and signature. Proceed? [N/y]: y
> +Pushing changes to upstream git. Proceed? [N/y]: y
> +Enumerating objects: 1, done.
> +Counting objects: 100% (1/1), done.
> +Writing objects: 100% (1/1), 811 bytes | 811.00 KiB/s, done.
> +Total 1 (delta 0), reused 1 (delta 0), pack-reused 0
> +To github.com:linux-test-project/ltp.git
> + * [new tag]             YYYYMMDD -> YYYYMMDD
>  --------------------------------------------------------------------
> 
> -3. Prepare tarballs
> --------------------
> +4. Prepare tarballs and metadata documentation
> +----------------------------------------------
> +
>  [source,sh]
>  --------------------------------------------------------------------
> +# clone already clonned git repository to new folder
>  cd ..
>  git clone ltp ltp-full-YYYYMMDD
>  cd ltp-full-YYYYMMDD
> -# Update mce-inject submodule
> -git submodule init
> -git submodule update
> +
> +# update all submodules
> +git submodule update --init
> +
>  # Generate configure script
>  make autotools
> -# Prepare the archives
> +
> +# Generate tarballs
>  cd ..
>  tar -cjf ltp-full-YYYYMMDD.tar.bz2 ltp-full-YYYYMMDD --exclude .git
>  tar -cJf ltp-full-YYYYMMDD.tar.xz ltp-full-YYYYMMDD --exclude .git
> +
> +# Generate checksums
> +md5 ltp-full-YYYYMMDD.tar.xz > ltp-full-YYYYMMDD.tar.xz.md5
> +sha1 ltp-full-YYYYMMDD.tar.xz > ltp-full-YYYYMMDD.tar.xz.sha1
> +sha256sum ltp-full-YYYYMMDD.tar.xz > ltp-full-YYYYMMDD.tar.xz.sha256
> +
> +# Generate metadata documentation
> +./configure --with-metadata-generator=asciidoctor
> +make -C metadata
> +cp -v docparse/metadata.html ../metadata.YYYYMMDD.html
>  --------------------------------------------------------------------
> 
> -4. Upload the tarballs to GitHub
> ---------------------------------
> +NOTE: You can use './tools/create-tarballs-metadata.sh' script to have the
> +	  above automated. All generated files are placed in ltp-release-
YYYYMMDD
> +	  directory.
> 
> -Click on 'releases' then switch to 'tags' then click on 'Add release notes'
> there should be 'Attach binaries ...' link at the bottom of the page.
> +[source,sh]
> +--------------------------------------------------------------------
> +$ ./tools/create-tarballs-metadata.sh
> +===== git clone =====
> +Cloning into 'ltp-full-YYYYMMDD'...
> +done.
> +===== Update submodules =====
> +Submodule 'tools/kirk' (https://github.com/linux-test-project/kirk.git)
> registered for path 'tools/kirk' +Submodule 'tools/ltx/ltx-src'
> (https://github.com/linux-test-project/ltx.git) registered for path
> 'tools/ltx/ltx-src' +Submodule 'tools/sparse/sparse-src'
> (git://git.kernel.org/pub/scm/devel/sparse/sparse.git) registered for path
> 'tools/sparse/sparse-src' +...
> +===== Generate configure script =====
> +sed -n '1{s:LTP-:m4_define([LTP_VERSION],[:;s:$:]):;p;q}' VERSION >
> m4/ltp-version.m4 +aclocal -I m4
> +autoconf
> +autoheader
> +automake -c -a
> +configure.ac:21: installing './compile'
> +...
> +make[1]: Leaving directory
> '/home/foo/ltp-release-YYYYMMDD/ltp-full-YYYYMMDD/testcases/open_posix_test
> suite' +===== Generate tarballs =====
> +===== Generate checksums =====
> +===== Generate metadata documentation =====
> +checking for a BSD-compatible install... /usr/bin/install -c
> +...
> +asciidoctor -d book metadata.txt -b xhtml
> +make[1]: Leaving directory
> '/home/foo/ltp-release-YYYYMMDD/ltp-full-YYYYMMDD/docparse' +make: Leaving
> directory '/home/foo/ltp-release-YYYYMMDD/ltp-full-YYYYMMDD/metadata'
> +'docparse/metadata.html' ->
> '/home/foo/ltp-release-YYYYMMDD/metadata.YYYYMMDD.html' +Generated files
> are in '/home/foo/ltp-release-YYYYMMDD', upload them to github
> +--------------------------------------------------------------------
> 
> -Don't forget to upload md5 and sha-1 sums for the tarballs as well.
> +5. Upload the generated files to GitHub
> +---------------------------------------
> +
> +Click on 'releases' then switch to 'tags', then click on 'Add release
> notes'. +There should be 'Attach binaries ...' link at the bottom of the
> page. +
> +Don't forget to upload checksums for the tarballs and metadata
> documentation as well.
> 
>  5. Send release announcement
>  ----------------------------
> 
> -Have a look at http://sourceforge.net/p/ltp/mailman/message/34429656/ to
> get the idea how it should look. -
>  The announcement is send to:
s/send/sent
> 
>  * ltp at lists.linux.it
> @@ -64,4 +180,4 @@ CCed to:
> 
>  * lwn at lwn.net
>  * akpm at linux-foundation.org
> -* torvalds at linux-foundation.org.
> \ No newline at end of file
> +* torvalds at linux-foundation.org.


--
Regards,
Avinesh






-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

  reply	other threads:[~2023-09-29  5:31 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-27 20:21 [LTP] [PATCH v2 0/6] Release scripts and docs Petr Vorel
2023-09-27 20:21 ` [LTP] [PATCH v2 1/6] tools: Add a script for tagging the release Petr Vorel
2023-09-27 20:21 ` [LTP] [PATCH v2 2/6] tools: Add script for creating tarballs and metadata Petr Vorel
2023-09-27 20:21 ` [LTP] [PATCH v2 3/6] doc: Rename files to names from ltp.wiki.git Petr Vorel
2023-09-27 20:21 ` [LTP] [PATCH v2 4/6] doc: Add Release procedure Petr Vorel
2023-09-27 20:21 ` [LTP] [PATCH v2 5/6] doc: Update release procedure Petr Vorel
2023-09-29  5:30   ` Avinesh Kumar [this message]
2023-09-29  7:06     ` Petr Vorel
2023-09-27 20:21 ` [LTP] [PATCH v2 6/6] Remove Makefile.release Petr Vorel
2023-09-28  7:56 ` [LTP] [PATCH v2 0/6] Release scripts and docs Li Wang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=12123900.MKNY5bReCh@localhost \
    --to=akumar@suse.de \
    --cc=ltp@lists.linux.it \
    --cc=pvorel@suse.cz \
    --cc=rpalethorpe@suse.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox