Skip to content

Commit

Permalink
Remove old CIs and move them to archive
Browse files Browse the repository at this point in the history
  • Loading branch information
vgaidarji committed Mar 15, 2024
1 parent 3f29854 commit 7934bef
Show file tree
Hide file tree
Showing 26 changed files with 29 additions and 30 deletions.
21 changes: 10 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,24 @@ Integration (comparison) of different continuous integration services on Android
### CI's integration

* [x] [Jenkins](./JENKINS.md)
* [x] [Travis CI](./TRAVIS.md) [![Build Status](https://travis-ci.org/vgaidarji/ci-matters.svg?branch=master)](https://travis-ci.org/vgaidarji/ci-matters)
* [x] [Bitrise](./BITRISE.md) [![Build Status](https://app.bitrise.io/app/002b43ae8a42b6b1/status.svg?token=xT4EDBQWGNcSWJveU6IEVA&branch=master)](https://app.bitrise.io/app/002b43ae8a42b6b1)
* [x] [TeamCity](./TEAM_CITY.md)
* [x] [BuddyBuild](./BUDDY_BUILD.md) [![BuddyBuild](https://dashboard.buddybuild.com/api/statusImage?appID=58398ac5beb35b010082e315&branch=master&build=latest)](https://dashboard.buddybuild.com/apps/58398ac5beb35b010082e315/build/latest)
* [x] [Shippable](./SHIPPABLE.md) [![Run Status](https://api.shippable.com/projects/5832c72ab8b8e41000a5eb5c/badge?branch=master)](https://app.shippable.com/projects/5832c72ab8b8e41000a5eb5c) [![Coverage Badge](https://api.shippable.com/projects/5832c72ab8b8e41000a5eb5c/coverageBadge?branch=master)](https://app.shippable.com/projects/5832c72ab8b8e41000a5eb5c)
* [x] [Circle](./CIRCLE.md) [![CircleCI](https://circleci.com/gh/vgaidarji/ci-matters.svg?style=svg)](https://circleci.com/gh/vgaidarji/ci-matters)
* [x] [GitHub Actions](./GITHUB_ACTIONS.md)

### TODO

* [ ] Nevercode.io
* [ ] Codemagic.io
* [ ] Gitlab CI
* [ ] Drone.io

### Archive

Following CIs are no longer integrated (either because they have been discontinued or due to pricing policy change such as Travis).
* [x] [Travis CI](archive/travis/TRAVIS.md) [![Build Status](https://travis-ci.org/vgaidarji/ci-matters.svg?branch=master)](https://travis-ci.org/vgaidarji/ci-matters)
* [x] [BuddyBuild](archive/buddybuild/BUDDY_BUILD.md) [![BuddyBuild](https://dashboard.buddybuild.com/api/statusImage?appID=58398ac5beb35b010082e315&branch=master&build=latest)](https://dashboard.buddybuild.com/apps/58398ac5beb35b010082e315/build/latest)
* [x] [Shippable](archive/shippable/SHIPPABLE.md) [![Run Status](https://api.shippable.com/projects/5832c72ab8b8e41000a5eb5c/badge?branch=master)](https://app.shippable.com/projects/5832c72ab8b8e41000a5eb5c) [![Coverage Badge](https://api.shippable.com/projects/5832c72ab8b8e41000a5eb5c/coverageBadge?branch=master)](https://app.shippable.com/projects/5832c72ab8b8e41000a5eb5c)

---

### Comparison
Expand All @@ -30,15 +34,12 @@ This table should help people make a decision which CI to choose for the project
| ------------- |:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
| Jenkins |:star:|:star:|:star:|:star:|:star:|:bust_in_silhouette::raised_hands:|:radio:/:computer:|:free:|
| TeamCity |:star:|:star:|:star:|:star:|:star:|:bust_in_silhouette::raised_hands:/:cloud:|:computer:|:moneybag::moneybag::moneybag:|
| Travis CI |:star:|:star:|:star:|:star:|:x:|:cloud:|:computer:|:moneybag::moneybag:|
| Bitrise |:star:|:star:|:star:|:star:|:x:|:cloud:|:computer:|:moneybag::moneybag:|
| Shippable |:star:|:star:|:star:|:star:|:x:|:cloud:|:radio:|:moneybag:|
| Circle CI |:star:|:star:|:star:|:star:|:x:|:cloud:|:computer:|:moneybag::moneybag:|
| Buddybuild |:star:|:star:|:x:|:x:|:x:|:cloud:|:computer:|:moneybag::moneybag:|
| GitHub Actions|:star:|:star:|:star:|:star:|:x:|:cloud:|:computer:|:free:|
| Gitlab CI |.|.|.|.|.|.|.|:moneybag:|
| Nevecode.io |.|.|.|.|.|.|.|:moneybag::moneybag:|
| Drone.io |.|.|.|.|.|.|.|:moneybag:|
| Codemagic.io |.|.|.|.|.|.|.|:moneybag:|

|. |. |.|. |. |. |. |. |
|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
Expand Down Expand Up @@ -67,12 +68,10 @@ What might matter is the starting price for paid plan:
* [Travis CI](https://travis-ci.com/plans) - starts with **69$/month.** (1 concurrent build, ∞ projects, ∞ build time)
* [Bitrise](https://www.bitrise.io/pricing) - starts with **50$/month.** (1 concurrent build, ∞ projects, 45 min. max build time)
* [TeamCity](https://www.jetbrains.com/teamcity/buy/#license-type=new-license) - starts with **299$.** (4 concurrent builds, 30 project configurations, ∞ build time)
* [Shippable](https://app.shippable.com/pricing.html) - starts with **25$/month.** (2 concurrent builds, ∞ projects, ∞ build time)
* [Gitlab CI](https://about.gitlab.com/products/) - starts with **15$/month.** (2 concurrent builds, ∞ projects, ∞ build time)
* [Circle CI](https://circleci.com/pricing/) - starts with **39$/month.** (2 concurrent builds, ∞ projects, 500 minutes build time per month)
* [Nevercode.io](https://nevercode.io/pricing/) - starts with **5$/month.** (1 concurrent build, ∞ projects, 90 min. max build time)
* [Drone.io](https://drone.io/pricing) - starts with **25$/month.** (1 concurrent build, 5 private projects, ∞ build time)
* [Buddybuild](https://www.buddybuild.com/pricing/) - starts with **79$/month.** (1 concurrent build, ∞ projects, ∞ build time)

#### Presentation

Expand All @@ -85,7 +84,7 @@ It doesn't contain information about ALL existing CI services, but should be a g

In few words:
- [Jenkins](https://jenkins.io/)/[TeamCity](https://www.jetbrains.com/teamcity/) for complex workflow
- [Travis CI](https://travis-ci.org/)/[Circle CI](https://circleci.com/) for open-source projects
- [Circle CI](https://circleci.com/) for open-source projects
- [Bitrise.io](https://bitrise.io/) for any workflow

---
Expand Down
18 changes: 9 additions & 9 deletions BUDDY_BUILD.md → archive/buddybuild/BUDDY_BUILD.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,17 @@ which are sufficient to configure the project.

1. Configure environment variables in `AppSettings -> Build Settings -> Environment Variables`

<img src="/screenshots/buddy_build_env_variables.png">
<img src="/archive/buddybuild/screenshots/buddy_build_env_variables.png">

2. Configure email notifications and notifications rules

<img src="/screenshots/buddy_build_email_notifications.png">
<img src="/archive/buddybuild/screenshots/buddy_build_email_notifications.png">

3. Configure UI tests

<img src="/screenshots/buddy_build_ui_tests_real_devices.png">
<img src="/archive/buddybuild/screenshots/buddy_build_ui_tests_real_devices.png">

<img src="/screenshots/buddy_build_ui_tests_emulator.png">
<img src="/archive/buddybuild/screenshots/buddy_build_ui_tests_emulator.png">

**Unfortunately there's no possibility to customize Android emulator settings.**

Expand All @@ -32,7 +32,7 @@ which are sufficient to configure the project.

4. Install BuddyBuild SDK

<img src="/screenshots/buddy_build_install_sdk.png">
<img src="/archive/buddybuild/screenshots/buddy_build_install_sdk.png">

BuddyBuild can automatically configure itself in a project,
but in this case project might not compile if custom code style checks configured.
Expand All @@ -50,17 +50,17 @@ via `buddybuild_postclone.sh`, `buddybuild_prebuild.sh` and `buddybuild_postbuil

###### BuddyBuild shows JUnit reports automatically (not very informative):

<img src="/screenshots/buddy_build_junit_tests.png">
<img src="/archive/buddybuild/screenshots/buddy_build_junit_tests.png">

For some reason `Code coverage` is 0%

<img src="/screenshots/buddy_build_junit_tests_coverage.png">
<img src="/archive/buddybuild/screenshots/buddy_build_junit_tests_coverage.png">

and `Builds` tab shows wrong coverage 91.1% coverage instead of 100%:

<img src="/screenshots/buddy_build_builds_view.png">
<img src="/archive/buddybuild/screenshots/buddy_build_builds_view.png">

###### BuddyBuild shows UI reports automatically (not very informative):

<img src="/screenshots/buddy_build_ui_tests.png">
<img src="/archive/buddybuild/screenshots/buddy_build_ui_tests.png">

File renamed without changes.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
18 changes: 9 additions & 9 deletions SHIPPABLE.md → archive/shippable/SHIPPABLE.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,45 +20,45 @@ More info about configuration file can found [here](http://docs.shippable.com/ci

3. Create [secure environment variables](http://docs.shippable.com/ci/advancedOptions/environmentVariables/#secure-variables)

<img src="/screenshots/shippable_env_variables.png">
<img src="/archive/shippable/screenshots/shippable_env_variables.png">

*Variables should be separated with space.*

This operation creates environment variables and stores them in a secure place.
Shippable provides secure string with encrypted variables,
which should be used in `shippable.yml` or `shippable.resources.yml` files.

<img src="/screenshots/shippable_env_variables_encrypted.png">
<img src="/archive/shippable/screenshots/shippable_env_variables_encrypted.png">
Copy encrypted string and place it into `shippable.yml`:

<img src="/screenshots/shippable_env_variables_in_yml.png">
<img src="/archive/shippable/screenshots/shippable_env_variables_in_yml.png">

4. Choose existing docker image to use or create your own and define it in `shippable.yml`:

<img src="/screenshots/shippable_docker_image.png">
<img src="/archive/shippable/screenshots/shippable_docker_image.png">

It's good idea to check what provides docker image by checking it's Dockerfile ([vgaidarji/docker-android-shippable](https://hub.docker.com/r/vgaidarji/docker-android-shippable/~/dockerfile/)).

5. Configure [build steps](http://docs.shippable.com/ci/shippableyml/) in `shippable.yml`:

<img src="/screenshots/shippable_ci_section.png">
<img src="/archive/shippable/screenshots/shippable_ci_section.png">

In this case we install missing Android dependencies, run Android emulator, `build/test/analyze` the project
and publish code coverage results to Shippable. Shippable accepts code coverage reports only in Cobertura format.

6. Configure notifications:

<img src="/screenshots/shippable_notifications.png">
<img src="/archive/shippable/screenshots/shippable_notifications.png">

#### Reports

###### JUnit test results:

<img src="/screenshots/shippable_junit_reports.png">
<img src="/archive/shippable/screenshots/shippable_junit_reports.png">

<img src="/screenshots/shippable_code_coverage.png">
<img src="/archive/shippable/screenshots/shippable_code_coverage.png">

###### Build information:

<img src="/screenshots/shippable_build_information.png">
<img src="/archive/shippable/screenshots/shippable_build_information.png">
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion TRAVIS.md → archive/travis/TRAVIS.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,4 @@ Travis CI understands when the change is pushed to github and starts the build a

In order to build the project we need to have environment variables set in project settings:

<img src="/screenshots/travis_env_variables.png">
<img src="/archive/travis/screenshots/travis_env_variables.png">
File renamed without changes

0 comments on commit 7934bef

Please sign in to comment.