Age | Commit message (Collapse) | Author | Files | Lines |
|
It's useful to be able to use release.sh to release custom packages that live on
people.freedesktop.org. I use this for libvdpau since there's no official
project repository for it yet.
Add code to check `git config --get xorg.section` to determine the section. If
it's "custom", use xorg.user and xorg.project to determine where to put the
resulting packages.
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
Hi,
Tarballs are now signed correctly, witness the recent evemu release. It would
be nice if the announcement email mentioned the availability of these
signatures.
Signed-off-by: Stephen Kitt <skitt@debian.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
gpg-sign the git tag and the generated tarballs, and upload the signatures
along with the tarballs. Any existing tarball signatures are removed
beforehand.
Signed-off-by: Stephen Kitt <skitt@debian.org>
Modified by Alan Coopersmith to handle gpg vs. gpg2 paths for Solaris.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Trying to meet a hard-to-test standard of /bin/sh is unnecessary for a script
that's only run by maintainers. For now, simply force bash but don't change
any of the script, over time we can update this to support true bashism like
[[ ]].
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
|
|
Adds support for wayland, weston and libinput. Two notable changes aside from
adding the various server/mailing list differences:
- all three modules use a m4 define instead of a plain version string in
configure.ac.
- the tag name for wayland and weston is a mere version number
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
This enables us to query the section earlier in the process, specifically
before assigning the tag name which comes in the next commit.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
No functional changes intended
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
This has no effect at this point as the tag name and the tar name are always
identical. Prep work for wayland repository support.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
|
|
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
Both tar.gz and tar.bz2 are optional now, so projects can choose to release
only one tarball instead of both. It also prepares the work for modules
using tar.xz in the future (requires additional patch).
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
git-send-email ignores CC headers, so using that to send announcements generated
by release.sh fails to actually carbon copy the Cc'd list. Use Cc instead.
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
|
|
Prompted by libdrm 2.4.41 going out without having been distchecked.
There's really no good reason to skip this step. --dist now requests
the old behaviour.
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
|
|
|
|
|
|
|
|
|
Need to specify name@, e.g.:
--user bob@
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
|
|
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
|
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
|
options
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
Features:
- Visit the supplied paths to git modules
- Accepts a list of paths in the format produced by build.sh -L
- Tag and version names picked-up from Makefile
- Determine the web section from the module git URL
- It only releases tarballs it has created from the git module
- Timely feedback, extensive error checking and final report
- Leave module untouched if already released
- Preview what will happen with --dry-run
- Generate the announce e-mail
- Update the jhbuild moduleset
Caveats:
- Autotagging is mandatory to implement project policies
and gracefully ignores additional tags.
- Cmd line interface not backward compatible mainly for autotagging
- Intel video driver and xcb will use conforming tags from now on
- Local changes in the module are not tolerated
- For jhbuild moduleset, readlink has been removed as it is not portable
Alternative solutions are considered.
Usage examples:
util/modular/release.sh app/xdm lib/libX11-1.1.3 xserver
In this example, libX11-1.1.3 would be at branch 1.1.3 and could be released
in the same batch run with libX11 master.
Design
-------
The development process ends with a module whose last commit is a
version bump in the fdo repository. All testing is assumed to have been done,
including distcheck.
The user is not asked to do anything with git tags. No harm done if user tags
the module with the correct tag name. Any non conforming tag will be ignored.
Modules can have multiple tags, only the conforming one will be used to
generate and release tarballs.
The srcipt runs 'make dist' to create the tarball. We don't have to prompt
the user for the tar name, the version number or the web section name.
The web section is determined from the git module URL. Special cases like
mesa or xcb are handled.
Interface
---------
Where "path" is a relative path to a git module, including '.'.
Options:
--distcheck Use 'distcheck' rather than 'dist' to create tarballs
--dry-run Does everything except tagging and uploading tarballs
--force Force overwriting an existing release
--help Display this help and exit successfully
--modfile <file> Release the git modules specified in <file>
--moduleset <file> The jhbuild moduleset full pathname to be updated
--no-quit Do not quit after error; just print error message
--user <name> Username of your fdo account if not configured in ssh
Environment variables defined by the "make" program and used by release.sh:
MAKE The name of the make command [make]
MAKEFLAGS: Options to pass to all \$(MAKE) invocations
Usage Scenarios
----------------
Due to a change to the m4 macro, all font packages need to released.
util/modular/build.sh -L | grep font/ > myList.txt
util/modular/release.sh --modfile myList.txt
A developer is asking a buddy to relase a few protocols and libraries.
He sends the list in an e-mail. Once all is done on disk:
edit myList.txt (or save from e-mail)
util/modular/release.sh --no-quit --modfile myList.txt
A single app needs to be released for an important bug fix
cd app/xdm
../../util/modular/release.sh .
Supports libdrm and xkeybboard-config:
util/modular/release.sh xkeyboard-config mesa/drm
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Tested-by: Jeremy Huddleston <jeremyhu@apple.com>
Tested-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
|
|
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
|
|
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
|
|
All three arguments are required. Otherwise git-rev-list will abort the
script silently.
Signed-off-by: Dirk Wallenstein <halsmit@t-online.de>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
Signed-off-by: Julien Cristau <jcristau@debian.org>
|
|
To find the auxiliary script that updates a moduleset, consider the case
where the main script is accessed through a symlink, and resolve that
first.
Signed-off-by: Dirk Wallenstein <halsmit@t-online.de>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
|
|
In order to keep the katamari moduleset up to date with current tarball
information, have release.sh update the file when new releases are made.
This is enabled by passing a module file with --moduleset.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
Print out a more meaningful message than "incorrect parameters" if the
tarballs weren't found.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
xkeyoard-config uses separate maillist and stored into its own
release subdirectory
Signed-off-by: Sergey V. Udaltsov <svu@gnome.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
git status in git-1.7 always returns 0, regardless of the number of
uncommitted changes [1]. This breaks the current script. Replace with a git
diff --quiet HEAD instead, that's sufficient for our use-case here.
[1] commit 9e4b7ab6525 "git status: not "commit --dry-run" anymore"
in the git source tree
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Tested-by: Gaetan Nadon <memsize@videotron.ca>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
Signed-off-by: Julien Cristau <jcristau@debian.org>
|
|
I sure wish it was at lists.freedesktop.org...
|
|
Don't just use the specified remote for the git push, also check on the
remote for the tag names, etc.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
|
|
|
|
It will still default to `whoami` if it's not configured in .ssh/config
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Running 'git push origin' at the end of the script will push changes on the
master branch - even if the release is supposed to be a stable branch
release. This may result in not-yet-ready changes being pushed to master.
This patch removes this default git push policy and replaces it with a
warning message if the object belonging to the tag is not on the remote yet.
Requirements: the tag must be on the currently checked-out branch, it is not
possible to cut a branch release from master anymore.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
If 'git diff' or 'git status' detect local changes, abort.
This check can be skipped with the --ignore-local-changes option.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
This fixes releases from module-only tags.
|
|
We're sick of typing xf86-video-intel-whatever in the Intel driver, but the
script doesn't like our tags. This change nearly fixes that, but errors out
and hasn't been tested for module-version tags. Perhaps someone else could
clean it up.
|
|
|
|
~/modular/release.sh libdrm libdrm-2.4.1 libdrm-2.4.3
|
|
|
|
|
|
|