Weekly Virtual Machine / Stack updates - 2017.07.15

Highlights

Android/Linux stacks

Xcode stacks

  • Xcode 9.0.x stack: upgrade from Xcode 9 beta 2 to Xcode 9 beta 3

Xamarin stacks

This week’s changes (diffs)

https://github.com/bitrise-io/bitrise.io/pull/150

Stack System Reports

You can find the full system report of all of the available Stacks on GitHub: https://github.com/bitrise-io/bitrise.io/tree/master/system_reports.

If you’d like to add additional tools to be pre-installed you can find the instructions on GitHub, for both the Linux and for the macOS stacks.

Information about Stack types & update schedules can be found here: discuss.bitrise.io/t/281.

Happy Building!

All stacks passed our tests and ready for deploy on Saturday :rocket:

New stacks deployed and are available in production :tada:

Android SDK update note: the previous android sdk update ... command is no longer available in the latest Android SDK.

If you install packages manually with android sdk update please change them to sdkmanager PACKAGE.

E.g. instead of:

echo y | android update sdk --no-ui --all --filter build-tools-24.0.1 | grep 'package installed'

use:

sdkmanager "build-tools;24.0.1"

That said, if you can, please use the the Install Missing Android Tools step instead, that should be able to detect and install all the tools your Android project requires but are not preinstalled.


If you use the old android update sdk command on a stack where that’s no longer available (on the LTS Android stack it is still available of course), you’ll get an error like:

*************************************************************************
The "android" command is deprecated.
For manual SDK, AVD, and project management, please use Android Studio.
For command-line tools, use tools/bin/sdkmanager and tools/bin/avdmanager
*************************************************************************
Filter extra-android-support not supported

According to changelog on Notas da versão do Ferramentas do SDK  |  Android Studio  |  Android Developers for version 26.0.0 (so it should work in newer versions unless noted in next changelogs):

tools/android now attempts to reproduce the functionality of android in tools prior to version 25.3.0 by invoking the new tools.

  • All avd, target, and device commands should work as before.
  • sdk commands will be translated to similar commands using tools/bin/sdkmanager on a best-effort basis.

Here is the help message from 26.0.2:

$ $ANDROID_HOME/tools/android


The “android” command is deprecated.
For manual SDK, AVD, and project management, please use Android Studio.
For command-line tools, use tools/bin/sdkmanager and tools/bin/avdmanager


Invalid or unsupported command “”

Supported commands are:
android list target
android list avd
android list device
android create avd
android move avd
android delete avd
android list sdk
android update sdk

According to the last line: android update sdk is supported. So it is only deprecated but not unavailable.

Isn’t only this: Filter extra-android-support not supported an error?

1 Like

You might be right @koral, although the original report came from a user who tried to install build-tools-x.x.x which did work previously but not since this update, so I thought they already made the change. Might have been just something else.

In any case switching to sdkmanager is advised, but indeed that might not be required in every case just yet.

:+1: Totally.

It seems that that action has to be confirmed:

Continue? (This prompt can be suppressed with the --use-sdk-wrapper command-line argument
or by setting the USE_SDK_WRAPPER environment variable) [y/N]: 
1 Like

That doesn’t change the fact that it have to be changed :wink: And if you change the command, it’s the best time to opt to use the new solution (sdkmanager) instead of the old one (android update sdk) IMO :slight_smile:

Just checked and there was no output like that there, the only output generated by the android update sdk command was:

Warning: File /root/.android/repositories.cfg could not be loaded.

And then it exited with exit code 1