Gitlab is a wonderful tool to create your own pipeline. Combined to Fastlane, you will be able to have quickly your own CI scalable and maintainable.

Register Gitlab Runner

In your Gitlab UI, go in Settings -> CI/CD


In this article, Self hosted CI will be installed on a MacOS.

Gitlab-Runner

GitLab Runner is an application that works with GitLab CI/CD to run jobs in a pipeline.

In order to perform your pipelines, we need to install runners with Homebrew:

brew install gitlab-runner


In some case, you could have your publisher emit some nullable value and don’t want it.

The operator compactMap publish all non-nil element. It can be useful if you don’t want to handle unwrapping in your sink or other combine operators.

You can find the playground here

More informations on Apple documentation


Firebase Test Lab is a cloud-based app-testing infrastructure. With one operation, you can test your Android or iOS app across a wide variety of devices and device configurations, and see the results — including logs, videos, and screenshots — in the Firebase console.

To ensure your app quality, Firebase Test Lab provides you with physical and virtual devices that allow you to run tests that simulate actual usage environments.

Build your project to test

To test Firebase Test lab, you can find a sample project here :

This app is composed of a label incremented by a button.

To make the application testable by Firebase…


In some case, when you want to use gem, it could be possible you are behind a proxy.

To avoid this case, you need to set your proxy’s information in your bash_profile.

Go to your home’s folder

cd ~/

Create your bash_profile

touch .bash_profile

Now you can edit your bash_profile and add this function

enableproxy() {
export HTTP_PROXY=http://my.proxy.here:port.number
export HTTPS_PROXY=http://my.proxy.here:port.number
export http_proxy=$HTTP_PROXY
export https_proxy=$HTTPS_PROXY
git config — global http.proxy http://my.proxy.here:port.number
git config — global https.proxy http://my.proxy.here:port.number
}
#Delete this line to proxy usage
enableproxy

Don’t forget to replace http://my.proxy.here:port.number with your own proxy’s URL

Back in your terminal, reload .bash_profile

. .bash_profile

That’s it


Sometimes, it could happened the Gradle Wrapper is not present in your project.

So it could be difficult to execute a specific gradle’s task

To generate your Gradle Wrapper, you have to insert this block on your build.gradle at the Project’s level, with your target gradle’s version

After this, run this task


Download the application “TestFlight” on the app store :

Open the invitation mail received from Eyelights :


Activate Bluetooth on MAC

Connect your device to your MAC by Bluetooth

Start a terminal et use this command :

screen /dev/tty.Bluetooth-Incoming-Port

Command to start screen

After this, you will see a blank screen :

Kevin ABRIOUX

Android & iOS, quality in software is 𝛼&ɷ

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store