Cycle-trailing deliverables are regular cycle-following deliverables,
using RCs or not not using RCs -- they just have a different deadline.
Rather than using a release model, those deadline variants are better
described using deliverable types, in much the same way 'library'
deliverables have a specific deadline too.
This simplifies the list of models significantly, and allows to have
proposer validation of trailing deliverables that use RCs or not use
RCs.
For compatibility in old branches, setting 'cycle-trailing' is still
supported, it will just overload the type to 'trailing' if specified.
Change-Id: Ifce88ef3e5dd406f45f25214699f16e736ad5377
Add the canary mode feature to propose_final_releases.py to allow
us to test final release with a pseudo workflow based on
the real process.
Change-Id: I27f604eb52563b04f5bb8a24e096b9fec4a14dbd
get_deliverables() now returns Deliverable objects instead of tuples,
so we don't need to convert the tuples to objects.
Change-Id: I28d49a64c443b22f102536a093b59a917db65457
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
Several of the support modules now use logging exclusively as a way to
emit debug info. Set up logging so we can see that debug info when
--verbose is turned on.
Change-Id: I029b6cc8667fca61f70afd19e99dd865870a546e
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
Handles the case where it is the first release of a deliverable.
Instead of adding 'none' as the diff-start, this just skips
adding the setting to the release.
Change-Id: I66fd4ef165165689cb6d2b6613c45b3564330a8f
When we propose the final releases for milestone projects we set
diff-start to ensure the announcement email includes all of the
release notes for the deliverable. We were using the wrong field name,
which means the pike announcements did not include all of the
changes. This corrects the problem so we get the right content for
queens.
Change-Id: I7bf213d3f954381b0a556be0d310e5caad6cd18e
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
We never updated the implementation of this command when release model
tags were moved into the releases repository. This patch uses the
deliverable search code to create Deliverable objects, then uses the
model information from those objects instead of looking at the
governance data.
Two new properties are added to the Deliverable class to facilitate
writing the updates to the existing files.
At the same time the verbose output content is made more detailed.
Change-Id: I807ee48244c3f6b2a33a918668620ab2a82c3674
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
Also set the encoding for the data files in more open() calls.
Change-Id: Idda3a7ab46e5478f83541fbbb629d7e086515ffd
Signed-off-by: Doug Hellmann <doug@doughellmann.com>