January 2024 Summaries
7 posts from Bitrise
Filter
Month:
Year:
Post Summaries
Back to Blog
In the context of continuous integration (CI), latency caused by long build durations can lead to extended feedback loops, degraded developer experience, and increased CI infrastructure costs. To overcome this, implementing a remote build cache is crucial, but its efficiency depends on several performance bottlenecks. Geographic distance between the cache storage location and where builds are running significantly impacts performance, with some regions experiencing negative effects due to latency. The read speed of cache entries also plays a critical role, which can be improved by using high-performance storage solutions such as in-memory storage for hot entries and high-performance SSDs for less frequently accessed entries. Furthermore, optimizing data management and leveraging efficient network protocols like HTTP/2 are essential to deliver a highly performant caching platform.
Jan 31, 2024
772 words in the original blog post.
The Bitrise Build Cache for Gradle is a feature that enables users to store and reuse outputs from previous CI builds, reducing build times by up to 10x. The cache hit rate metric indicates the percentage of times a build artifact is found in the cache, with higher rates indicating effective caching of frequently used dependencies and build artifacts. Bitrise Insights provides a user-friendly UI for analyzing cache hit rates, allowing users to identify areas that require attention and optimize their cache configuration. By drilling down into individual components such as Pipelines, Stages, Steps, and tasks, users can pinpoint root causes for low cache hit rates and take proactive measures to improve performance. The feature is available in Bitrise Insights and offers alerts to notify users when their cache hit rate falls below a certain threshold, empowering them to take action promptly. Upcoming updates will introduce new features such as Gradle Task Duration and network usage metrics to further enhance build performance analysis.
Jan 31, 2024
819 words in the original blog post.
We compared the build durations of open-source Bazel and Gradle apps on CircleCI with and without Bitrise Build Cache, a remote build caching platform that reuses previously saved build and test outputs to minimize work done in subsequent builds. With Bitrise Build Cache enabled for Bazel app builds, we discovered an 83% decrease in build times, while for Gradle app builds, it resulted in a 72% decrease. Additionally, we observed the elimination of "Infrastructure Fail" errors, which were encountered during benchmark tests without Bitrise Build Cache due to resource exhaustion on CircleCI Linux Large machine, but not with the caching enabled platform.
Jan 31, 2024
866 words in the original blog post.
Caching in continuous integration (CI) is crucial for achieving reliable and fast build processes. It involves storing frequently used resources or outputs to avoid repeated work, leading to shorter build durations and improved workflow efficiency. Two types of caching are explored: dependency caching and build caching. Dependency caching reduces the need for repeatedly fetching unchanged dependencies from the network during builds by storing them in a cache with unique identifiers. Build caching, on the other hand, stores outputs of intermediate build steps, like compiled code or test results, for reuse in subsequent builds. Both types of caching can benefit large projects and teams, reducing CI build times, local build times, resource consumption, and improving developer productivity and morale. The choice between dependency caching and build caching depends on various factors, including application complexity, dependency manager behavior, build frequency, network performance, and types of dependencies.
Jan 31, 2024
1,258 words in the original blog post.
This integration of LaunchDarkly's feature flags with Release Management in Bitrise provides a more transparent and centralized solution for mobile app releases, allowing developers to control the activation or deactivation of specific features through a simple toggle switch, perform A/B testing, or instantly roll back features without requiring a new code release. The integration gives users an overview of their app's feature flags directly from the Release Management platform, streamlining the app release process and eliminating the need to switch tabs or platforms. It also provides detailed information about feature flag rules and targets, display frequency, and allows for fine-grained tweaks to targeting rules, percentage rollouts, and other specific configurations on the details page within LaunchDarkly. The integration is straightforward to set up, requiring only a LaunchDarkly account and connecting it to Bitrise through Single Sign-On (SSO). It offers numerous benefits, including greater transparency of real-time releases, streamlined workflows for Release Owners, streamlined team communication, and a user-friendly interface that empowers non-technical stakeholders to independently manage releases and targeting of features.
Jan 25, 2024
1,062 words in the original blog post.
The upcoming update for Bitrise's Linux stacks will bring Ubuntu 22.04 Jammy Jellyfish as the default version, which is the latest LTS release with an End of Standard Support date in June 2027. This update aims to enhance efficiency, security, and user experience by introducing changes such as JDK 17 as the default Java version, Android NDK upgrade, preinstalled emulator system images, and updated tooling for React Native, Node.js, Kotlin CLI, Flutter, and more. The update also marks the deprecation of Ubuntu 20.04 Focal Fossa in April 2025, with all apps building on this stack being migrated to the new Ubuntu 22.04 stack by October 2024. Users are advised to test, adapt, and be prepared for these changes.
Jan 25, 2024
1,167 words in the original blog post.
Git Insights is a new feature within Bitrise Insights, designed to boost Git collaboration, enhance productivity, and improve code quality. It offers real-time data on pivotal DORA metrics such as cycle time and merge frequency, enabling Engineering Managers, Team Leads, and Product Managers to monitor team performance, identify areas of improvement, and optimize processes. This feature addresses the challenges of gaining a comprehensive understanding of mobile dev teams' efficiency, providing fragmented insights and room for human error due to manual data entries and juggling multiple tools. By leveraging Git Insights, teams can streamline operations, improve app store optimization rankings, and increase team morale, ultimately driving business success.
Jan 22, 2024
1,150 words in the original blog post.