Open source, self-hosted, mobile-optimized CI powered by fastlane brought to you by the fastlane team.
- Git first: 100% of your configuration files are stored in git, wherever you want
- Configuration files first: Human readable and editable config files, fully transparent
- Open source: Just like fastlane,
fastlane.ci
is open source and community driven - Self hosted: You should be able to own your CI systems, and scale up as needed
- Adapters: Store your configuration and artifacts on services you already use, like GitHub or your own git server
- Native fastlane integration: Already use fastlane?
fastlane.ci
will work right out of the box for you - Mobile first, mobile only: For now, we're focusing exclusively on building the best CI system for mobile app devs
- Built in the open: Together with all of you, MIT licensed
- Visual interface: Thanks to
fastlane.ci
you'll be able to benefit from fastlane without having to use the terminal
We strongly believe in making Continuous Integration systems for mobile app developers better. While CI is a solved problem for backend and frontend applications, mobile ecosystems saw almost no improvements in their workflows. Three years ago we solved the problem of mobile app deployment with fastlane. We want to stay true to our long-term vision of automating every single aspect of your daily development workflow. Together, with the community, we have the experience and know-how to build a world-class, easy-to-use mobile-only CI, with the added benefits of being fully self-hosted and open source.
With this project, we don't just want to make using CI easier, we want to bring fastlane to the next level. While building fastlane.ci, we'll be introducing new features like visually previewing your Fastfile, automatically clearing old TestFlight testers from your account, getting notifications when your app gets approved, and more.
Interested? Be the first to hear about the official release
- This project is a work in progress (WIP) and shouldn't be used in production yet
- The idea is to build and iterate with the mobile development community out in the open
- We'd love your help to shape the product, check out CONTRIBUTING.md for more info
- Our complete task list is available on our public GitHub board
- We also have our current milestones listed
- We started a poll to get a better feeling of how you'd be using
fastlane.ci
, please comment and let us know.
- VISION.md: Describes the overall vision and idea of this project, with its core principals
- docs/SystemArchitecture.md: Describes the overall design architecture of
fastlane.ci
, including the controllers, services, data sources, and data objects - docs/ArtifactsAndBuilds.md: Describes how we store builds and their artifacts
- docs/use_cases: Describe the ideal use cases and the user flow
- docs/EnvironmentVariables.md: Describe the various environment variables that are available
Requires Ruby 2.3.3 or higher. macOS and Xcode are required when building iOS projects. Refer to the fastlane documentation for more information.
Right now, fastlane.ci
is in Alpha, we'd love for you to give it a try. Getting up and running isn't as smooth as it will be once we ship a public release, but it shouldn't be too hard:
- Open the Terminal on the Mac you want to run as
fastlane.ci
git clone https://github.com/fastlane/ci
cd ci
gem install bundler
bundle install
bundle exec rake prod
- Up at running at localhost:8080
Currently, Docker deployment is for Linux projects only.
- Install Docker
- Open the Terminal on the Mac or on a Linux you want to run as
fastlane.ci
git clone https://github.com/fastlane/ci
cd ci
docker-compose up
- Up at running at localhost:8080
- Visit localhost:8080
- Follow the onboarding instructions in your browser. In particular you'll have to create a separate GitHub account that will be used for all bot activities
Run the rake task: rake devbootstrap
.
- Install all dependencies (ruby, javascript)
- Add a pre-commit hook
bundle exec rake dev
Visit localhost:8080 to open the login
If you're having trouble and need to debug, you can add the following environment variables:
FASTLANE_CI_VERBOSE=1
and DEBUG=1
FASTLANE_CI_VERBOSE
enables extra logging which includes thread ids, and other non-essential information that could be useful during debugging.
bundle exec rspec
bundle exec rubocop -a
Interested? Be the first to hear about the official release
Are you passionate about fastlane already, and want to help us build fastlane.ci
? We're looking for engineers to join our team, drop us a message with your CV to [email protected].