Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Automate workflow with Ruby

Automate workflow with Ruby

a talk at Jakarta.rb
lightning talk at Geekcamp.id 2017

Avatar for Didik Wicaksono

Didik Wicaksono

December 02, 2016
Tweet

More Decks by Didik Wicaksono

Other Decks in Programming

Transcript

  1. I’m with ID-Ruby Community •We will have our first Ruby

    Conference in Indonesia on Oct 6th-7th (ruby.id/cfp) •Please support our association: PERKODI (ruby.id/perkumpulan)
  2. ⛏ Workflow in a glance •Starts with a Hypothesis •Organize

    Task •Development & Code Review •Deploy & Announce Release
  3. Workflow breakdown •discuss hypothesis •create a card •assign card •create

    a branch •do magic •push a branch •create a pull request •code review •merge pull request •deploy code •announce release in Slack •mark card / checklist as completed
  4. Looks repetitive •On Slack •discuss hypothesis •On Trello •create a

    card •assign card •On local •create a branch •do magic •push a branch •On Github • create a pull request • code review • merge pull request • Back to local again • deploy code • Back to Slack again • announce release in Slack • Finally on Trello • mark card / checklist as completed
  5. Looks good? •On Slack •discuss hypothesis •On local •create a

    card •assign card •create a branch •do magic •push a branch •create a pull request •code review •merge pull request •mark card / checklist as completed •On Slack • deploy code •announce release in Slack
  6. trello-flow •github.com/balvig/trello_flow •available commands: ‣ git open 
 # Open

    relevant card/all users card in browser ‣ git start
 git start <card URL> 
 # choose card, assigns self & creates branch ‣ git finish 
 # checks off task, opens PR ‣ git cleanup 
 # cleans up merged card branches
  7. CP-8 Cookpad Bot • github.com/balvig/cp-8 • This little fella helps

    simplify your frequent labelling in Github • Deployable to Heroku
  8. ruboty •github.com/r7kamura/ruboty •its a bot, built in Ruby •deployable to

    Heroku •supports various chat services and some DBs