[openssl/tools] 9317ae: Import openssl/openssl's dev/release.sh and accomp...

Richard Levitte noreply at github.com
Tue May 16 04:03:45 UTC 2023


  Branch: refs/heads/master
  Home:   https://github.com/openssl/tools
  Commit: 9317aee3f86c0fa9ff15b8abcd97ee363b7b8a5e
      https://github.com/openssl/tools/commit/9317aee3f86c0fa9ff15b8abcd97ee363b7b8a5e
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    A release-tools/release-aux/README.md
    A release-tools/release-aux/fix-title.pl
    A release-tools/release-aux/fixup-CHANGES.md-postrelease.pl
    A release-tools/release-aux/fixup-CHANGES.md-release.pl
    A release-tools/release-aux/fixup-NEWS.md-postrelease.pl
    A release-tools/release-aux/fixup-NEWS.md-release.pl
    A release-tools/release-aux/openssl-announce-pre-release.tmpl
    A release-tools/release-aux/openssl-announce-release.tmpl
    A release-tools/release-aux/release-state-fn.sh
    A release-tools/release-aux/release-version-fn.sh
    A release-tools/release.sh

  Log Message:
  -----------
  Import openssl/openssl's dev/release.sh and accompanying files

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: 032ff96434252242765191d57f4705c02999731e
      https://github.com/openssl/tools/commit/032ff96434252242765191d57f4705c02999731e
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    M release-tools/release-aux/README.md
    M release-tools/release-aux/release-state-fn.sh

  Log Message:
  -----------
  release-tools/release-aux/ documentation updates and small fixes

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: ccfce28770a23203315575cdc335bcf1a18368a5
      https://github.com/openssl/tools/commit/ccfce28770a23203315575cdc335bcf1a18368a5
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    M release-tools/release-aux/README.md
    M release-tools/release-aux/release-state-fn.sh
    M release-tools/release-aux/release-version-fn.sh
    A release-tools/release-aux/test_suite.sh
    M release-tools/release.sh

  Log Message:
  -----------
  Adapt release-tools/release-aux/release-version-fn.sh for pre-3.0 versions

This also adds a test script release-tools/release-aux/test_suite.sh, to
check that all these functions behave as expected.

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: 46a367d4c03abffa0fadef508cb41e3f342723a3
      https://github.com/openssl/tools/commit/46a367d4c03abffa0fadef508cb41e3f342723a3
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    M release-tools/release.sh

  Log Message:
  -----------
  Adapt release-tools/release.sh for a life outside of the OpenSSL work tree

This makes use of the VERSION_FILE variable that is delivered by
release-tools/release-aux/release-version-fn.sh

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: 396d94fb39bc9da55c2e51e7c9e4ef8fd41b48e5
      https://github.com/openssl/tools/commit/396d94fb39bc9da55c2e51e7c9e4ef8fd41b48e5
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    M release-tools/release-aux/release-version-fn.sh
    M release-tools/release-aux/test_suite.sh
    M release-tools/release.sh

  Log Message:
  -----------
  release-tools/release.sh et al: introduce FULL_VERSION and use it

This is a convenience variable, combined from $VERSION, $_PRE_RELEASE_TAG
and $_BUILD_METADATA.

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: 25d343a424573aff08c6a50e96b1bcb442a140cb
      https://github.com/openssl/tools/commit/25d343a424573aff08c6a50e96b1bcb442a140cb
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    A release-tools/release-aux/fixup-CHANGES-postrelease.pl
    A release-tools/release-aux/fixup-CHANGES-release.pl
    A release-tools/release-aux/fixup-NEWS-postrelease.pl
    A release-tools/release-aux/fixup-NEWS-release.pl
    A release-tools/release-aux/fixup-README-postrelease.pl
    A release-tools/release-aux/fixup-README-release.pl
    A release-tools/release-aux/fixup-openssl.spec-postrelease.pl
    A release-tools/release-aux/fixup-openssl.spec-release.pl
    M release-tools/release-aux/release-version-fn.sh
    M release-tools/release-aux/test_suite.sh
    M release-tools/release.sh

  Log Message:
  -----------
  release-tools/release.sh et al: introduce RELEASE_FILES and use it

This is a variable that holds a list of files other than the version file,
that need to be touched up with release information.  This variable is set
by the version functions, as the files are varied, depending on the versio
scheme and series.

We also add the fixup files for all possible release files.

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: 6bbdee09f51d628ced7eff15b52cff1b1475b67e
      https://github.com/openssl/tools/commit/6bbdee09f51d628ced7eff15b52cff1b1475b67e
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    M HOWTO-make-a-release.md
    R release-tools/MKRELEASE.md
    R release-tools/mkrelease.pl
    R release-tools/release-check.pl
    R release-tools/release-date.pl
    R release-tools/release-git.pl
    R release-tools/release-update.pl
    R release-tools/release-version.pl

  Log Message:
  -----------
  Adapt documentation for the new release script, and clean up

release-tools/release.sh and associated files should now be a good enough
replacement of release-tools/mkrelease.pl and associated files.
Therefore, HOWTO-make-a-release.md is adapted to only refer to the new
script, and release-tools/mkrelease.pl and associated files are removed.

