Project

General

Profile

Actions

Feature #1861

closed

automatize the release process

Added by laforge over 7 years ago. Updated almost 6 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Target version:
-
Start date:
11/28/2016
Due date:
% Done:

100%

Spec Reference:

Description

This is an idea by max: have something like a "make release" that performs all required steps, like
  • updating the version number in autoconf
  • tagging the release in the git repo
  • preparing a release change-log (for human filtering/editing)
  • signing the tag (git tag -s)
  • signign the release (pgp)
  • uploading it?
  • posting a news item on osmoocm.org?

Checklist

  • make sure all projects use semver
  • make test library release
  • make test non-library release
  • update wiki with new release procedure
  • make sure all projects use release helper
  • improve robustness to handle mixed projects
  • make sure all libraries have LIBVERSION

Related issues

Related to Cellular Network Infrastructure - Feature #2531: tweak TODO-RELEASE and LIBVERSION comments to match latest osmo-mgw editsClosedpespin10/04/2017

Actions
Related to Cellular Network Infrastructure - Bug #2644: release scripts use "gbp dch" for applications, but not for librariesResolvedpespin11/15/2017

Actions
Related to Cellular Network Infrastructure - Bug #2643: release scripts shouldn't tag/sign at the same time as "make release"Closedlaforge11/15/2017

Actions
Actions #1

Updated by msuraev over 7 years ago

  • Status changed from New to Stalled
  • % Done changed from 0 to 10

Gerrit #1427 is an example of some manual steps necessary for release which have to be automated in future.

Actions #3

Updated by laforge over 7 years ago

Actions #4

Updated by msuraev over 6 years ago

  • Status changed from Stalled to In Progress
  • % Done changed from 10 to 20

Gerrit 3130 with generic implementation has been sent for review. Usage examples were sent in 3131 (libosmo-abis) and 3143 (osmo-bts).

Actions #5

Updated by msuraev over 6 years ago

  • Status changed from In Progress to Stalled
Actions #6

Updated by msuraev over 6 years ago

  • Checklist item make sure all projects use semver added
  • Checklist item make test library release added
  • Checklist item make test non-library release added
  • % Done changed from 20 to 30

All the patches were merged so far. Next - see checklist.

Actions #7

Updated by msuraev over 6 years ago

  • Checklist item update wiki with new release procedure added

Test library release submitted as gerrit 3595, 3595; non-library release is submitted as 3598.
Minor fix for release helper sent as gerrit 3597.

Actions #8

Updated by msuraev over 6 years ago

  • Checklist item make test library release set to Done
  • Checklist item make test non-library release set to Done
Actions #9

Updated by msuraev over 6 years ago

  • % Done changed from 30 to 70

Test libosmo-abis 0.4.0 release and test osmo-bts 0.6.0 release were pushed.

Actions #10

Updated by msuraev over 6 years ago

  • Checklist item update wiki with new release procedure set to Done
Actions #11

Updated by msuraev over 6 years ago

  • Checklist item make sure all projects use release helper added
Actions #12

Updated by msuraev over 6 years ago

Gerrit 3707-3710 and 3712-3719 were sent for review with the patches adding support for 'make release' command to all remaining projects.

Actions #13

Updated by msuraev over 6 years ago

  • Checklist item make sure all projects use semver set to Done
  • % Done changed from 70 to 80

Everything except for 3710, 3713, 3716, 3717 was merged. Pending are osmo-* (after MSC-split) and osmo-trx.

Actions #14

Updated by msuraev over 6 years ago

  • Checklist item improve robustness to handle mixed projects added
  • Checklist item make sure all libraries have LIBVERSION added
  • Checklist item make sure all projects use release helper set to Done

All remaining patches which add support for release helper were merged. Gerrit 3817 was sent for review with minor improvements.

Based on the feedback in ML, remaining items are:
  • improve robustness to handle repos which contain both some library and non-library code
  • clarify wiki docs
Actions #15

Updated by neels over 6 years ago

  • Related to Feature #2531: tweak TODO-RELEASE and LIBVERSION comments to match latest osmo-mgw edits added
Actions #16

Updated by msuraev over 6 years ago

  • Checklist item make sure all libraries have LIBVERSION set to Done
Actions #17

Updated by msuraev about 6 years ago

  • Related to Bug #2644: release scripts use "gbp dch" for applications, but not for libraries added
Actions #18

Updated by msuraev about 6 years ago

  • Related to Bug #2643: release scripts shouldn't tag/sign at the same time as "make release" added
Actions #19

Updated by laforge about 6 years ago

  • Assignee changed from msuraev to 4368
Actions #20

Updated by laforge almost 6 years ago

  • Assignee changed from 4368 to pespin
Actions #21

Updated by pespin almost 6 years ago

  • Checklist item improve robustness to handle mixed projects set to Done
Actions #22

Updated by pespin almost 6 years ago

  • Status changed from Stalled to Resolved
  • % Done changed from 80 to 100

After a full release round of all projects, I think the automatization is good enough for now. Small Specific stuff to be done is handled in less-generic tasks.
Wiki has been updated will all related interesting documentaiton. https://osmocom.org/projects/cellular-infrastructure/wiki/Make_a_new_release

Actions

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)