Skip to content

Instantly share code, notes, and snippets.

@thraxil
Created June 26, 2017 13:43
Show Gist options
  • Save thraxil/07d39136853fd9a7cd2bb3949a3de9ef to your computer and use it in GitHub Desktop.
Save thraxil/07d39136853fd9a7cd2bb3949a3de9ef to your computer and use it in GitHub Desktop.
{
browser -> mediathread [label = "GET /explore/redirect?..."];
browser <-- mediathread [label = "302 Location: http://wardenclyffe/mediathread/?..."];
browser -> wardenclyffe [label = "GET /mediathread/?nonce=..uni=.."];
wardenclyffe => wardenclyffe [label = "check credentials"];
wardenclyffe -> postgresql [label = "get/create user/session"];
wardenclyffe <-- postgresql [label = "user/session"];
browser <-- wardenclyffe [label = "upload form"];
browser -> wardenclyffe [label = "POST /mediathread w/ video file"] {
wardenclyffe => "scratch filesystem" [label = "write video to /tmp/"];
wardenclyffe => postgresql [label = "get user/session"];
wardenclyffe => postgresql [label = "create Video"];
wardenclyffe => postgresql [label = "create Source File"];
wardenclyffe => postgresql [label = "create Mediathread File"];
wardenclyffe => rabbitmq [label = "enqueue: save_to_tahoe"]
wardenclyffe => rabbitmq [label = "enqueue: extract_images"]
wardenclyffe => rabbitmq [label = "enqueue: extract_metadata"]
wardenclyffe => rabbitmq [label = "enqueue: submit_to_pcp"]
browser <- wardenclyffe [label = "Location: 302 Location: $redirect_to"];
};
celeryd -> rabbitmq [label = "any tasks?"];
celeryd <-- rabbitmq [label = "yes: save_to_tahoe"];
celeryd => postgresql [label = "get video info"];
celeryd => "scratch filesystem" [label = "get source video file"];
celeryd -> tahoe [label = "POST: store video file"];
celeryd <-- tahoe [label = "CAP"];
celeryd => postgresql [label = "create Tahoe File"];
celeryd -> rabbitmq [label = "any tasks?"];
celeryd <-- rabbitmq [label = "yes: submit_to_pcp"];
celeryd => postgresql [label = "get video info"];
celeryd => "scratch filesystem" [label = "get source video file"];
celeryd -> PCP [label = "POST: video, title, workflow"];
celeryd <-- PCP [label = "OK, I've accepted it"];
celeryd => postgresql [label = "set status to 'pending'"];
PCP => PCP [label = "encodes video"];
PCP => wardenclyffe [label = "POST /done/ w/ uuid/filename"] {
wardenclyffe => postgresql [label = "retrieve video by uuid"];
wardenclyffe => rabbitmq [label = "enqueue: submit_to_mediathread"];
};
celeryd -> rabbitmq [label = "any tasks?"];
celeryd <-- rabbitmq [label = "yes: submit_to_mediathread"];
celeryd => postgresql [label = "get video info"];
celeryd -> mediathread [label = "POST: /save"];
celeryd <-- mediathread [label = "302 Location: $url"];
celeryd => postgresql [label = "create Mediathread File"];
celeryd => SMTP [label = "notify user"];
celeryd -> rabbitmq [label = "any tasks?"];
celeryd <-- rabbitmq [label = "yes: make_images"];
celeryd => "scratch filesystem" [label = "get source video file"];
celeryd => celeryd [label = "extract frames"];
celeryd => postgresql [label = "store frames"];
celeryd -> rabbitmq [label = "any tasks?"];
celeryd <-- rabbitmq [label = "yes: extract_metadata"];
celeryd => "scratch filesystem" [label = "get source video file"];
celeryd => celeryd [label = "extract metadata"];
celeryd => postgresql [label = "store video metadata"];
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment