HomeMesosphereNo notifications. 4 unresolved issues.

preserve legacy port mapping labels in normalization and migration
ClosedAll Users

Authored by timcharper on May 31 2017, 3:37 AM.

Details

Summary

Also, add to RAML / JSON schema

Test Plan

run case in MARATHON-7421; upgrade Marathon 1.4-1.5 with ipAddress port labels

Diff Detail

Repository
rMARATHON marathon
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
timcharper created this revision.May 31 2017, 3:37 AM
kensipe accepted this revision.May 31 2017, 3:54 AM

lgtm

This revision is now accepted and ready to land.May 31 2017, 3:54 AM
jenkins requested changes to this revision.May 31 2017, 3:56 AM
This revision now requires changes to proceed.May 31 2017, 3:56 AM

✗ Build of 3358 failed jenkins-public-marathon-phabricator-116.
Error message:

Stage Compile and Test failed.

^ known flake. We should mark unstable. Failed for text only change here: https://phabricator.mesosphere.com/D795

jdef requested changes to this revision.May 31 2017, 3:26 PM

Nice catch, Tim. You'll also want to update the AppConversion code so that migrations to 1.5 don't drop the labels. Currently the conversion code doesn't support them (because they weren't in the RAML):

implicit val discoveryPortProtoRamlWriter: Writes[org.apache.mesos.Protos.Port, IpDiscoveryPort] = Writes { port =>
  IpDiscoveryPort(
    number = port.whenOrElse(_.hasNumber, _.getNumber, IpDiscoveryPort.DefaultNumber),
    name = port.getName,
    protocol = port.when(_.hasProtocol, _.getProtocol).flatMap(NetworkProtocol.fromString).getOrElse(IpDiscoveryPort.DefaultProtocol)
  )
}
timcharper updated this revision to Diff 3379.May 31 2017, 9:42 PM
timcharper retitled this revision from preserve legacy port mapping labels in normalization to preserve legacy port mapping labels in normalization and migration.
timcharper edited the test plan for this revision. (Show Details)
timcharper removed a reviewer: jenkins.

all migrations matter

jdef accepted this revision.May 31 2017, 9:57 PM
This revision is now accepted and ready to land.May 31 2017, 9:57 PM
jenkins accepted this revision.May 31 2017, 9:58 PM

✔ Build of 3379 completed jenkins-public-marathon-phabricator-139.

You can create a DC/OS with your patched Marathon by creating a new pull
request with the following changes in buildinfo.json:

"url": "https://downloads.mesosphere.io/marathon/snapshots/marathon-1.5.0-SNAPSHOT-550-g4b5209f.tgz",
"sha1"" "3889acadd9570c463369c69423510caed75c3a82"
This revision was automatically updated to reflect the committed changes.