• Stars
    star
    836
  • Rank 54,534 (Top 2 %)
  • Language
    Go
  • License
    MIT License
  • Created over 9 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Bitrise runner CLI - run your automations on your Mac or Linux machine -

Bitrise (offline) CLI

Discussion forum: https://discuss.bitrise.io/

Run your Bitrise automations with this CLI tool on any Mac or Linux machine, and use the same configuration on bitrise.io (automation service, with a mobile app focus).

Part of the Bitrise Continuous Integration, Delivery and Automations Stack, with stepman and envman.

For a nice & quick intro you should check: https://www.bitrise.io/cli

Install and Setup

The installation is quick and easy, check the latest release for instructions at: https://github.com/bitrise-io/bitrise/releases

Installing with Homebrew:

brew update && brew install bitrise

Optionally, you can call bitrise setup to verify that everything what's required for bitrise to run is installed and available, but if you forget to do this it'll be performed the first time you call bitrise run.

You can enable shell completion for the bitrise run command: https://blog.bitrise.io/workflow-id-completion

Tutorials and Examples

You can find examples in the _examples folder.

If you're getting started you should start with _examples/tutorials, this should guide you through the basics, while you'll already use bitrise (requires installed bitrise).

You can find a complete iOS sample project at: https://github.com/bitrise-io/sample-apps-ios-with-bitrise-yml

Tooling support & JSON output format

bitrise CLI commands support a --format=[format] parameter. This is intended mainly for tooling support, by adding --format=json you'll get a JSON formatted output on Standard Output.

This is still work-in-progress, we're working on providing the --format param to every command except run.

Every error, warning etc. message will go to StdErr; and on the StdOut you should only get the valid JSON output.

An example calling the version command:

$ bitrise version --format=json

Will print {"version":"1.2.4"} to the Standard Output (StdOut).

Share your Step

You can use your own Step as you can see in the _examples, even if it's not yet committed into a repository, or from a repository directly.

If you would like to share your awesome Step with others you can do so by calling stepman share and then following the guide it prints.

Documentation

We added some documents to make it a bit easier to get started with Bitrise CLI. The documentation includes a quick and a little longer guides for CLI, a React Native project workflow guide and an overview of the Step share process. You can find them in the _docs folder.

Development

Guidelines

  • Easy to use: the UX for the end-user, always keep it in mind, make it a pleasant experience to work with this tool (and all of the Bitrise tools)!
  • Code should be kept simple: easy to understand, easy to collaborate/contribute (as much as possible of course).
  • Compatibility: never do an incompatible change, unless you can't avoid it. Release new features as additional options, to not to break existing configurations.
  • Stability: related to compatibility, but in general stability is really important, especially so in a CI/automation environment, where you expect fully reproducible outcomes.
  • Flexibility: should also be kept in mind, but only if it does not affect the previous points.

Updating dependencies

To do a full dependency update use bitrise-tools/gows, for a clean workspace:

gows clear && gows bitrise run dep-update

to test that all dependency is included:

gows clear && gows go test ./... && gows go install && gows bitrise run test

and/or with docker-compose:

docker-compose build && docker-compose run --rm app go test ./...

Local Dev Workflow

The following commands will work to get you started using a text editor such as VCSCode or similar.

All commands should be run from the root directory.

  • Setup:

    mkdir -p ./_bin

  • Build:

    go build -o ./_bin

  • Run:

    ./_bin/bitrise COMMAND

More Repositories

1

android

ARCHIVE: This repository is sunsetted. The new image's repository will be made available later. | Android Docker image
Dockerfile
399
star
2

codesigndoc

Your friendly iOS Code Signing Doctor
Go
317
star
3

envman

Environment variable manager
Go
203
star
4

devcenter

HTML
168
star
5

bitrise.io

Bitrise.io public issues
162
star
6

bitrise-steplib

New Bitrise StepLib
151
star
7

bitrise-workflow-editor

Bitrise Workflow Editor
JavaScript
111
star
8

