Page MenuHomePhabricator

Initial code-dump of Release
Needs ReviewPublic

Authored by avivey on Dec 2 2016, 9:34 PM.
Tags
None
Referenced Files
F13080804: D16981.id41521.diff
Wed, Apr 24, 10:43 AM
F13080803: D16981.id41128.diff
Wed, Apr 24, 10:43 AM
F13080802: D16981.id41113.diff
Wed, Apr 24, 10:42 AM
F13080801: D16981.id41025.diff
Wed, Apr 24, 10:42 AM
F13080800: D16981.id40860.diff
Wed, Apr 24, 10:42 AM
F13080799: D16981.id.diff
Wed, Apr 24, 10:42 AM
F13080798: D16981.diff
Wed, Apr 24, 10:42 AM
Unknown Object (File)
Fri, Apr 19, 5:49 PM
Tokens
"Like" token, awarded by 20after4.

Details

Summary

This is a dump of the Release code I have.

  • I took over the X monogram, because it was free and the wordsmith said it looks like "cutting". I don't mind giving it up, but it kinda lead into Y for change/pull requests.
  • This is more-or-less useless without adding a lot of custom actions, such as "create branch", "close branch", "deploy release to server", etc. Many of them are straight T182, and some may be implemented as build plans.
  • The code for Custom Actions is completely outside of this change right now - It's basically Event Listener adding buttons + custom TransactionTypes (P2009).
  • Major missing features include Release Plan and Change Request, all the Pipeline (Automation) features, and Artifacts. I plan to start with Change Request or maybe Artifacts.

More technical debt (For follow-ups / future):

  • UI for create release: like in Add Build Step, first select Release Plan, then fill in the rest of the stuff. Right now, I need custom create forms because I don't yet have Release Plan objects.
  • None of this staff is abstracted over VCS yet - it's all git. Although this mostly effects terminology, because there's very little code that actually does things...
  • expand transaction: in a couple of cases I need to (Mostly because of the custom actions thing; Either move to base ApplicationEditor, or find another solution on my end.
  • Release Statuses are a hard-coded list right now, but should probably be customizable at some point.
  • Edges: RepositoryInRelease?

Ref T9530

Test Plan

Mostly checked in the context of follow-up diffs :-/

Diff Detail

Repository
rP Phabricator
Lint
Lint Errors
Unit
Test Failures
Build Status
Buildable 14913
Build 19535: Run Core Tests
Build 19534: arc lint + arc unit

Unit TestsFailed

TimeTest
401 msPhabricatorLibraryTestCase::Unknown Unit Message ("")
Assertion failed, expected 'true' (at PhutilLibraryTestCase.php:51): The library map is out of date. Rebuild it with `arc liberate`. These entries differ: class.TestTemplate, xmap.TestTemplate.
7,033 msPhabricatorLibraryTestCase::Unknown Unit Message ("")
Assertion failed, expected 'true' (at PhutilLibraryTestCase.php:51): The library map is out of date. Rebuild it with `arc liberate`. These entries differ: class.TestTemplate, xmap.TestTemplate.
1 msAlmanacNamesTestCase::Unknown Unit Message ("")
30 assertions passed.
0 msAlmanacServiceTypeTestCase::Unknown Unit Message ("")
1 assertion passed.
0 msAphrontHTTPSinkTestCase::Unknown Unit Message ("")
4 assertions passed.
View Full Test Results (2 Failed · 340 Passed)

Event Timeline

avivey retitled this revision from to Very initial code-dump of Release.
avivey updated this object.
avivey edited the test plan for this revision. (Show Details)
avivey added reviewers: epriestley, hach-que.

@epriestley: I'm not exactly sure this is ready, but this part of the code hasn't changed much recently.

avivey edited edge metadata.
chad added inline comments.
src/applications/release/application/PhabricatorReleaseApplication.php
23

frowncat

src/applications/release/xaction/PhabricatorReleaseReleaseTransactionType.php
8

Is this one better?

avivey added a child revision: Restricted Differential Revision.Dec 9 2016, 10:10 PM
avivey edited child revisions, added: D17020: Release: start adding changerequests; removed: Restricted Differential Revision.Dec 9 2016, 10:19 PM

Add a Demo Template object to allow testing, and add some TODOs.

avivey marked an inline comment as done.
  • Support custom fields; Some minor stuff.
  • add TODO and OPEN_QUESTIONS files.
  • Check that mail works
  • Policy to Create new Release
  • normalize filenames

this part is mostly done (Still not actually usable)

avivey retitled this revision from Very initial code-dump of Release to Initial code-dump of Release.Jan 28 2017, 4:41 PM
avivey edited the summary of this revision. (Show Details)
avivey edited the test plan for this revision. (Show Details)