~/talk

Ruby Served with a side of JavaScript

Talkat All Things Open 2020 · 2020-10-19..10-20· [ruby, javascript]
links:none on file
slides:none on file

A Ruby agent test matrix for Ruby 2.0–2.7 and Rails 3.x–6.0 uses GitHub Actions with custom JavaScript actions while key Ruby work runs in Ruby itself; nine Ruby flavors produce over 150 jobs so building Rubies locally and built Ruby ourselves solves OpenSSL and legacy-compat issues (including downgrading OpenSSL for CI), caching drops per-Ruby build from ~8 minutes to ~1 and overall CPU from ~1,000–1,300 to 225 minutes, and keeping build logic in JS shrinks workflows and improves cache control.

AI-written summary · about

  1. 0:00Intro
  2. 0:23Safe Harbor
  3. 3:10The New Relic Ruby Agent
  4. 4:39Which Means: Our Test Matrix is Huge!
  5. 7:26For Example
  6. 7:47Another Example
  7. 8:14What Exactly is Broken?
  8. 9:24Difficult Choice for Us
  9. 11:01The Decision
  10. 13:01The Docker Challenge
  11. 15:52Second Attempt: Build it all in the Workflow
  12. 16:41Third Attempt: JavaScript Action
  13. 17:16Complex Logic becomes much easier
  14. 18:48Our own Action, allows nice encapsulation
  15. 20:03Welcome to the Promise Land JavaScript does this weird thing to a Rubyist : async/ await
  16. 20:51Want an output from Shell Command?
  17. 22:56The MySQL gem just would not pay attention to what we wanted.
  18. 23:28Only Choice: Break the Rules
  19. 25:02Breaking the Rules: Bonus Edition
  20. 25:59Downgrade MySQL client libraries
  21. 26:46Finally, we can work on our workflow
  22. 28:25Workflow clash Problem!
  23. 29:17Solution: Retry to the rescue
  24. 30:17Workflow gets the shrink ray ogain!
  25. 30:54Why move caching to action?
  26. 32:36Bundler gets its own cache
  27. 33:53Pro Tip! Caching is a Lifesaver
  28. 34:20Debug Tip: Isolate to focus your effort!
  29. 35:42Let's skip Environment setup when only building
  30. 36:32The End Result
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.