So far, 2019 has been a busy year, with the introduction of the test reporting feature, the SAML SSO launch and a bunch of other smaller and bigger updates. Even though it’s always nice to be surprised when you log into Bitrise and there’s some new functionality, we appreciate that having some idea of exactly what we’re up to makes sense.
From this post onwards, we’re going to share some broad roadmap directions and features with you every 3 months or so. This doesn’t just allow you to prepare for what’s to come, but should also be where you share your thoughts in our direction. Feel free to comment directly on this post in the blog, head to discuss.bitrise.io, Tweet at us or jump on the public Slack with your initial response, things you’re missing, things you love and whatever else comes to mind: We’ve grown so far by addressing mobile development challenges better than anyone else and your help will allow us to continue doing so.
Broadening our reach across mobile technologies
Step library refresh
The Bitrise step library is a critical part of the value we bring users. The more steps, the less config/coding you have to do yourself, the easier it is to set up workflows and the easier it’ll be to iterate those same workflows by experimenting with new steps. As of this moment, it’s largely ‘working as intended’, but there are some issues around step descriptions and how well they communicate what a step actually does. On the short to mid-term, we’ll be launching a refresh that makes it easier to find a step that serves a particular purpose, find alternatives to the steps you're using and find the documentation needed to support its use.
There are two ways we currently acquire new library steps: Our tooling team creates them or the community creates them based on the step template (the entire thing is OSS). In the short term, we’re going to launch a series of efforts to actively approach the services you’re currently missing and assist them as they build their own steps. (it’s one of the reasons we’re building a business development team). Creating steps has always been possible without our involvement, but we realize that a little support goes a long way and there’s a definite benefit in having more steps there that’ll just work ‘out of the box’. We’ll be polishing up the technical documentation for creating steps, setting up additional support structures to help during the process and an active outreach program for services that would make a valuable addition. If there are steps you’re missing or potential integrations we should be chasing, let us know.
Whenever we talk about being a mobile continuous integration and delivery platform, there’s an elephant in the room. That elephant is called Unity. Even though it’s possible (and not entirely uncommon) to build Unity projects with Bitrise, it’s far from the smooth experience we’d like it to be. We’re fully aware that there are some unique challenges involved, but those are challenges we want to overcome so you’ll actually have an alternative to Unity Cloud Build or a local, cobbled-together Jenkins setup. If you’re a Unity developer and have some thoughts, feel free to join the #Unity channel in our public Slack. We’re not 100% certain on the timeline yet, but expect to see the first fruits of these efforts to hit Bitrise late Q3, early Q4.
Addressing mobile challenges at scale
Pay as you build
Only pay for what you use, kick off a build whenever you need to and more granular control of the machines you use: With the upcoming pay-as-you-build plans, we’re going to offer an alternative to our current concurrency based subscription plans. You’ll purchase credits and use those to run specific workflows on specific machines. The beefier the machine, the faster the build, but also the more credits per minute it’ll require. We’re very close to releasing this to an initial group of users, so if you’re interested in getting early access, you might just find a relevant button on our Enterprise pricing page.
Private managed cloud
In some cases, fast isn’t fast enough. For companies that require extreme speed or have specific security requirements, we’re in the process of rolling out private managed cloud instances. Here, you’ll have your own dedicated machines, configured to your specs, (optionally) pre-loaded with your images and extensive support from our engineers to make the most out of your time on Bitrise. We’ve been working on these specific capabilities for a while now and expanding on the services we offer there is one of our priorities for the rest of the year. Even though this doesn’t directly impact a good chunk of you directly, the learnings here are already translating into improvements across all of Bitrise and will continue to do so going forward.
A single screen mobile DevOps solution
Bitrise Performance Monitoring
Earlier this year, we acquired Outlyer: The team and technology enabling monitoring for some of the most demanding customers around. We’re currently taking that technology and repurposing it to form the core of our Bitrise application performance monitoring solution. By offering monitoring directly from Bitrise, you’ll be able to seamlessly integrate it into your workflows, gain added visibility on what happens post-install and increase your ability to respond rapidly and effectively. Like we’ve done with other phases of the DevOps process, we’ll approach monitoring as an enabler more than anything else: We’ll connect to the services you love and offer you a fast an easy way to integrate them into your workflows. Bitrise Performance Monitoring will be an option, but you can also choose to connect to other services, build your own integration or choose to not use Bitrise for monitoring at all.
The upcoming Ship feature will augment the ‘Deploy to Bitrise.io’ step with some often-requested functionality. Its main purpose is to present you with a single dashboard to manage all app versions of a single Bitrise project and offer extensive release management controls, including the ability to re-sign new versions and publish them to the store after they’ve been tested. It also expands on the app install page, adds a place to invite and manage testers and adds a ton of other tweaks and improvements that should make your life just a little bit easier. It’s not entirely an updated step, though. It’s something else:
We’ve been working on something pretty special for a while now: The add-on marketplace. The add-on marketplace will provide you with Bitrise integrations that go further than those found in the step library, allowing access to artifacts, controls and other functionality from within Bitrise. The aim is to reduce the time you spend searching, managing and troubleshooting, while increasing the time you spend doing meaningful work by offering a unified, single screen. The Bitrise UI will - in theory - cover all the processes, tools and services you use to build and operate mobile applications. Actually, the test reporting feature we launched recently and the upcoming Ship feature are examples of an add-on in the wild (you might’ve caught some references to add-ons in the UI). The plan is to give you choice: Whenever there’s a problem to solve, there are steps and add-ons to choose from and experiment with. Some of the upcoming add-ons will be paid, some of them will be free, most will have some kind of free tier for smaller projects and less complicated use cases. Some add-ons will be Bitrise developed and we expect the ecosystem to grow as more of the tools you use see the value of offering an add-on. Like the step library, Bitrise-developed add-ons will be open sourced, so you can actually check out some of the work in progress there today.
For everything mentioned in this post, we’re quite far along in the development process, so it’ll be months - not years - before this is available. Some additional upcoming features that didn’t quite fit any of these three categories are caching for all platforms, dependency caching for all dependency managers, a pretty extensive update to the new testing add-on (including linting support, code coverage reports, test sharding and support for more test frameworks), the ability to pin major versions of steps and much, much more.
If there are glaring omissions, if you’d like to share exciting new suggestions or if you have something else to add, there’s a feature request section on our website plus we’re hiring: Really no better way to get involved then joining the team ;)