ipa_analyzer

iOS IPA file analyzer: collects embedded mobileprovisioning and Info.plist information from a .ipa, can generate pretty printed JSON output.
Ruby
75
star
9

bitrise-webhooks

Bitrise Webhooks processor
Go
59
star
10

workflow-recipes

50
star
11

android-ndk

ARCHIVE: This repository is sunsetted. The new image's repository will be made available later. | Android with pre-installed NDK docker image. Based on the base Android docker image ( https://github.com/bitrise-io/android ), and extends it with the NDK
Shell
43
star
12

go-utils

Common, utility packages for Go
Go
37
star
13

ioscodesigning

HTML
31
star
14

go-xcode

Go
29
star
15

stepman

Step collection manager
Go
25
star
16

Fruta

Swift
18
star
17

bitrise-base

ARCHIVE: This repository is sunsetted. The new image's repository will be made available later. | Base Bitrise Docker image
Dockerfile
18
star
18

ipa_install_plist_generator

Generates a .plist which can be used for an IPA install & can generate an install link for the .plist file
Ruby
15
star
19

trace-cocoa-sdk

Catch bugs before they reach production β€” get detailed crash reports and monitor how your app is performing across the entire install base.
Swift
15
star
20

bitrise-contrib

13
star
21

replica

DEPRECATED - Create a CI environment (with Docker / virtual machine)
Go
11
star
22

android-demo-app

Kotlin
10
star
23

xcodebuild-unittest-miniserver

Mini server (written in Go) to perform Xcode Unit Tests through SSH
Go
10
star
24

gows

Go Workspace / Environment Manager, to easily manage the Go Workspace during development.
Go
9
star
25

fastlane

Sample app for using fastlane http://fastlane.tools on Bitrise
Swift
9
star
26

sample-apps-ios-with-bitrise-yml

Simple iOS sample app with bitrise.yml
Swift
8
star
27

releaseman

Your friendly Release manager.
Go
7
star
28

build.issues

Issue / bug tracker for build related issues
7
star
29

stacks

Stack report static site
HTML
7
star
30

android-espresso-ui-test-sample

Java
6
star
31

sample-apps-ios-simple-objc

This is a simple iOS app project for testing and experimenting with Bitrise
Objective-C
6
star
32

bitrise-plugins-analytics

Go
6
star
33

bitrise-plugins-io

A Terminal / Command Line interface for bitrise.io, to manage your apps on bitrise.io right from your terminal / command line.
Go
6
star
34

steps-firebase-test-lab

Bitrise step for Firebase Test Lab
Go
6
star
35

xcode-project

Go
6
star
36

bitrise-init

Go
6
star
37

bitrise-plugins-step

Bitrise Plugin to interact with steps, list them, retrieve information, or create your own!
Go
6
star
38

sample-apps-android-sdk22

Android Sample, requires Android SDK 22
Java
6
star
39

go-android

Go
5
star
40

bitrise-blog

HTML
5
star
41

cmd-bridge

Stripped down, minimal server written in go which executes a command line command
Go
5
star
42

sample-swift-project-with-parallel-ui-test

Swift
5
star
43

ionic-2

JavaScript
5
star
44

sample-apps-react-native-expo

JavaScript
4
star
45

android-ndk-lts

ARCHIVE: This repository is sunsetted. The new image's repository will be made available later. | LTS "pin" of the android-ndk Bitrise Docker image
Dockerfile
4
star
46

sample-apps-wear-os

Sample Android App having a Wear OS module
Java
4
star
47

android-sdk22-code-sign

Android sample, using SDK v22 and includes code signing steps (both for creating the required signing files and to use it)
Java
4
star
48

sample-apps-xamarin-android

C#
4
star
49

sample-project-react-native

Objective-C
3
star
50

bitrise-yml-collection

Collection of example `bitrise.yml` files.
3
star
51

Bitrise-Flutter-Sample

Dart
3
star
52

Bitrise-iOS-Sample

Swift
3
star
53

