Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CI no Nubank | Setup de ambientes macOS com Ans...
Search
Pietro Caselani
January 31, 2019
Programming
4
400
CI no Nubank | Setup de ambientes macOS com Ansible
Pietro Caselani
January 31, 2019
Tweet
Share
More Decks by Pietro Caselani
See All by Pietro Caselani
por que construimos um monorepo?
pietrocaselani
2
640
Other Decks in Programming
See All in Programming
詳細の決定を遅らせつつ実装を早くする
shimabox
1
730
Making Angular Apps Smarter with Generative AI: Local and Offline-capable
christianliebel
PRO
0
110
CSC305 Lecture 14
javiergs
PRO
0
230
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
0
390
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
18
9.6k
AI Agent 時代的開發者生存指南
eddie
4
2.3k
Migration to Signals, Resource API, and NgRx Signal Store
manfredsteyer
PRO
0
150
Verilator + Rust + gRPC と Efinix の RISC-V でAIアクセラレータをAIで作ってる話 RTLを語る会(18) 2025/11/08
ryuz88
0
290
Kotlinで実装するCPU/GPU 「協調的」パフォーマンス管理
matuyuhi
0
290
SODA - FACT BOOK(JP)
sodainc
1
9.2k
お前も Gemini CLI extensions を作らないか?
satohjohn
0
110
What’s Fair is FAIR: A Decentralised Future for WordPress Distribution
rmccue
0
110
Featured
See All Featured
Visualization
eitanlees
150
16k
Six Lessons from altMBA
skipperchong
29
4.1k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
650
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Context Engineering - Making Every Token Count
addyosmani
8
350
The Language of Interfaces
destraynor
162
25k
Designing for humans not robots
tammielis
254
26k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Done Done
chrislema
186
16k
Building an army of robots
kneath
306
46k
Side Projects
sachag
455
43k
Transcript
CI no Nubank Marcus Fonseca Pietro Caselani
O que é CI?
Pipelines
None
Agents
PRs no Nubank
Pipeline
Setup de ambientes macOS com Ansible Marcus Fonseca Pietro
Caselani
Problemas com setup de agents
Configuração trabalhosa e com passos manuais
Configuração descentralizada
Difícil de reproduzir
Objetivo
Automatizar a configuração de agents
O Docker não suporta macOS MAS…
None
- name: Install brew packages homebrew: name: rbenv,awscli,jq state: present
- name: Install brew packages homebrew: name: rbenv,awscli,jq state: present
- name: Install brew packages homebrew: name: rbenv,awscli,jq state: present
- name: Install brew packages homebrew: name: rbenv,awscli,jq state: present
- name: Check if Xcode CLI is installed shell: xcode-select
-p register: xcode_cli ignore_errors: yes - name: Install Xcode CLI script: scripts/install-xcode-cli.sh become: yes when: xcode_cli.rc == 2
- name: Check if Xcode CLI is installed shell: xcode-select
-p register: xcode_cli ignore_errors: yes - name: Install Xcode CLI script: scripts/install-xcode-cli.sh become: yes when: xcode_cli.rc == 2
- name: Check if Xcode CLI is installed shell: xcode-select
-p register: xcode_cli ignore_errors: yes - name: Install Xcode CLI script: scripts/install-xcode-cli.sh become: yes when: xcode_cli.rc == 2
- name: Check if Xcode CLI is installed shell: xcode-select
-p register: xcode_cli ignore_errors: yes - name: Install Xcode CLI script: scripts/install-xcode-cli.sh become: yes when: xcode_cli.rc == 2
- name: Check if Xcode CLI is installed shell: xcode-select
-p register: xcode_cli ignore_errors: yes - name: Install Xcode CLI script: scripts/install-xcode-cli.sh become: yes when: xcode_cli.rc == 2
- name: Check if Xcode CLI is installed shell: xcode-select
-p register: xcode_cli ignore_errors: yes - name: Install Xcode CLI script: scripts/install-xcode-cli.sh become: yes when: xcode_cli.rc == 2
ansible-playbook -i $IP_ADDRESS, \ -c ssh \ -u $USER \
--vault-password $VAULT_PASSWORD_PATH \ $PLAYBOOK_PATH
ansible-playbook -i $IP_ADDRESS, \ -c ssh \ -u $USER \
--vault-password $VAULT_PASSWORD_PATH \ $PLAYBOOK_PATH
ansible-playbook -i $IP_ADDRESS, \ -c ssh \ -u $USER \
--vault-password $VAULT_PASSWORD_PATH \ $PLAYBOOK_PATH
ansible-playbook -i $IP_ADDRESS, \ -c ssh \ -u $USER \
--vault-password $VAULT_PASSWORD_PATH \ $PLAYBOOK_PATH
ansible-playbook -i $IP_ADDRESS, \ -c ssh \ -u $USER \
--vault-password $VAULT_PASSWORD_PATH \ $PLAYBOOK_PATH
None
--- - name: Setup Jenkins agent roles: - env_setup -
pip - aws - homebrew_setup - git - xcode_cli - ruby - rome - carthage - icli - xcode - agent_setup - java - jenkins
OS Clone
Resultados • Agents são configurados de forma automática • Infrastructure
as code • Configuramos somente o necessário
Próximos Passos • Melhorar performance dos playbooks • Validar configurações
• Reaproveitar playbooks para setup das máquinas de devs mobile
sou.nu/jobs-at-nubank Obrigado! Marcus Fonseca @marcola |
[email protected]
Pietro Caselani @pietropc
|
[email protected]
sou.nu/ios-beta
None