xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Julien Grall <julien.grall@arm.com>
To: Wei Liu <wei.liu2@citrix.com>,
	Xen-devel <xen-devel@lists.xenproject.org>
Cc: Juergen Gross <jgross@suse.com>,
	Lars Kurth <lars.kurth@citrix.com>,
	Committers <committers@xenproject.org>
Subject: Re: A document for Xen release management, v2
Date: Thu, 27 Jul 2017 11:30:11 +0100	[thread overview]
Message-ID: <ed536738-7f5b-cd42-7c46-09fbb17e1320@arm.com> (raw)
In-Reply-To: <20170725132508.4p5zbmjduiir5jeg@citrix.com>



On 25/07/17 14:25, Wei Liu wrote:
> Hi all

Hi Wei,

Sorry for the late reply.

> ## Script to generate months update emails

I have an updated script on which include jira ticket, version number:

#!/bin/bash
# Use ssmtp for simplicity
# ./status-release.sh | formail -f -s /usr/sbin/ssmtp -bm -t

FILE=`mktemp`
cat << EOF > $FILE

== Hypervisor ==

S: Per-cpu tasklet
O: Konrad Rzeszutek Wilk
E: konrad.wilk@oracle.com
J: XEN-28

=== x86 ===

=== ARM ===

== Completed ==

S:
EOF


AWK_FILE=`mktemp`
cat << EOF > $AWK_FILE
BEGIN { s2_count = 1;score = ""; emails=1; first_time = 1; subject=""}
/== /  {
	if ( subject != "" )  {
		if (score != "")
			print "* ", subject,  "("score")"
        else if (version != "")
            print "* ", subject, "("version")";
        else
            print "* ", subject;
		for (i = 1; i <= s2_count; i++) {
			if (i in s2)
				print " ",s2[i];
		}
		if (bug != "")
			print "  Link: https://bugs.xenproject.org/xen/bug/"bug
		if (jira != "")
            print "  -  "jira
		for (i = 1; i <= count; i++) {
			if (i in o)
				print "  -", o[i]
		}
		if (emails)
			print ""
		first_time = 1;
		subject=""
		email=""
		score=""
		bug=""
        jira=""
        version=""
		count = 1;
		s2_count = 1;
		delete s;
		delete s2;
		delete o;
		delete e;
	}
	print \$0,"\n"
	}
/;/ { };
/S:/	{
	if ( !first_time )  {
		if (score != "")
			print "* ", subject,  "("score")"
        else if (version != "")
            print "* ", subject, "("version")";
		else
			print "* ", subject
		for (i = 1; i <= s2_count; i++) {
			if (i in s2)
				print " ",s2[i];
		}
		if (bug != "")
			print "  Link: https://bug.xenproject.org/xen/bug/"bug
		if (jira != "")
            print "  -  "jira
		for (i = 1; i <= count; i++) {
			if (i in o)
				print "  -", o[i]
		}
		if (emails)
			print ""
	}
	first_time = 0;
	sub(\$1, "");
	sub(/^[ \t]+/, "");
	subject=\$0;
	email=""
	bug=""
    jira=""
	count = 1;
	s2_count = 1;
	delete s;
	delete s2;
	delete o;
	delete e;
	score="";
    version="";
	}
/O:/	{ sub(\$1, ""); o[count++]=\$0; };
/S2:/	{ sub(\$1, ""); s2[s2_count++]=\$0;};
/E:/	{ sub(\$1, ""); sub(/^[ \t]+/, ""); email=\$0; e[emails++]=\$0;};
/P:/	{ sub(\$1, ""); sub(/^[ \t]+/, ""); score=\$0; };
/B:/	{ sub(\$1, ""); sub(/^[ \t]+/, ""); bug=\$0; };
/J:/	{ sub(\$1, ""); sub(/^[ \t]+/, ""); jira=\$0; };
/V:/    { sub(\$1, ""); sub(/^[ \t]+/, ""); version=\$0; };
END	{
	}
// {  }
EOF
AWK_FILE_EMAIL=`mktemp`
cat << EOF > $AWK_FILE_EMAIL
BEGIN { emails=1;}
/E:/	{
	sub(\$1, ""); sub(/^[ \t]+/, "");
	email=\$0;
	for ( i = 1; i <= emails; i++ ) {
		if (i in e) {
			if (e[i] == email) {
				email="";
				break;
			}
		}
	}
	if (email != "")
		e[emails++]=email;
}
END	{
	printf "Bcc: "
	for ( i = 1; i <= emails; i++ )
		if (i in e) {
			if (i == emails - 1)
				printf "<%s>", e[i];
			else
				printf "<%s>,", e[i];
		}
	print ""
	}
// {  }
EOF

echo "From: $RELEASE_MANAGER_NAME <$RELEASE_MANAGER_MAIL>"
echo "To: xen-devel@lists.xenproject.org"
echo "Cc: $RELEASE_MANAGER_MAIL"
cat $FILE | awk -f $AWK_FILE_EMAIL
rm $AWK_FILE_EMAIL

echo "Subject: Xen $RELEASE_VERSION Development Update"
PRE=`mktemp`
cat << EOF > $PRE

This email only tracks big items for xen.git tree. Please reply for items you
woulk like to see in $RELEASE_VERSION so that people have an idea what is going on and
prioritise accordingly.

You're welcome to provide description and use cases of the feature you're
working on.

= Timeline =

We now adopt a fixed cut-off date scheme. We will release twice a
year. The upcoming $RELEASE_VERSION timeline are as followed:

* Last posting date: $RELEASE_CUTOFF
* Hard code freeze: $RELEASE_FREEZE
* RC1: TBD
* Release: $RELEASE_DATE

Note that we don't have freeze exception scheme anymore. All patches
that wish to go into $RELEASE_VERSION must be posted no later than the last posting
date. All patches posted after that date will be automatically queued
into next release.

RCs will be arranged immediately after freeze.

We recently introduced a jira instance to track all the tasks (not only big)
for the project. See: https://xenproject.atlassian.net/projects/XEN/issues.

Most of the tasks tracked by this e-mail also have a corresponding jira task
referred by XEN-N.

I have started to include the version number of series associated to each
feature. Can each owner send an update on the version number if the series
was posted upstream?

= Projects =

EOF

POST=`mktemp`
cat <<EOF > $POST

EOF

# Preamble
cat $PRE
rm $PRE
# Body
cat $FILE | awk -f $AWK_FILE
rm $AWK_FILE
rm $FILE
cat $POST
rm $POST

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

  parent reply	other threads:[~2017-07-27 10:30 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-25 13:25 A document for Xen release management, v2 Wei Liu
2017-07-26 14:31 ` Lars Kurth
2017-07-26 14:51   ` Wei Liu
2017-07-27 10:30 ` Julien Grall [this message]
2017-07-27 11:28   ` Wei Liu

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=ed536738-7f5b-cd42-7c46-09fbb17e1320@arm.com \
    --to=julien.grall@arm.com \
    --cc=committers@xenproject.org \
    --cc=jgross@suse.com \
    --cc=lars.kurth@citrix.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /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;
as well as URLs for NNTP newsgroup(s).