メインコンテンツまでスキップ

Network endpoints for firewalls and VPNs

If your machine or your CI runner sits behind a corporate VPN, a firewall, or an outbound proxy, you must make sure the Bitrise Build Cache can access a handful of Bitrise hosts.

The allowlist in this document covers:

  • The Bitrise Build Cache CLI.
  • The Gradle plugins it installs.
  • The Bazel configuration it writes.
  • Everything the Xcode and ccache proxies connect to.

It applies to local development machines and to CI runners outside Bitrise alike. On Bitrise-hosted machines there's nothing to do: the traffic stays inside our datacenter.

AllowlistClick to copy link

Allowlist these hosts and ports:

*.services.bitrise.io :443, :444
app.bitrise.io :443
oauth.bitrise.io :443
api.bitrise.io :443

That's the complete set. If you need specific host names instead of using wildcards, the sections below break it down per build tool.

Non-Bitrise hosts

Installing and updating the CLI itself goes to GitHub and Google Artifact Registry, and the Gradle init script resolves plugins from the Gradle Plugin Portal, Maven Central, and JitPack. Those aren't Bitrise hosts, so they aren't listed here, but your build needs them too.

Endpoints used on every buildClick to copy link

Allowlist the sections that match the build tools you actually run. React Native builds need the Gradle, Xcode, and ccache sections together.

GradleClick to copy link

HostPortProtocolPurpose
bitrise-accelerate.services.bitrise.io443gRPC/TLSRemote build cache, and the Test Distribution endpoint
gradle-analytics.services.bitrise.io443 and 444gRPC/TLSPlugin analytics, including per-task and task input file data
gradle-sink.services.bitrise.io443HTTPSAnalytics HTTP sink

BazelClick to copy link

HostPortProtocolPurpose
bitrise-accelerate.services.bitrise.io443gRPC/TLSRemote cache and Remote Build Execution
flare-bes.services.bitrise.io443gRPC/TLSBuild Event Service

XcodeClick to copy link

HostPortProtocolPurpose
bitrise-accelerate.services.bitrise.io443gRPC/TLSCompilation cache, through the xcelerate proxy
xcode-analytics.services.bitrise.io443HTTPSInvocation analytics, and DerivedData save and restore
multiplatform-analytics.services.bitrise.io443HTTPSInvocation analytics of the xcodebuild wrapper

ccacheClick to copy link

HostPortProtocolPurpose
bitrise-accelerate.services.bitrise.io443gRPC/TLSObject cache, through the storage helper
multiplatform-analytics.services.bitrise.io443HTTPSInvocation analytics

React NativeClick to copy link

For a React Native build, you need:

  • Everything in the Gradle, Xcode, and ccache sections.
  • multiplatform-analytics.services.bitrise.io on port 443 for the React Native invocation record.

Endpoints used during activation and loginClick to copy link

The CLI reaches these while you activate the cache or log in:

HostPortPurpose
app.bitrise.io443Benchmark phase status, invocation links, OAuth client metadata, and the /oidc/token endpoint
oauth.bitrise.io443OAuth issuer for bitrise-build-cache auth login
api.bitrise.io443The workspace picker of the login flow

If you authenticate with the BITRISE_BUILD_CACHE_AUTH_TOKEN Env Var instead of an interactive login, you can drop oauth.bitrise.io and api.bitrise.io from the allowlist.