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
フルサイクルエンジニアリングをAI Agentで全自動化したい 〜構想と現在地〜
kamina_zzz
0
400
AIエージェントのキホンから学ぶ「エージェンティックコーディング」実践入門
masahiro_nishimi
2
160
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
150
Oxlintはいいぞ
yug1224
5
1.3k
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
4
2.7k
CSC307 Lecture 06
javiergs
PRO
0
680
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
530
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
230
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
600
CSC307 Lecture 07
javiergs
PRO
0
540
Unicodeどうしてる? PHPから見たUnicode対応と他言語での対応についてのお伺い
youkidearitai
PRO
1
1.1k
Grafana:建立系統全知視角的捷徑
blueswen
0
320
Featured
See All Featured
ラッコキーワード サービス紹介資料
rakko
1
2.2M
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
3.9k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
170
Exploring anti-patterns in Rails
aemeredith
2
250
Ruling the World: When Life Gets Gamed
codingconduct
0
130
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
100
HDC tutorial
michielstock
1
350
Designing for Timeless Needs
cassininazir
0
130
Embracing the Ebb and Flow
colly
88
5k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
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