SlideShare a Scribd company logo
1 of 46
Download to read offline
Bitrise: Workflows,
Integrations and More
Viktor Benei, CTO
ViktorBenei
Hendrik Haandrikman, VP of Growth
HHaandr
CI/CD Test Night #1, Tokyo | 7 Nov 2018
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Our Hosts
THANK YOU
Agenda
1. Introduction to Bitrise
Our history
Basic onboarding and the project scanner
2. Workflows
The how and why of workflows
The workflow editor
3. Steps and integrations
Most popular steps and how to use them
Chuck Norris + Slack and Deploygate: Creating your own step
4. Troubleshooting
iOS code signing
Locating artifacts
Attaching artifacts to the builds
Reliable Android Espresso/UI tests
5. Announcement and Q&A
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Enabling mobile app
developers to do their
best work
What do we do?
Bitrise automates
mobile app integration,
testing and deployment
to make developers
more consistent, faster
and freeing up their
time and talents for the
work that matters.
Bitrise Founding
Founded in 2014 by app
development agency
alumni, looking to
improve their own
process. Y Combinator
backed with $ 3.5M in
funding.
By the numbers
Used by:
* Over 20% of the
Fortune Global 500
* 50% of mobile unicorn
startups
Over 10M builds to date
and doubling in size
every 9 months
Headquarters
Bitrise is headquartered
in Budapest, Hungary,
where a team of 30+
developers work
tirelessly to improve our
platform
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
The Bitrise
Team
30+ people, featuring
support-, tooling-,
backend- and
frontend engineers,
plus multiple (tech)
writers, marketers and
more.
We’re hiring:
www.bitrise.io/jobs
From Bitfall
to YC
Bitrise was previously
Bitfall, a Budapest
based mobile app
development and
services agency.
There, after
experiencing the
headaches of other
CI solutions, Bitrise
was born.
Bitrise was part of
Y-Combinator’s W17
class.
Bitrise and
Unicorns
Many of the world’s
most highly valued
startups use Bitrise
to maximize
developer efficiency,
minimize time
wasted onboarding
and ensure that
developer time is
spent on tasks that
bring the company a
competitive
advantage
Bitrise and
Japan
Japan is our #3 market worldwide, but on track to be #2 early 2019.
Over 20% of our first 1.000 sign-ups originated there and today, most of the conversations
about Bitrise take place in Japan
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Basic Onboarding
Scanner is open source:
https://github.com/bitrise-core/bitrise-init
Used in the Step:
https://github.com/bitrise-steplib/steps-project-scanner
Used in the plugin:
https://github.com/bitrise-core/bitrise-plugins-init
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
The How and Why of Workflows
What are Bitrise workflows?
• A workflow defines what to do when you do a build,
test, deploy, etc.
• A series of Steps, environment variables and other
configs
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Workflow
Editor
Graphical Editor
Open Source
https://github.com/bitrise-io/bitrise-w
orkflow-editor
Direct access to
bitrise.yml if you
prefer
Some things are
easier to configure
with a GUI
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Adding a Step from the Library
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Step: Cache:Pull
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Step: Script
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Step: Deploy to Bitrise.io
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Step: Cache:Push
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Code Signing Files
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Generic File
Storage
Any kind of file (up to
5MB)
Utility files like
Google Play deploy
Service Account
JSON file
Upload the file &
specify a variable (ID),
steps can use that
environment variable
as the download
URL
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Env Vars
Env Vars are part of
the config, do not
store secrets here
App Env Vars
available in all
Workflows
Env Vars can be used
in step inputs
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Env Vars
Workflow Specific
Env Vars available in
the specified
workflow
As well as every
workflow chained
after that workflow
https://devcenter.bitrise.io/bitrise-cli/
workflows/#chaining-workflows-and-
reusing-workflows
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Secrets
Will be filtered out
from the logs
Not exposed to Pull
Requests by default
Can be used in Steps’
Sensitive Inputs
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Triggers
Specify what should
happen when
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Triggers
Specify what should
happen when
Order is
top-to-bottom, first
match selects the
workflow
Wildcard * is
supported
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Stack
“More information”
links to system
report
Per-workflow stack
selection
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Stack
New Stack added
when new Xcode
version available
Latest version of
major versions kept
for ~2.5 years
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
bitrise.yml
YAML representation
of the config
Changing the YAML
changes the value on
the UI and vice versa,
both edit the same
underlying config
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
bitrise.yml
Unlimited power!
E.g. time limit for steps
https://devcenter.bitrise.io/bitr
ise-cli/step-timeout/
run_if: false to disable a step -
https://devcenter.bitrise.io/tips
-and-tricks/disable-a-step-by-
condition/#disable-a-step
Specifying brew and apt
dependencies via `deps` -
https://devcenter.bitrise.io/tips
-and-tricks/install-additional-t
ools/#advanced-option-use-d
eps-in-bitriseyml
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
YAML diff
See what changed
Select the last
successful build and
check the diff
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
YAML diff
See what changed
Select the last
successful build and
check the diff
Restore directly from
the diff view
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Chuck Norris + Slack
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
DeployGate
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Steps
1. Flexibility
Email with Mailgun
Deploy to Amazon S3
2. Community
Chuck Norris
DeployGate
Yarn
About 50% of all steps!
3. Create your own Step!
Generate it with the Bitrise CLI
https://devcenter.bitrise.io/bitrise-cli/create-your-own-step/
How to use it before publishing
https://devcenter.bitrise.io/bitrise-cli/steps/#special-step-sources
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Most common questions/issues
• iOS Code Signing
• Locating artifacts
• Attaching artifacts to the builds
• Reliable Android Espresso/UI tests
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
iOS code signing
codesigndoc
You need the development
certificate and provisioning
profile even for App Store
signing
Use our codesigndoc open
source tool
Analyses the project and
collects signing files from your
Mac
Guide:
https://devcenter.bitrise.io/code-signing/ios-code-signin
g/collecting-files-with-codesigndoc/
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
iOS Auto
Provisioning
Step analyses the project
during the build
Connects to Apple Developer
Portal, generates the right
profile(s) and downloads them
Needs the certificate (private
key) - codesigndoc can be
used for getting that!
Guide:
https://devcenter.bitrise.io/code-signing/ios-code-signin
g/ios-auto-provisioning/
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Access Build
Artifacts
Open the Build’s page
Click “Apps & Artifacts”
To install iOS app open it from
iOS Mobile Safari - bitrise
checks whether the device is
compatible
Android APK can also be
installed from there
Public Install Page can be
enabled - send the URL to your
testers
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Attach
artifacts to
the build
Use the Deploy to
Bitrise.io step
Either move the file
into
$BITRISE_DEPLOY_D
IR
Or change the path
input
You can add multiple
steps
Guide:
https://devcenter.bitrise.io/tips-and-tri
cks/attach-any-file-to-build/
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Reliable Android
tests
Using Firebase Test Lab in just
a few clicks!
You get video and screenshots
of the test!
Guide:
https://devcenter.bitrise.io/testing/device-testing-for-an
droid/
Blog:
https://blog.bitrise.io/introducing-solid-and-snappy-virt
ual-device-testing-for-android
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Reliable Android
tests
Robo test results Instrumentation test results
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
Bitrise &
Japan
Localized
Docs
Thanks to you, the
Japanese Bitrise
community, our most-
read documentation,
including howto’s and
troubleshooting
guides are now
available in Japanese.
Going forward, we’re
aiming for Japanese
localization for every
high-impact
documentation
Community
Support
Contributors
We’re committing to
ongoing support for
Japanese developers
that want to contribute
to Bitrise, either through
code/integrations,
how-to's or localization
Ambassadors
Japanese developers are
the first to get access to
perks, exposure and
support, in exchange for
writing and talking
about Bitrise through
our new Bitrise
ambassador program
Events
Going forward, we’re
committed to attend
and/or sponsor major
Japanese developer
events at least once a
quarter
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
日本での採用開始!
Budapest, HU
Growth (internship)
Tokyo, JP
Community support
(contract)
Special 2-day
attendee swag
Q & A
Follow Bitrise @bitrise - Tweet along with #cicd_test_night
THANK YOU
Viktor Benei
CTO
viktor@bitrise.io
Hendrik Haandrikman
VP of Growth
rik@bitrise.io

