record.dot 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #!/usr/bin/env dot -O -Tsvg
  2. // https://en.wikipedia.org/wiki/Data-flow_diagram
  3. digraph {
  4. label = "Radio Privatkopie\nmro.name/radio-privatkopie\nData-flow Diagram";
  5. labelloc = t;
  6. //rankdir = LR;
  7. node [shape=box];
  8. cron;
  9. at;
  10. iTunes [label="Podcast.app"];
  11. onair [label="onair.cgi"];
  12. adhoc [label="adhoc.cgi"];
  13. monitor [label="monitor.cgi"];
  14. node [shape=cylinder];
  15. pending [label=".pending"];
  16. reserved [label=".reserved"];
  17. modified [label="modified.ttl"];
  18. error [label="error.log"];
  19. mp3 [label=".mp3"];
  20. xml [label=".xml"];
  21. o_rss [label=".rss"];
  22. zf_rss [label=".rss"];
  23. br_de [label="br.de"];
  24. stream [label="streams.br.de"];
  25. node [shape=rectangle];
  26. node [shape=ellipse];
  27. hourly [label="hourly.sh"];
  28. weekly [label="weekly.sh"];
  29. store [label="broadcast-store.sh"];
  30. record [label="record.sh"];
  31. publish [label="publish.sh"];
  32. schedule [label="schedule.sh"];
  33. error -> monitor;
  34. xml -> onair ;
  35. adhoc -> reserved;
  36. xml -> adhoc -> schedule;
  37. br_de -> "b2/scrape.sh";
  38. hourly -> "b2/scrape.sh" -> store;
  39. hourly -> "… scrape.sh" -> store;
  40. xml -> "zuendfunk/match.sh" -> reserved;
  41. xml -> "… match.sh" -> reserved;
  42. publish -> "zuendfunk/rss.sh" -> zf_rss -> iTunes;
  43. publish -> "… rss.sh";
  44. cron -> weekly;
  45. cron -> hourly;
  46. store -> xml;
  47. store -> modified;
  48. hourly -> error;
  49. at -> record;
  50. store -> schedule;
  51. reserved -> schedule -> pending -> at;
  52. record -> mp3 -> publish;
  53. weekly -> mp3;
  54. stream -> record;
  55. edge [color=red style=dashed];
  56. }