All of lore.kernel.org
 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.