android-multiple-test-results-sample

Java
3
star
54

go-steputils

Go
3
star
55

cheat-sheets

Cheat Sheets
3
star
56

addons-template-service

Go
3
star
57

sample-apps-unity3d

C#
3
star
58

github-license-collector

GitHub License Collector: collect all licenses used in repos of a GH org and in all of the dependencies of those
Go
3
star
59

bitrise-log-analyzer

Bitrise Log Analyzer tool
Go
3
star
60

steps-xcode-builder

DEPRECATED - in favor of the new Xcode steps: https://github.com/bitrise-io/?utf8=βœ“&query=steps-xcode-
Shell
3
star
61

bitrise-cli-webui

Simple local Web UI for Bitrise CLI - Work-in-Progress
Go
3
star
62

post-jira-comment-with-build-details-step

Shell
3
star
63

bitrise-oauth

Go
2
star
64

Bitrise-iOS-Fastlane-Sample

Minimal Fastlane iOS Sample
Swift
2
star
65

ReactNativeSample

Sample up for building React Native projects on bitrise.io
Objective-C
2
star
66

appetize-deploy-step

Shell
2
star
67

xamarin-builder

Ruby
2
star
68

sample-bitrise-yml-from-repo

Sample project, demonstrates how you can use your `bitrise.yml` directly from your repository for builds on bitrise.io
2
star
69

gotgen

Minimalistic Go Template based Generator
Go
2
star
70

internal-sample-app-ionic

TypeScript
2
star
71

steps-utils-bash-toolkit

Bash script toolkit: script snippets for debugging, testing, ...
Shell
2
star
72

Bitrise-Android-ProductFlavors-Sample

Kotlin
2
star
73

bitrise-step-collection

DEPRECATED - in favor of the new, unified StepLib: https://github.com/bitrise-io/bitrise-steplib
Ruby
2
star
74

bitrise-add-new-project

Go
2
star
75

steps-ipa-inspector

Ruby
2
star
76

bitrise-build-cache-cli

Bitrise Build Cache CLI
Go
2
star
77

bitrise-script-collection

Collection of copy-paste ready scripts which you can run on Bitrise.io
Shell
2
star
78

bitrise-docker-ssh

Dockerfile
2
star
79

go-xamarin

Go
2
star
80

goinp

Interactive CLI in Go (test)
Go
2
star
81

Bitrise-Android-Modules-Sample

Kotlin
2
star
82

sample-apps-ios-xcode7

Sample Xcode 7 iOS project
Swift
2
star
83

depman

DEPRECATED - Simple dependency manager
Go
2
star
84

steps-bash-script

DEPRECATED - use https://github.com/bitrise-io/steps-script instead
Shell
2
star
85

sample-apps-ios-react-native

2
star
86

sample-apps-ios-cocoapods

A sample iOS app which uses CocoaPods
Objective-C
2
star
87

Bitrise-Ionic-Sample

Sample Ionic app with tabs. It is using Cordova and Angular.
TypeScript
2
star
88

identity-info-server

Go
2
star
89

android-ndk-sample-app

Trivial NDK example, based on Android NDK hello-jni sample & https://github.com/mattlogan/NDKTest projects
Java
2
star
90

sample-apps-cordova-with-karma-jasmine

Java
1
star
91

sample-apps-ios-simple-objc-xcode9

Objective-C
1
star
92

bitrise-yml-converter

Bitrise YML converter
Go
1
star
93

sample-artifacts

1
star
94

xcodebuild-export-options-generator

Ruby
1
star
95

bitrise-plugin-hello-world

Hello world (base working example) plugin for bitrise; `bitrise :hello-world`
Go
1
star
96

bitrise-plugins-example

Shell
1
star
97

sample-apps-ios-unit-test

Simple iOS Unit Test Sample/Test app
Objective-C
1
star
98

addons-test-backend

Go
1
star
99

datapi

A very simple data collection / storage service
Ruby
1
star
100

sample-tvos-app

Swift
1
star