Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Automation with Boxen
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Alex Fish
January 16, 2014
Technology
160
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Automation with Boxen
Automate all the macs!
Alex Fish
January 16, 2014
More Decks by Alex Fish
See All by Alex Fish
Yolo - a build tools gem
alexfish
0
64
Other Decks in Technology
See All in Technology
夫婦で子育てするための育児標準化
codmoninc
PRO
0
330
10年後、Engineering 行為を剥奪されるとして、わたしたちは、どう、何を創ればいいだろうか。 / If Engineering Is Taken Away in 10 Years, How and What Should We Create?
bitkey
PRO
1
190
「Docker Desktop不要の時代」は 来たのか?
ueponx
0
770
20261017福岡devIO 「AIは"良いダッシュボード"を作れるか?
jtakeda
0
140
しろおびから始める!ログ活用の第一歩
shumei_ito
0
950
ストレスなくAIと付き合いたい!こんなときどうしてる?
namiki64
3
490
Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
1
580
OptunaHub: ブラックボックス最適化のためのプラットフォーム
pfn
PRO
0
140
WasmをRustにする
sansantech
PRO
0
250
分析AIエージェントを育てる、動く環境を育てる
codatum
1
1.1k
TinyGoでオブザーバビリティ?OpenTelemetryはTinyGoで使えるのか / Is OpenTelemetry available in TinyGo environment?
ymotongpoo
2
140
Claude の新機能を、 出た日に触って社内に届けるまで
rfdnxbro
1
170
Featured
See All Featured
Design in an AI World
tapps
1
350
Faster Mobile Websites
deanohume
310
32k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Heart Work Chapter 1 - Part 1
lfama
PRO
10
37k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
460
The browser strikes back
jonoalderson
0
1.8k
For a Future-Friendly Web
brad_frost
184
10k
Skip the Path - Find Your Career Trail
mkilby
1
260
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
Making Projects Easy
brettharned
120
6.8k
Transcript
boxen AUTOMATION WITH BOXEN fi
[email protected]
, 1
boxen THE PROBLEM
“ boxen I lost two days because my laptop broke.
, 3
“ boxen it works for me, which version of ruby
are you running? , 4
“ boxen I just checked out the repo and it
doesn’t compile. , 5
boxen THE SOLUTION
boxen BOXEN Everybody working in perfect harmony. , 7
boxen WHAT CAN BOXEN DO? 1. Set your screensaver 2.
Install homebrew packages 3. Install your favorite music player 4. Configure vim 5. Install sublime text packages 6. Setup a project 7. Configure git 8. Lots more…. , 8
boxen HOW? , 9
PUPPET Written in Ruby , 10 boxen
PUPPET IS NOT PROCEDURAL , 11 boxen
boxen IDEMPOTENT The same thing over and over and over
again. , 12
boxen STRUCTURE
boxen BOXEN REPO , 14
boxen MODULES , 15 class ustwo::development { git::config::global { 'color.ui':
value => 'true'; 'core.ignorecase': value => 'false'; 'branch.autosetuprebase': value => 'always'; } }
boxen PEOPLE , 16 class people::alexfish { include ustwo::development !
$home = "/Users/${::boxen_user}" $my = "${home}/my" $dotfiles = "${my}/dotfiles" ! file { $my: ensure => directory } ! repository { $dotfiles: source => 'alexfish/dotfiles', require => File[$my] } }
boxen PROJECTS , 17 class projects::foobar { boxen::project { 'foobar':
ruby => '1.9.3', source => 'ustwo/foobar', } → exec { "bundle install”: } }
boxen PUPPETFILE , 18 github "iterm2", "1.0.4" github "philip", "1.1.2"
github "sonos", "1.0.3" github "alfred", "1.1.7" github "charles", "1.0.4"
boxen USE CASES
boxen We decide to move to ruby 2.0.0 Pull request
on the boxen repo Shoot out an email Next time people run boxen they are on ruby 2.0.0 , 20 UPDATING RUBY
boxen STARTING ON A NEW PROJECT , 21 $ boxen
foobar class people::alexfish { include projects::foobar }
boxen INSTALLING A NEW APPLICATION ! We decide we all
need charles Add charles to the puppet file include charles in the development module next time a developer runs boxen, they get charles. , 22
boxen QUESTIONS? , 23