1. How to use Jenkins plugins in Jenkins Pipeline

    Pipeline and plugins

    Jenkins Pipeline is a suite of plugins which supports implementing and integrating continuous delivery pipelines into Jenkins.

    Not all Jenkins plugins are compatible with Jenkins Pipeline (check COMPATIBILITY.md).

    With “old” Jenkins plugins installation and usage is straightforward. But it’s not true for Jenkins Pipeline. Even if you find a plugin which is compatible with Jenkins Pipeline, it’s not always obvious how to use it in Jenkinsfile.

    Continue reading …
  2. Automatically install Android dependencies in CI

    Sdkmanager

    Not long ago Google deprecated android command and executing it in command line we get next output:

    deprecated android command

    It’s advised to use new command sdkmanager.

    We can install Android dependencies from command line using sdkmanager command. But before installation developer must accept licenses. On a local machine it’s easy, just run sdkmanager --licenses command and type y few times (up to ~6 licenses).

    On remote machine (usually in CI), where the goal is to automate everything, would be perfect to accept licenses automatically.

    Continue reading …
  3. Let's burn some time in the meetings

    When you’re a developer and you attend meetings every day you get the feeling of the wasted time.

    Instead of writing code you are in the meetings.
    Instead of finishing X tasks per day you finish 50% of tasks due the time spent in the meetings.
    Instead of spending most productive time in the morning on development you are attending the meetings.

    Continue reading …
  4. Jenkins LIFX notifier plugin

    Some time ago I’ve encountered a LIFX smart bulbs. These are the bulbs with a chip inside - 50% bulb, 50% chip. There’re mobile applications for easy configuration and remote control of the bulb. Nothing special here, it simply works and is very convenient to have such bulbs in dormitory.

    Brilliant idea time

    99% of ideas which come to our minds either were already implemented by someone else or they are shit.

    And as it always happens, developer inside me generated an idea, which was implemented by someone else already.

    The idea was to connect a LIFX bulb to Jenkins server and update bulb color according to a job state.

    Continue reading …
  5. Analyze Stack Trace like a boss!

    In this post we’ll talk about amazing feature Analyze Stack Trace available in AndroidStudio IDE.

    A stack trace is generated whenever our app crashes because of an error or an exception. Developing a 100% stable Android application is near to impossible. Application might not crash on our real device or emulator, but there’s a big chance that it will crash on other devices (e.g. Samsung).

    Due to that fact analyzing stack traces is an essential part of Android developer work.

    Continue reading …
  6. Tabless programming in AndroidStudio

    Not long ago I realized that I’m not using all the tabs I open in IDE. All these open tabs just annoy me, when I’m switching between classes.

    Lots of tabs

    Even if I work on a screen with big resolution and 7-10 tabs fit on screen - I’m not using all of them. Even more, I need only 1-2-3 classes open at particular time.

    All the IDE’s, I’ve used before (VisualStudio, Eclipse, Intellij IDEA), were using tabs by default. But if I’m not using all these tabs, can I live without them? The answer is YES. So obvious :smile:.

    Continue reading …
  7. How to build Cordova-based Android project on bitrise.io

    Bitrise is a Mobile Continuous Integration and Delivery service. It has a lot of integrations and the number of integrations increases very fast. The best thing about integrations is that they are completely open source.

    Prehistory

    Bitrise provides range of stacks, and you can decide which one to choose for your project. I’m doing Android development and everything related to Android is automatically interesting to me. I wanted to contribute to bitrise-steps something related to Android. Inspiration came from bitrise-user-voice and I’ve chosen Install Cordova and Ionic. Both Cordova and Ionic platforms were new to me, which even more increased my interest.

    Continue reading …
  8. Obsidian theme for rouge syntax highlighter

    At the time when my personal blog configuration was quite finished, I was looking at Jekyll’s syntax highlighter rouge, which uses monokai theme by default:

    Monokai code theme

    The monokai theme looks pretty much ok, but I got used to another amazing theme - Obsidian. I tried to find this theme on the Internet, and there was no “ready-to-use” Obsidian theme for rouge.

    Continue reading …