----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/59641/ -----------------------------------------------------------
(Updated May 30, 2017, 8:14 p.m.) Review request for mesos, Andrew Schwartzmeyer, James Peach, Vinod Kone, and Zhitao Li. Bugs: MESOS-7572 https://issues.apache.org/jira/browse/MESOS-7572 Repository: mesos Description ------- The main benefit of following symlinks in endpoints such as `/files` is that frameworks will be able to construct a path to the sandbox much easier. This will assist framework developers in making features that need to provide a path when hitting various operator API endpoints. Currently, making use of a path ending in `runs/latest` throws a 404. One such application could be a scheduler providing the ability for users to work with their task's sandbox directly without going to the Mesos UI, API endpoints, or the actual system themselves. Diffs (updated) ----- src/files/files.cpp b03279ee0 src/tests/files_tests.cpp c703cae03 Diff: https://reviews.apache.org/r/59641/diff/2/ Changes: https://reviews.apache.org/r/59641/diff/1-2/ Testing ------- `mkdir build && cd build && cmake .. && make -j2 && make check -j2` Checked the original behavior: ``` curl -i localhost:5051/files/browse?path=/tmp/slave/slaves/d3566e51-4d13-4ed1-b66b-d538d3d7ef28-S0/frameworks/d3566e51-4d13-4ed1-b66b-d538d3d7ef28-0001/executors/testapp-924b5c1524d84676a6a71665e2054d31/runs/cbec99c9-da2d-4aaa-bab7-4cee9a4df031 HTTP/1.1 200 OK Date: Tue, 30 May 2017 17:43:08 GMT Content-Length: 644 Content-Type: application/json [{"gid":"root","mode":"-rw-r--r--","mtime":1496161813.0,"nlink":1,"path":"\/tmp\/slave\/slaves\/d3566e51-4d13-4ed1-b66b-d538d3d7ef28-S0\/frameworks\/d3566e51-4d13-4ed1-b66b-d538d3d7ef28-0001\/executors\/testapp-924b5c1524d84676a6a71665e2054d31\/runs\/cbec99c9-da2d-4aaa-bab7-4cee9a4df031\/stderr","size":255,"uid":"root"},{"gid":"root","mode":"-rw-r--r--","mtime":1496161812.0,"nlink":1,"path":"\/tmp\/slave\/slaves\/d3566e51-4d13-4ed1-b66b-d538d3d7ef28-S0\/frameworks\/d3566e51-4d13-4ed1-b66b-d538d3d7ef28-0001\/executors\/testapp-924b5c1524d84676a6a71665e2054d31\/runs\/cbec99c9-da2d-4aaa-bab7-4cee9a4df031\/stdout","size":1142,"uid":"root"}] ``` Checked the new behavior (this would return a 404 before this patch): ``` curl -i localhost:5051/files/browse?path=/tmp/slave/slaves/d3566e51-4d13-4ed1-b66b-d538d3d7ef28-S0/frameworks/d3566e51-4d13-4eors/testapp-924b5c1524d84676a6a71665e2054d31/runs/latest HTTP/1.1 200 OK Date: Tue, 30 May 2017 17:43:13 GMT Content-Length: 584 Content-Type: application/json [{"gid":"root","mode":"-rw-r--r--","mtime":1496161813.0,"nlink":1,"path":"\/tmp\/slave\/slaves\/d3566e51-4d13-4ed1-b66b-d538d3d7ef28-S0\/frameworks\/d3566e51-4d13-4ed1-b66b-d538d3d7ef28-0001\/executors\/testapp-924b5c1524d84676a6a71665e2054d31\/runs\/latest\/stderr","size":255,"uid":"root"},{"gid":"root","mode":"-rw-r--r--","mtime":1496161812.0,"nlink":1,"path":"\/tmp\/slave\/slaves\/d3566e51-4d13-4ed1-b66b-d538d3d7ef28-S0\/frameworks\/d3566e51-4d13-4ed1-b66b-d538d3d7ef28-0001\/executors\/testapp-924b5c1524d84676a6a71665e2054d31\/runs\/latest\/stdout","size":1142,"uid":"root"}] ``` Thanks, Aaron Wood