diff mbox series

[RFC,2/2] doc: Add Release procedure

Message ID 20230328111338.766712-3-pvorel@suse.cz
State Superseded
Headers show
Series Wiki: files rename,add 'Release procedure' | expand

Commit Message

Petr Vorel March 28, 2023, 11:13 a.m. UTC
This slightly outdated document exists in LTP wiki, start versioning it
in the original repository. The only unversioned file in the wiki is
now Home.rest.

Signed-off-by: Petr Vorel <pvorel@suse.cz>
---
This should be updated, so I'm ok not to merge it and prepare more up to
date version (although I'd need Cyril's help).

Also (separate effort), there is unversioned script, which could be
added to git. And we could remove Makefile.release, which IMHO is not
used (although it solves dependency: running autotools and distclean;
maybe we could combine both: Add script and add make target which would
run the script after solving the dependencies).

Kind regards,
Petr

 doc/LTP-Release-Procedure.asciidoc | 67 ++++++++++++++++++++++++++++++
 1 file changed, 67 insertions(+)
 create mode 100644 doc/LTP-Release-Procedure.asciidoc

Comments

Li Wang March 28, 2023, 12:42 p.m. UTC | #1
Hi Petr,

Thanks for drafting this, quite useful~

On Tue, Mar 28, 2023 at 7:14 PM Petr Vorel <pvorel@suse.cz> wrote:
>
> This slightly outdated document exists in LTP wiki, start versioning it
> in the original repository. The only unversioned file in the wiki is
> now Home.rest.
>
> Signed-off-by: Petr Vorel <pvorel@suse.cz>
> ---
> This should be updated, so I'm ok not to merge it and prepare more up to
> date version (although I'd need Cyril's help).
>
> Also (separate effort), there is unversioned script, which could be
> added to git. And we could remove Makefile.release, which IMHO is not
> used (although it solves dependency: running autotools and distclean;
> maybe we could combine both: Add script and add make target which would
> run the script after solving the dependencies).
>
> Kind regards,
> Petr
>
>  doc/LTP-Release-Procedure.asciidoc | 67 ++++++++++++++++++++++++++++++
>  1 file changed, 67 insertions(+)
>  create mode 100644 doc/LTP-Release-Procedure.asciidoc
>
> diff --git a/doc/LTP-Release-Procedure.asciidoc b/doc/LTP-Release-Procedure.asciidoc
> new file mode 100644
> index 000000000..cd7682fb8
> --- /dev/null
> +++ b/doc/LTP-Release-Procedure.asciidoc
> @@ -0,0 +1,67 @@
> +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'.

Should we mention the release is happening every 4 months?

> +NOTE: The string YYYYMMDD should be substituted to the current date.

Or, maybe add one more item about the release eve work?
Like what we discussed in:
  - https://lists.linux.it/pipermail/ltp/2022-September/030614.html

For example:

0. Release eve work
---------------------------

[source,sh]
--------------------------------------------------------------------

a. Collecting the (must have) patch list for new release
b. Reviewing and merging the patch list of (a.)
c. Widely testing, explicitly post results
d. Tiny fix according to release testing
e. Writing release note
...
--------------------------------------------------------------------


> +1. Tag the git
> +--------------
> +
> +[source,sh]
> +--------------------------------------------------------------------
> +cd ltp
> +echo YYYYMMDD > VERSION
> +git commit -s -m 'LTP YYYYMMDD' VERSION
> +git tag -a YYYYMMDD -m 'LTP YYYYMMDD'
> +--------------------------------------------------------------------
> +
> +2. Push changes to github
> +-------------------------
> +[source,sh]
> +--------------------------------------------------------------------
> +git push
> +git push --tags
> +--------------------------------------------------------------------
> +
> +3. Prepare tarballs
> +-------------------
> +[source,sh]
> +--------------------------------------------------------------------
> +cd ..
> +git clone ltp ltp-full-YYYYMMDD
> +cd ltp-full-YYYYMMDD
> +# Update mce-inject submodule
> +git submodule init
> +git submodule update
> +# Generate configure script
> +make autotools
> +# Prepare the archives
> +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
> +--------------------------------------------------------------------
> +
> +4. Upload the tarballs 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 md5 and sha-1 sums for the tarballs 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:
> +
> +* ltp at lists.linux.it
> +* linux-kernel at vger.kernel.org
> +* libc-alpha at sourceware.org
> +
> +CCed to:
> +
> +* lwn at lwn.net
> +* akpm at linux-foundation.org
> +* torvalds at linux-foundation.org.
> \ No newline at end of file
> --
> 2.40.0
>


--
Regards,
Li Wang
Petr Vorel March 28, 2023, 1:04 p.m. UTC | #2
Hi Li,

> > +++ b/doc/LTP-Release-Procedure.asciidoc
> > @@ -0,0 +1,67 @@
> > +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'.

> Should we mention the release is happening every 4 months?

> > +NOTE: The string YYYYMMDD should be substituted to the current date.

> Or, maybe add one more item about the release eve work?
> Like what we discussed in:
>   - https://lists.linux.it/pipermail/ltp/2022-September/030614.html

> For example:

> 0. Release eve work
> ---------------------------

> [source,sh]
> --------------------------------------------------------------------

> a. Collecting the (must have) patch list for new release
> b. Reviewing and merging the patch list of (a.)
> c. Widely testing, explicitly post results
> d. Tiny fix according to release testing
> e. Writing release note
> ...
> --------------------------------------------------------------------

Very good point, I agree with both. Thanks!

Kind regards,
Petr

> > +1. Tag the git
> > +--------------
...
diff mbox series

Patch

diff --git a/doc/LTP-Release-Procedure.asciidoc b/doc/LTP-Release-Procedure.asciidoc
new file mode 100644
index 000000000..cd7682fb8
--- /dev/null
+++ b/doc/LTP-Release-Procedure.asciidoc
@@ -0,0 +1,67 @@ 
+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'.
+
+NOTE: The string YYYYMMDD should be substituted to the current date.
+
+1. Tag the git
+--------------
+
+[source,sh]
+--------------------------------------------------------------------
+cd ltp
+echo YYYYMMDD > VERSION
+git commit -s -m 'LTP YYYYMMDD' VERSION
+git tag -a YYYYMMDD -m 'LTP YYYYMMDD'
+--------------------------------------------------------------------
+
+2. Push changes to github
+-------------------------
+[source,sh]
+--------------------------------------------------------------------
+git push
+git push --tags
+--------------------------------------------------------------------
+
+3. Prepare tarballs
+-------------------
+[source,sh]
+--------------------------------------------------------------------
+cd ..
+git clone ltp ltp-full-YYYYMMDD
+cd ltp-full-YYYYMMDD
+# Update mce-inject submodule
+git submodule init
+git submodule update
+# Generate configure script
+make autotools
+# Prepare the archives
+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
+--------------------------------------------------------------------
+
+4. Upload the tarballs 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 md5 and sha-1 sums for the tarballs 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:
+
+* ltp at lists.linux.it
+* linux-kernel at vger.kernel.org
+* libc-alpha at sourceware.org
+
+CCed to:
+
+* lwn at lwn.net
+* akpm at linux-foundation.org
+* torvalds at linux-foundation.org.
\ No newline at end of file