More Related Content

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

Featured

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Saba Software
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
Simplilearn
 

Featured (20)

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
 

Bitrise keynote at DeNA's CICD Test Night #1

  • 1. Bitrise: Workflows, Integrations and More Viktor Benei, CTO ViktorBenei Hendrik Haandrikman, VP of Growth HHaandr CI/CD Test Night #1, Tokyo | 7 Nov 2018 Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 3. Agenda 1. Introduction to Bitrise Our history Basic onboarding and the project scanner 2. Workflows The how and why of workflows The workflow editor 3. Steps and integrations Most popular steps and how to use them Chuck Norris + Slack and Deploygate: Creating your own step 4. Troubleshooting iOS code signing Locating artifacts Attaching artifacts to the builds Reliable Android Espresso/UI tests 5. Announcement and Q&A Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 4. Enabling mobile app developers to do their best work What do we do? Bitrise automates mobile app integration, testing and deployment to make developers more consistent, faster and freeing up their time and talents for the work that matters. Bitrise Founding Founded in 2014 by app development agency alumni, looking to improve their own process. Y Combinator backed with $ 3.5M in funding. By the numbers Used by: * Over 20% of the Fortune Global 500 * 50% of mobile unicorn startups Over 10M builds to date and doubling in size every 9 months Headquarters Bitrise is headquartered in Budapest, Hungary, where a team of 30+ developers work tirelessly to improve our platform Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 5. The Bitrise Team 30+ people, featuring support-, tooling-, backend- and frontend engineers, plus multiple (tech) writers, marketers and more. We’re hiring: www.bitrise.io/jobs
  • 6. From Bitfall to YC Bitrise was previously Bitfall, a Budapest based mobile app development and services agency. There, after experiencing the headaches of other CI solutions, Bitrise was born. Bitrise was part of Y-Combinator’s W17 class.
  • 7. Bitrise and Unicorns Many of the world’s most highly valued startups use Bitrise to maximize developer efficiency, minimize time wasted onboarding and ensure that developer time is spent on tasks that bring the company a competitive advantage
  • 8. Bitrise and Japan Japan is our #3 market worldwide, but on track to be #2 early 2019. Over 20% of our first 1.000 sign-ups originated there and today, most of the conversations about Bitrise take place in Japan Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 9. Basic Onboarding Scanner is open source: https://github.com/bitrise-core/bitrise-init Used in the Step: https://github.com/bitrise-steplib/steps-project-scanner Used in the plugin: https://github.com/bitrise-core/bitrise-plugins-init Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 10. The How and Why of Workflows What are Bitrise workflows? • A workflow defines what to do when you do a build, test, deploy, etc. • A series of Steps, environment variables and other configs Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 11. Workflow Editor Graphical Editor Open Source https://github.com/bitrise-io/bitrise-w orkflow-editor Direct access to bitrise.yml if you prefer Some things are easier to configure with a GUI Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 12. Adding a Step from the Library Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 13. Step: Cache:Pull Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 14. Step: Script Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 15. Step: Deploy to Bitrise.io Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 16. Step: Cache:Push Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 17. Code Signing Files Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 18. Generic File Storage Any kind of file (up to 5MB) Utility files like Google Play deploy Service Account JSON file Upload the file & specify a variable (ID), steps can use that environment variable as the download URL Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 19. Env Vars Env Vars are part of the config, do not store secrets here App Env Vars available in all Workflows Env Vars can be used in step inputs Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 20. Env Vars Workflow Specific Env Vars available in the specified workflow As well as every workflow chained after that workflow https://devcenter.bitrise.io/bitrise-cli/ workflows/#chaining-workflows-and- reusing-workflows Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 21. Secrets Will be filtered out from the logs Not exposed to Pull Requests by default Can be used in Steps’ Sensitive Inputs Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 22. Triggers Specify what should happen when Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 23. Triggers Specify what should happen when Order is top-to-bottom, first match selects the workflow Wildcard * is supported Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 24. Stack “More information” links to system report Per-workflow stack selection Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 25. Stack New Stack added when new Xcode version available Latest version of major versions kept for ~2.5 years Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 26. bitrise.yml YAML representation of the config Changing the YAML changes the value on the UI and vice versa, both edit the same underlying config Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 27. bitrise.yml Unlimited power! E.g. time limit for steps https://devcenter.bitrise.io/bitr ise-cli/step-timeout/ run_if: false to disable a step - https://devcenter.bitrise.io/tips -and-tricks/disable-a-step-by- condition/#disable-a-step Specifying brew and apt dependencies via `deps` - https://devcenter.bitrise.io/tips -and-tricks/install-additional-t ools/#advanced-option-use-d eps-in-bitriseyml Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 28. YAML diff See what changed Select the last successful build and check the diff Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 29. YAML diff See what changed Select the last successful build and check the diff Restore directly from the diff view Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 30. Chuck Norris + Slack Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 31. DeployGate Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 32. Steps 1. Flexibility Email with Mailgun Deploy to Amazon S3 2. Community Chuck Norris DeployGate Yarn About 50% of all steps! 3. Create your own Step! Generate it with the Bitrise CLI https://devcenter.bitrise.io/bitrise-cli/create-your-own-step/ How to use it before publishing https://devcenter.bitrise.io/bitrise-cli/steps/#special-step-sources Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 33. Most common questions/issues • iOS Code Signing • Locating artifacts • Attaching artifacts to the builds • Reliable Android Espresso/UI tests Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 34. iOS code signing codesigndoc You need the development certificate and provisioning profile even for App Store signing Use our codesigndoc open source tool Analyses the project and collects signing files from your Mac Guide: https://devcenter.bitrise.io/code-signing/ios-code-signin g/collecting-files-with-codesigndoc/ Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 35. iOS Auto Provisioning Step analyses the project during the build Connects to Apple Developer Portal, generates the right profile(s) and downloads them Needs the certificate (private key) - codesigndoc can be used for getting that! Guide: https://devcenter.bitrise.io/code-signing/ios-code-signin g/ios-auto-provisioning/ Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 36. Access Build Artifacts Open the Build’s page Click “Apps & Artifacts” To install iOS app open it from iOS Mobile Safari - bitrise checks whether the device is compatible Android APK can also be installed from there Public Install Page can be enabled - send the URL to your testers Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 37. Attach artifacts to the build Use the Deploy to Bitrise.io step Either move the file into $BITRISE_DEPLOY_D IR Or change the path input You can add multiple steps Guide: https://devcenter.bitrise.io/tips-and-tri cks/attach-any-file-to-build/ Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 38. Reliable Android tests Using Firebase Test Lab in just a few clicks! You get video and screenshots of the test! Guide: https://devcenter.bitrise.io/testing/device-testing-for-an droid/ Blog: https://blog.bitrise.io/introducing-solid-and-snappy-virt ual-device-testing-for-android Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 39. Reliable Android tests Robo test results Instrumentation test results Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 41. Localized Docs Thanks to you, the Japanese Bitrise community, our most- read documentation, including howto’s and troubleshooting guides are now available in Japanese. Going forward, we’re aiming for Japanese localization for every high-impact documentation
  • 42. Community Support Contributors We’re committing to ongoing support for Japanese developers that want to contribute to Bitrise, either through code/integrations, how-to's or localization Ambassadors Japanese developers are the first to get access to perks, exposure and support, in exchange for writing and talking about Bitrise through our new Bitrise ambassador program Events Going forward, we’re committed to attend and/or sponsor major Japanese developer events at least once a quarter
  • 43. Follow Bitrise @bitrise - Tweet along with #cicd_test_night 日本での採用開始! Budapest, HU Growth (internship) Tokyo, JP Community support (contract)
  • 45. Q & A Follow Bitrise @bitrise - Tweet along with #cicd_test_night
  • 46. THANK YOU Viktor Benei CTO viktor@bitrise.io Hendrik Haandrikman VP of Growth rik@bitrise.io