Someone might want to ask, why shell scripts rather than perl?
The reasoning is that the OpenSSL team does most if not all its development
on Unix-like systems, and the release script is essentially a wrapper around
diverse shell commands anyway, it therefore seems sensible to use the shell
language.

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: e37897305690cb325b287854c679373748b9a665
      https://github.com/openssl/tools/commit/e37897305690cb325b287854c679373748b9a665
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    A release-tools/release-aux/upload-fn.sh
    M release-tools/release.sh

  Log Message:
  -----------
  Add an option to specify the upload address

Both local directory and several forms of SCP/SFTP addresses are supported.
For the SCP/SFTP form, it is always translated to be usable with SFTP.

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: d4e73143343f65635eb346bb13611423167db02e
      https://github.com/openssl/tools/commit/d4e73143343f65635eb346bb13611423167db02e
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    M release-tools/release.sh

  Log Message:
  -----------
  Adapt release-tools/release.sh for pre-3.0 versions

There are small differences, such as some make targets not existing,
the method for creating tarballs being different in 1.0.2, ...

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: a67370165dfd4adb6b8d5527cb32fe2ed768a01d
      https://github.com/openssl/tools/commit/a67370165dfd4adb6b8d5527cb32fe2ed768a01d
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    M release-tools/release.sh

  Log Message:
  -----------
  When checking for make update changes, only check tracked files

Sometimes, 'make update' leaves behind files that aren't tracked, and this
shouldn't cause trying to add an extra commit.  However, we only checked
with 'git status --porcelain', which does list untracked files.  This can
cause release failure, so we add a few more options so git status doesn't
report on these files that should be ignored.

This also includes a documenting comment for a piece of the scripts that's
potentially confusing without the explanation.

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: bf2dcecc58573d2c9f14699aed2548d43f48d47e
      https://github.com/openssl/tools/commit/bf2dcecc58573d2c9f14699aed2548d43f48d47e
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    M release-tools/release.sh

  Log Message:
  -----------
  release.sh: Add --quiet and --porcelain

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: e539db151d36445072d47619af0aa09f9a8a4bb7
      https://github.com/openssl/tools/commit/e539db151d36445072d47619af0aa09f9a8a4bb7
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    M release-tools/release.sh

  Log Message:
  -----------
  release.sh: Also present the uploaded/to be uploaded files with --porcelain

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: f3c34e6ea555acecb82e4ee34a4911e4773ddf10
      https://github.com/openssl/tools/commit/f3c34e6ea555acecb82e4ee34a4911e4773ddf10
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    A release-tools/release-aux/string-fn.sh
    M release-tools/release.sh

  Log Message:
  -----------
  release.sh: Add --clean-worktree, --branch_fmt and --tag-fmt

This needed quite a bit of rearrangement to make sense.

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: 15b8298e594f5677fb91821f4332c72e07bf0d2f
      https://github.com/openssl/tools/commit/15b8298e594f5677fb91821f4332c72e07bf0d2f
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    R release-tools/release.sh
    A release-tools/stage-release.sh

  Log Message:
  -----------
  Clarify that the release script only stages the release files

This renames release-tools/release.sh to release-tools/stage-release.sh,
and modifies the option --upload-address to --staging-address.

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: 73354762e8bc5e31a4c00cf1f735c1b81229ef0a
      https://github.com/openssl/tools/commit/73354762e8bc5e31a4c00cf1f735c1b81229ef0a
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    M release-tools/stage-release.sh

  Log Message:
  -----------
  release-tools/stage-release.sh: Add a metadata file among the release files

This file contains shell variable assignments with diverse data that may
serve other release scripts.

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: e860bbd15081381a1b8ef91ba6df669cd78de459
      https://github.com/openssl/tools/commit/e860bbd15081381a1b8ef91ba6df669cd78de459
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    M release-tools/stage-release.sh

  Log Message:
  -----------
  release-tools/stage-release.sh: Add --unsigned

This allows staging to produce unsigned files, and to add an annotated
but unsigned tag.  The signing can be done later, when promoting a staged
release to an actual release.

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: 1fce24a09743e599225a96dcfdb4b212f2a37714
      https://github.com/openssl/tools/commit/1fce24a09743e599225a96dcfdb4b212f2a37714
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    M release-tools/stage-release.sh

  Log Message:
  -----------
  release-tools/stage-release.sh: Use 'type -p' and realpath to find $0

This allows the release-aux directory to be found, even when a symbolic
link to this script is used.

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


  Commit: b99e62ffc84d6a8b40d3b03a38d78047287cc2df
      https://github.com/openssl/tools/commit/b99e62ffc84d6a8b40d3b03a38d78047287cc2df
  Author: Richard Levitte <levitte at openssl.org>
  Date:   2023-05-16 (Tue, 16 May 2023)

  Changed paths:
    M release-tools/stage-release.sh

  Log Message:
  -----------
  Include the original HEAD in the porcelain output

Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/tools/pull/140)


Compare: https://github.com/openssl/tools/compare/85972a475ef9...b99e62ffc84d


More information about the openssl-commits mailing list