<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Robbie Cargill</title>
    <description>The latest articles on Forem by Robbie Cargill (@r0bbie).</description>
    <link>https://forem.com/r0bbie</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F544233%2Fc9427e5b-9bb0-4d15-9287-7e700bd66f00.jpg</url>
      <title>Forem: Robbie Cargill</title>
      <link>https://forem.com/r0bbie</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/r0bbie"/>
    <language>en</language>
    <item>
      <title>App Center alternatives for mobile beta distribution in 2026</title>
      <dc:creator>Robbie Cargill</dc:creator>
      <pubDate>Sun, 01 Feb 2026 21:42:40 +0000</pubDate>
      <link>https://forem.com/r0bbie/app-center-alternatives-for-mobile-beta-distribution-in-2026-565</link>
      <guid>https://forem.com/r0bbie/app-center-alternatives-for-mobile-beta-distribution-in-2026-565</guid>
      <description>&lt;h2&gt;
  
  
  Alternative options for Android and iOS ad-hoc distribution to testers, now Visual Studio App Center has shut down
&lt;/h2&gt;

&lt;p&gt;Microsoft's App Center was a widely used mobile DevOps platform offering mobile CI/CD, beta distribution, and analytics.&lt;/p&gt;

&lt;p&gt;With Microsoft discontinuing the service in 2025, teams who previously depended on it are forced to explore alternative options. Let's explore some of the alternatives out there for facilitating ad-hoc distribution of pre-release apps to testers.&lt;/p&gt;

&lt;h3&gt;
  
  
  Buildstash
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://buildstash.com/" rel="noopener noreferrer"&gt;Buildstash&lt;/a&gt; offers a simple replacement for App Center's beta distribution functionality for iOS and Android, while additionally offering support for managing and sharing binaries across any software platform. So rather than a mobile-specific focus, Buildstash also supports desktop platforms, XR and game teams, embedded systems, and so on.&lt;/p&gt;

&lt;p&gt;Buildstash has extensive CI/CD integrations, uploading via a simple API, and a simple "App Center style" web uploader.&lt;/p&gt;

&lt;p&gt;For mobile apps, it allows you to upload Android APK/AAB and iOS IPA files and share them with testers via multiple methods: distribution groups, simple share links, and even branded portals you can host on your website. This makes it the most flexible in terms of distribution methods. Unlike some other options, testers don’t need accounts, which makes it ideal for sharing builds with external stakeholders such as clients or QA vendors.&lt;/p&gt;

&lt;p&gt;Beyond all this, Buildstash offers more comprehensive management of software binaries, including archival, and QA approval workflows.&lt;/p&gt;

&lt;h3&gt;
  
  
  Firebase App Distribution
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://firebase.google.com/docs/app-distribution" rel="noopener noreferrer"&gt;Firebase App Distribution&lt;/a&gt; is part of Google’s broader Firebase ecosystem and provides a solution for distributing pre-release Android and iOS apps to trusted testers. It supports managed tester groups, email-based invites, release notes, and crash reporting when paired with Firebase Crashlytics. For Android teams especially, it offers a smooth experience thanks to its tight integration with Gradle and the Android toolchain.&lt;/p&gt;

&lt;p&gt;On the iOS side, Firebase App Distribution supports both ad-hoc and enterprise builds, though provisioning and certificate management remain the developer’s responsibility. Teams already invested in Firebase for analytics, authentication, or backend services often find this option convenient, as it consolidates multiple aspects of the development workflow into a single platform, and offers a free plan.&lt;/p&gt;

&lt;h3&gt;
  
  
  Expo Application Services (EAS)
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://expo.dev/services" rel="noopener noreferrer"&gt;Expo Application Services (EAS)&lt;/a&gt; provides build and distribution tooling specifically for React Native and Expo-based applications. EAS includes a CI/CD tool for Expo apps, and allows developers to easily share resulting builds with internally with testers.&lt;/p&gt;

&lt;p&gt;If you're developing an Expo or React Native app, and especially if you're already within the EAS ecosystem, this may be a simple and effective choice for sharing beta builds.&lt;/p&gt;

&lt;h3&gt;
  
  
  Applivery
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.applivery.com/" rel="noopener noreferrer"&gt;Applivery&lt;/a&gt; is a more enterprise focused mobile platform, especially suited to internal distribution with Mobile Device Management (MDM). They now additionally offer beta testing with un-managed devices, but it may be an expensive option, starting from €49 for only 1 user / 3 apps / 300 downloads. Applivery also provides over-the-air updates and integrates with popular CI/CD tools, making it suitable for structured testing environments.&lt;/p&gt;

&lt;p&gt;Applivery's enterprise and MDM focus may make it particularly attractive for larger teams or organizations that need more governance and traceability in their beta testing process.&lt;/p&gt;

&lt;h3&gt;
  
  
  Appcircle
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://appcircle.io/" rel="noopener noreferrer"&gt;Appcircle&lt;/a&gt; is positioned as a complete build platform targeting enterprise, including CI/CD. Thus with build automation, testing, and distribution, this may make it an attractive option to replace App Center's feature set for larger teams with an enterprise budget. Its distribution module supports ad-hoc sharing of Android and iOS builds, tester groups, and version history, all accessible through a web dashboard.&lt;/p&gt;

</description>
      <category>mobile</category>
      <category>devops</category>
      <category>programming</category>
      <category>devex</category>
    </item>
    <item>
      <title>With Bitrise slashing their retention period for artifacts again, Buildstash is an alternative for unlimited retention</title>
      <dc:creator>Robbie Cargill</dc:creator>
      <pubDate>Wed, 28 Jan 2026 19:19:38 +0000</pubDate>
      <link>https://forem.com/r0bbie/with-bitrise-slashing-their-retention-period-for-artifacts-again-is-buildstash-the-alternative-47hg</link>
      <guid>https://forem.com/r0bbie/with-bitrise-slashing-their-retention-period-for-artifacts-again-is-buildstash-the-alternative-47hg</guid>
      <description>&lt;h3&gt;
  
  
  With Bitrise reducing how long their retain build artifacts to as low on 90 days on paid plans, Buildstash offers an alternative for long-term artifact archival, with full control over how long you store your builds
&lt;/h3&gt;

&lt;p&gt;Bitrise have just announced that from the 31st March 2026, they'll be slashing the maximum retention period for build artifacts on their paid plans. The new periods look like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyj6xxtf6pyj7j98q01q0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyj6xxtf6pyj7j98q01q0.png" alt=" " width="768" height="1024"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Coming less than 3 years after the max retention period was set at &lt;a href="https://discuss.bitrise.io/t/introducing-365-days-build-artifacts-retention-policy/22557" rel="noopener noreferrer"&gt;365 days&lt;/a&gt;, this reduction to 150 days for installable artifacts, just 90 days for other artifacts like build logs, or even 7 for some other pipeline files, represents a significant limitation on using Bitrise to manage your build artifacts including installable binaries.&lt;/p&gt;

&lt;p&gt;In Bitrise's announcement they say this aligns more with "industry standards" as well as how "most teams actually use their build data". If you have a need or wish to retain and archive build artifacts older than this, their advice is simply to download them and store them somewhere else yourself.&lt;/p&gt;

&lt;p&gt;All of this makes &lt;a href="https://buildstash.com/" rel="noopener noreferrer"&gt;Buildstash&lt;/a&gt; an interesting option for teams who may exploring alternatives for managing their build artifacts without such limits on retention.&lt;/p&gt;

&lt;p&gt;For background, Buildstash is a platform for managing software binaries, build artifacts, and releases. &lt;/p&gt;

&lt;p&gt;It connects to any &lt;a href="https://docs.buildstash.com/integrations#ci--build-tools" rel="noopener noreferrer"&gt;CI/CD platform&lt;/a&gt;, or allows easy upload via web or API. Once you store your builds, there are powerful features to organize by streams, into platforms, by defined labels, and so on. You can distribute builds to collaborators, to testers, or even out to users - with support for any target platform, and including integrated beta distribution for iOS and Android.&lt;/p&gt;

&lt;p&gt;Importantly - with Buildstash retention policies are &lt;a href="https://docs.buildstash.com/builds-and-releases/streams-and-retention" rel="noopener noreferrer"&gt;fully customizable&lt;/a&gt;. You can set your desired retention on a per-stream basis even: for example, you may wish to keep your last month's of nightlies, but keep stable builds forever. And what's key to note there also is that your retention policy really can be from any as small as a week, up to 'forever' if you want to never delete your builds.&lt;/p&gt;

&lt;p&gt;So, if you're looking for either an alternative for managing your build artifacts with fully customizable retention, or for a tool to use in tandem with Bitrise for archiving older critical builds you wish to keep without having to worry about them potentially being deleted, then it could be worth exploring Buildstash.&lt;/p&gt;

</description>
      <category>cicd</category>
      <category>devops</category>
      <category>programming</category>
      <category>mobile</category>
    </item>
    <item>
      <title>Check out Buildstash's comprehensive support for popular CI/CD platforms! Supporting simple management of your built binaries from any pipeline.</title>
      <dc:creator>Robbie Cargill</dc:creator>
      <pubDate>Sun, 21 Dec 2025 01:22:52 +0000</pubDate>
      <link>https://forem.com/r0bbie/check-out-buildstashs-comprehensive-support-for-popular-cicd-platforms-supporting-simple-4nj7</link>
      <guid>https://forem.com/r0bbie/check-out-buildstashs-comprehensive-support-for-popular-cicd-platforms-supporting-simple-4nj7</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/buildstash" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1358497%2F59f976b8-6622-425e-9eb7-a46f87660706.png" alt="buildstash"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/buildstash/moving-from-github-actions-software-binary-management-for-any-cicd-4gg8" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Moving from GitHub Actions? Software binary management for any CI/CD&lt;/h2&gt;
      &lt;h3&gt;Buildstash ・ Dec 21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#devops&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#devtools&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#cicd&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>devops</category>
      <category>devtools</category>
      <category>cicd</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Alternatives to GitHub Actions for self-hosted runners</title>
      <dc:creator>Robbie Cargill</dc:creator>
      <pubDate>Thu, 18 Dec 2025 06:04:29 +0000</pubDate>
      <link>https://forem.com/r0bbie/alternatives-to-github-actions-for-self-hosted-runners-5eaj</link>
      <guid>https://forem.com/r0bbie/alternatives-to-github-actions-for-self-hosted-runners-5eaj</guid>
      <description>&lt;p&gt;&lt;strong&gt;With GitHub introducing charges for self-hosted runners, let's break down the other options&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;GitHub's &lt;a href="https://github.blog/changelog/2025-12-16-coming-soon-simpler-pricing-and-a-better-experience-for-github-actions/" rel="noopener noreferrer"&gt;announcement&lt;/a&gt; this week that they intend to introduce a charge for self-hosted CI/CD runners has sparked understandable backlash from devs who had built their workflows around GitHub Actions in an assumption bringing their own runners would and should remain free.&lt;/p&gt;

&lt;p&gt;While GitHub have &lt;a href="https://x.com/jaredpalmer/status/2001373329811181846" rel="noopener noreferrer"&gt;now said&lt;/a&gt; they're "postponing" the introduction of these charges, which at $0.002 per minute would represent the same cost as their cheapest hosted runner, many teams will no doubt be continuing to explore alternatives which breaks their dependency on the platform. Perhaps more so when added to some recent concerns about security, bugs, and &lt;a href="https://ziglang.org/news/migrating-from-github-to-codeberg/" rel="noopener noreferrer"&gt;accusations of platform neglect&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I've been considering this myself - the last build pipeline I setup (for a games team) I went with GitHub Actions and our own EC2 runners. I leant towards this approach for likely the same reasons as many - tight integration with GitHub, where their code already was, and the strength of integrations around it.&lt;/p&gt;

&lt;p&gt;Most recently, through working on &lt;a href="https://buildstash.com/" rel="noopener noreferrer"&gt;Buildstash&lt;/a&gt; (a software binary management tool) I've been building integrations for - and in the process becoming pretty familiar with - just about every major CI/CD platform out there.&lt;br&gt;
So, if you're looking at options to move to with self-hosted runners in mind, let's explore -&lt;/p&gt;

&lt;h2&gt;
  
  
  GitLab CI/CD
&lt;/h2&gt;

&lt;p&gt;GitLab has a &lt;a href="https://docs.gitlab.com/ci/" rel="noopener noreferrer"&gt;mature CI/CD platform&lt;/a&gt; that supports self-hosted runners at no additional cost on any of their plans, including their free plan. GitLab has the additional benefit of offering an "open core" self-hosted edition, if you want to run your full DevOps stack on your own infrastructure.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmln4y38qpaxahfd1btba.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmln4y38qpaxahfd1btba.png" alt="GitLab screenshot" width="800" height="406"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One limitation worth noting however, if you wish to use GitLab CI/CD with an &lt;a href="https://docs.gitlab.com/ci/ci_cd_for_external_repos/github_integration/" rel="noopener noreferrer"&gt;externally hosted repository&lt;/a&gt;, including GitHub, this is only supported on GitLab's paid "Premium" plan and up, which these days is a costly $29/user/mo (a starting price more than GitHub's enterprise plan!).&lt;/p&gt;

&lt;p&gt;GitLab also have a &lt;a href="https://gitlab.com/explore/catalog" rel="noopener noreferrer"&gt;CI/CD catalog&lt;/a&gt; with reusable components, though the selection available is far more limited than GitHub.&lt;/p&gt;

&lt;p&gt;When it comes to self-hosting the GitLab platform is also much heavier and more complex than some alternatives we'll cover. If you're already onboard GitLab, or want to go all-in on their comprehensive DevOps platform, it's a solid choice to consider. &lt;/p&gt;

&lt;h2&gt;
  
  
  Forgejo / Gitea
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://forgejo.org/" rel="noopener noreferrer"&gt;Forgejo&lt;/a&gt; is a community &lt;a href="https://forgejo.org/compare-to-gitea/" rel="noopener noreferrer"&gt;fork&lt;/a&gt; of &lt;a href="https://about.gitea.com/" rel="noopener noreferrer"&gt;Gitea&lt;/a&gt;, born out of disagreements with the for-profit direction Gitea was taking, and concerns over moving to a GitLab-like "open core" model. On the whole, both still offer very similar functionality, but Forgejo development appears to be progressing faster and offers lots of minor improvements, and would be the choice I'd tend towards.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm81pqutesn9uoz0r9v2w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm81pqutesn9uoz0r9v2w.png" alt="Forgejo screenshot" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Both options are open source and fully self-hostable. There are a number of hosted Forgejo instances, &lt;a href="https://codeberg.org/" rel="noopener noreferrer"&gt;Codeberg&lt;/a&gt; being the most prominent.&lt;/p&gt;

&lt;p&gt;Particularly notably, both Forgejo / Gitea offer a CI/CD tool called "Actions", which is &lt;a href="https://forgejo.org/docs/latest/user/actions/github-actions/" rel="noopener noreferrer"&gt;intentionally designed&lt;/a&gt; to be familiar to GitHub Actions users. There will likely still be some migration work, and of course for any actions in the GitHub marketplace you'll need to find alternatives or fork them.&lt;/p&gt;

&lt;p&gt;But if you want an experience which is as familiar as possible to GitHub, while gaining full control, Forgejo (or Gitea) would be an excellent choice. Also, while there has been some discussion of Forgejo not performing as well for massive workspaces as more mature enterprise solutions like GitLab, they have made &lt;a href="https://forgejo.org/2025-07-release-v12-0/" rel="noopener noreferrer"&gt;good improvements&lt;/a&gt; in this area.&lt;/p&gt;

&lt;h2&gt;
  
  
  CircleCI
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://circleci.com/" rel="noopener noreferrer"&gt;CircleCI&lt;/a&gt; is another popular and mature platform, with &lt;a href="https://circleci.com/developer/orbs" rel="noopener noreferrer"&gt;extensive support&lt;/a&gt; for plugins / reusable workflows in the form of "orbs".&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx7tm1qwp9ir8uvzqmevq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx7tm1qwp9ir8uvzqmevq.png" alt="CircleCI screenshot" width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;They offer cloud-hosted and self-hosted runner options. Self-hosted runners are not charged per-minute, but there is a limit to the number of concurrent runners on each plan - with 5 possible on their &lt;a href="https://circleci.com/pricing/" rel="noopener noreferrer"&gt;free plan&lt;/a&gt;. So at least the limits are fairly generous, even if frustrating.&lt;/p&gt;

&lt;p&gt;With simple support out the box for any git host (GitHub, GitLab, and Bitbucket well supported) this could be a good solution if you want a solid hosted CI platform with self-hosted runner support, while decoupling it from your git hosting platform. On the downside, unlike open source options, there's no migration path to fully self-hosted if you preferred later, meaning you're still dealing with a degree of lock-in.&lt;/p&gt;

&lt;h2&gt;
  
  
  Jenkins
&lt;/h2&gt;

&lt;p&gt;Somewhat the veteran CI/CD platform, &lt;a href="https://www.jenkins.io/" rel="noopener noreferrer"&gt;Jenkins&lt;/a&gt; is free and open-source for self-hosting. A major pro is certainly its significant plugin ecosystem, with broad support for integrations, as well as a strong community and expansive documentation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkkasc9gxjgj7b4azkyqw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkkasc9gxjgj7b4azkyqw.png" alt="Jenkins screenshot" width="800" height="336"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Jenkins has also been significantly &lt;a href="https://www.jenkins.io/blog/2025/07/24/redesigning-jenkins-part-two/" rel="noopener noreferrer"&gt;modernised&lt;/a&gt; its UI lately. On the other hand, it remains a much more resource-heavy option, and is more complex to configure. Also, as extensive as plugin support is, due to the age of the platform you may more frequently come across unmaintained or outdated plugins, which can be a frustration.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tangled Pipelines
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://tangled.org/" rel="noopener noreferrer"&gt;Tangled&lt;/a&gt; is a decentralised Git hosting platform, built on the AT Protocol. This makes it an interesting alternative, allowing &lt;a href="https://nix.tools/articles/self-hosting-tangled-knot/" rel="noopener noreferrer"&gt;full self-hosting&lt;/a&gt;, while allowing communication between instances for a more "GitHub like" experience across the network. (Forgejo are also &lt;a href="https://forgejo.org/2023-01-10-answering-forgejo-federation-questions/" rel="noopener noreferrer"&gt;working on&lt;/a&gt; federation via ForgeFed, but seem further behind).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbmxrdcr5ptrep4lj6vx9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbmxrdcr5ptrep4lj6vx9.png" alt="Tangled screenshot" width="800" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Tangled also &lt;a href="https://blog.tangled.org/ci" rel="noopener noreferrer"&gt;recently added&lt;/a&gt; a Nix-based CI runner called Spindle. Right now, it's fairly basic, and can spin up a Docker container, while pulling in any Nixpkg. If the Tangled platform and its decentralised nature seems intriguing to you, this one is definitely worth exploring more - but it's probably not ready to move all your teams critical projects over to quite yet.&lt;/p&gt;

&lt;h2&gt;
  
  
  Bitbucket Pipelines
&lt;/h2&gt;

&lt;p&gt;Atlassian's Bitbucket also offers a CI/CD tool called &lt;a href="https://www.atlassian.com/software/bitbucket/features/pipelines" rel="noopener noreferrer"&gt;Pipelines&lt;/a&gt;. Self-hosted runners are well supported, and there's a &lt;a href="https://bitbucket.org/product/features/pipelines/integrations" rel="noopener noreferrer"&gt;reasonable library&lt;/a&gt; of integrations.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6m3nro2aqjls2blgetga.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6m3nro2aqjls2blgetga.png" alt="Bitbucket screenshot" width="800" height="458"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;On the other hand, Atlassian also just announced plans to move from not charging from self-hosted runners, to a flat $15/month charge per concurrent build slot (whether you use it or not). Understandably, developers were not happy, and Atlassian have now also announced they're postponing the move for now.&lt;/p&gt;

&lt;h2&gt;
  
  
  TeamCity
&lt;/h2&gt;

&lt;p&gt;JetBrains &lt;a href="https://www.jetbrains.com/teamcity/" rel="noopener noreferrer"&gt;TeamCity&lt;/a&gt; is a powerful CI/CD server, with a polished and user-friendly interface, and offering both hosted and on-premises options - with a pretty generous free tier for the self-hosted edition.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhob0w59c4uvym82ggo4v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhob0w59c4uvym82ggo4v.png" alt="TeamCity screenshot" width="800" height="411"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For the SaaS edition, self-hosted runners (or agents, in TeamCity terminology) are not free, but priced at essentially a fixed fee (in the form of a fixed number of build "credits") rather than by-minute. Buying a pack of credits at £15 each will cover a single self-hosted agent, with some credits spare. As pricing also takes into account number of committers and other factors, TeamCity can quickly become significantly more expensive than alternatives.&lt;/p&gt;

&lt;p&gt;The on-premises edition includes 3 runners for free, but quickly becomes expensive beyond that also.&lt;/p&gt;

&lt;h2&gt;
  
  
  Buildkite
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://buildkite.com/" rel="noopener noreferrer"&gt;Buildkite&lt;/a&gt; is a CI/CD platform which actually defaults towards you providing your own agents (though macOS and Linux hosted agents are available) while they manage the orchestration and provide a user-friendly and extensive UI.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx8nb3eq9mx8gxtridrwy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx8nb3eq9mx8gxtridrwy.png" alt="Buildkite screenshot" width="800" height="453"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There's a &lt;a href="https://buildkite.com/docs/pipelines/integrations/plugins/directory" rel="noopener noreferrer"&gt;reasonable selection&lt;/a&gt; of integrations, although this won't compete with the larger platforms like GitHub Actions or Jenkins.&lt;/p&gt;

&lt;p&gt;There's a fairly generous free plan, allowing for up to 3 concurrent jobs (across either hosted or self-hosted agents); while their paid plan starting from $30/mo (per user) includes 10 concurrent jobs, and a very reasonable $2.50 per additional agent.&lt;/p&gt;

&lt;h2&gt;
  
  
  In summary
&lt;/h2&gt;

&lt;p&gt;So if you're looking for a GitHub Actions alternative that will let you bring your own runners without the per-minute fee, you'll need to consider your priorities behind any switch:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;GitHub announcing a vague "postponement" of the fee introduction introduces some uncertainty, maybe they'll back-peddle altogether, lower the fee, or introduce a more reasonable structure. Still, if this is a concern for you it's worth being prepared, or getting ahead of it.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;With Bitbucket also introducing new self-hosted runner fees which are facing heavy criticism, it's worth considering when switching to a new platform the dangers of suffering a potential "bait and switch" all over again. GitLab CI/CD is a solid platform, but GitLab's pricing generally has been creeping up these last few years.. on the other hand its open core and self-hostable nature is likely to offer some protection.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If you want to self-host and keep control over your full build pipeline, including orchestration, Forgejo would be the obvious choice to offer a GitHub-like experience.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On the other hand, if you want to lower your maintenance overheads with a hosted platform to run your self-hosted runners from - Codeberg (hosted Forgejo), CircleCI, TeamCity, and Buildkite are all reasonable options. With each offering some key distinctions in terms of functionality, licensing, plugins, and pricing model - the right choice will vary based on your team and requirements.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  From the co-founder / developer of Buildstash
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;As mentioned, I work on &lt;a href="https://buildstash.com/" rel="noopener noreferrer"&gt;Buildstash&lt;/a&gt;, a platform for teams managing all of their software binaries which come out of the CI/CD pipeline - whether across mobile or desktop apps, games, or embedded. We already &lt;a href="https://docs.buildstash.com/integrations" rel="noopener noreferrer"&gt;integrate&lt;/a&gt; with most of the CI/CD platforms listed above. If a better tool for organizing all your binaries, sharing with your team and testers, and steering to release sounds useful - check it out.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>cicd</category>
      <category>github</category>
      <category>githubactions</category>
      <category>devops</category>
    </item>
    <item>
      <title>We're been keeping on building like crazy... 🥵. Excited to set this product update live, it's such a big one with so many details we've obsessed over. (also, if you're on a software team and not onboard yet, check out buildstash.com for your binaries)</title>
      <dc:creator>Robbie Cargill</dc:creator>
      <pubDate>Sat, 13 Sep 2025 20:40:04 +0000</pubDate>
      <link>https://forem.com/r0bbie/were-been-keeping-on-building-like-crazy-excited-to-set-this-product-update-live-its-201f</link>
      <guid>https://forem.com/r0bbie/were-been-keeping-on-building-like-crazy-excited-to-set-this-product-update-live-its-201f</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/buildstash" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1358497%2F59f976b8-6622-425e-9eb7-a46f87660706.png" alt="buildstash"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/buildstash/buildstash-product-update-metadata-artifacts-custom-targets-rtos-platforms-2a4p" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Buildstash Product Update - Metadata artifacts, custom targets, RTOS platforms..&lt;/h2&gt;
      &lt;h3&gt;Buildstash ・ Sep 13&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#devops&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#devtools&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#cicd&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>devops</category>
      <category>devtools</category>
      <category>cicd</category>
      <category>productivity</category>
    </item>
    <item>
      <title>As Visual Studio App Center closes, a look back, and what to use now?</title>
      <dc:creator>Robbie Cargill</dc:creator>
      <pubDate>Mon, 31 Mar 2025 22:42:00 +0000</pubDate>
      <link>https://forem.com/r0bbie/as-visual-studio-app-center-closes-a-look-back-and-what-to-use-now-573b</link>
      <guid>https://forem.com/r0bbie/as-visual-studio-app-center-closes-a-look-back-and-what-to-use-now-573b</guid>
      <description>&lt;p&gt;Today is &lt;a href="https://learn.microsoft.com/en-us/appcenter/retirement" rel="noopener noreferrer"&gt;retirement day&lt;/a&gt; for Microsoft's Visual Studio App Center, a product widely used by app developers to manage, test, and distribute their releases, alongside other features including automated builds and crash analytics.&lt;/p&gt;

&lt;p&gt;Launched as App Center in &lt;a href="https://devblogs.microsoft.com/appcenter/introducing-visual-studio-app-center/" rel="noopener noreferrer"&gt;2017&lt;/a&gt;, the product's origins actually predate this in the form of &lt;a href="https://visualstudiomagazine.com/articles/2019/12/10/hockeyapp-retired.aspx" rel="noopener noreferrer"&gt;HockeyApp&lt;/a&gt;, a similar product launched in 2011 by Bit Stadium and acquired by Microsoft in 2014. (HockeyApp was itself predated by the &lt;a href="https://github.com/bitstadium/HockeyKit" rel="noopener noreferrer"&gt;Hockey open source project&lt;/a&gt; for iOS ad-hoc distribution.)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxuxzl5k3zqndlbuwen5c.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxuxzl5k3zqndlbuwen5c.jpg" alt="A screenshot from HockeyApp, later acquired by Microsoft and relaunched as App Center" width="800" height="581"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Prior to being acquired by Microsoft, HockeyApp was among the two most popular tools for teams managing their "in-house" iOS and Android app distribution, whether sharing in-development app builds to QA testers, or companies wishing to distribute internally without publishing to platforms like Apple's strictly-gatekept App Store. The other platform being TestFlight, itself acquired by Apple in 2014, and &lt;a href="https://thenextweb.com/news/apple-close-old-standalone-testflight-beta-testing-service-next-month" rel="noopener noreferrer"&gt;shut down in 2015&lt;/a&gt; when it was replaced by the TestFlight of today, a solution for distributing to beta testers &lt;a href="https://developer.apple.com/testflight" rel="noopener noreferrer"&gt;integrated within App Store Connect&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;As a mobile app developer in the early 2010's, I used both HockeyApp and TestFlight at different times, and they were a godsend particularly when it came to trying to manage the clunky process of adding iOS device IDs to ad-hoc provisioning profiles, and keeping track of who had access to what. They didn't exactly make it a streamlined process, but they went a long way to helping make it at least somewhat more user-friendly.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbsi0szc17kkkthla15xb.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbsi0szc17kkkthla15xb.jpeg" alt="A screenshot from the original TestFlight, later acquired by Apple" width="800" height="761"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;TestFlight became Apple TestFlight, and Google also now offers their own integrated capabilities for internal distribution &lt;a href="https://play.google.com/console/about/internal-testing/" rel="noopener noreferrer"&gt;within Google Play&lt;/a&gt; since 2018, and yet, HockeyApp's successor in the form of App Center has survived until 2025.&lt;/p&gt;

&lt;p&gt;This is in large part due to App Center evolving significantly since its HockeyApp origins. Today (and literally only until sometime today when Microsoft hits the off-switch!) App Center offers not only internal app distribution across both mobile and desktop platforms, but integrated testing capabilities (running on real devices in the cloud), the ability to automate builds within the platform, and deployment to the App Store or Google Play.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fok7dtzl4dvml78m6ssqe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fok7dtzl4dvml78m6ssqe.png" alt="A screenshot from Visual Studio App Center" width="800" height="323"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When Microsoft announced the App Center shutdown last year, they &lt;a href="https://learn.microsoft.com/en-us/appcenter/" rel="noopener noreferrer"&gt;recommended an array of alternative tools&lt;/a&gt; from elsewhere in their developer toolkit and beyond to replace its capabilities. Users seeking an alternative to App Center's hosted build automation, or App Store deployment, capabilities can look to &lt;a href="https://azure.microsoft.com/en-us/products/devops/pipelines/" rel="noopener noreferrer"&gt;Azure DevOps Pipelines&lt;/a&gt; or &lt;a href="https://github.com/features/actions" rel="noopener noreferrer"&gt;GitHub Actions&lt;/a&gt;. For cloud-based on-device testing, they recommend external tool &lt;a href="https://www.browserstack.com" rel="noopener noreferrer"&gt;BrowserStack&lt;/a&gt;. And for internal and test distribution, they simply steer users towards either TestFlight or Google Play Console.&lt;/p&gt;

&lt;p&gt;With the degree of overlap in build pipeline capabilities between App Center and solutions offered by Microsoft's other developer platforms across both Azure (in the form of DevOps Pipelines) and GitHub (in GitHub Actions), it's perhaps not surprising they opted to eliminate (Visual Studio) App Center, and seek to consolidate build tools under the remaining two brands.&lt;/p&gt;

&lt;p&gt;And yet neither the other Microsoft-offered tools directed towards, nor the external suggestions, offer much of the capabilities App Center offered, and was depended on by many teams. For distributing to large groups of external beta testers, TestFlight these days is great, but there are key limitations.&lt;/p&gt;

&lt;p&gt;TestFlight builds still require manual review by Apple prior to distribution, so if you want to manage your own ad-hoc or enterprise distribution whether to employees, testers, clients, or other collaborators, it falls short. The UX for uploading and managing app builds is a bit clunkier. Plus, it's obviously iOS only, just as Google Play is Android only. And missing all the other capabilities App Center offered that many teams relied on, outside of simple beta distribution.&lt;/p&gt;

&lt;p&gt;We're building Buildstash to be a worthy successor to App Center for software teams looking for a platform to manage their projects from build-to-release.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnvzyydz3rtb2231hipel.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnvzyydz3rtb2231hipel.png" alt="Screenshot of the " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this first phase, we've focused on designing the best possible experience for teams to manage their build files, learning from our past experiences with tools like HockeyApp and TestFlight, while going much further: in imagining a tool teams producing any kind of software, whether mobile, desktop, game consoles, or embedded systems, can use to manage all their builds. Capturing all nightlies, all test builds, all stable releases, and allowing powerful organization, and management with features like retention policies.&lt;/p&gt;

&lt;p&gt;And of course when it comes to distributing your app builds internally or to testers, we're focused on offering not only App Center's capabilities but going well beyond, whether you want to invite collaborators into your workspace, generate instant share links, post to Slack, push OTA app updates, automated sync of builds to testers' devices, or even share via a protected portal hosted on your own website with your own branding.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flsrxj1zffvwiil2y1dac.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flsrxj1zffvwiil2y1dac.png" alt="Buildstash guiding a user through installing an in-house distributed iOS app on their device" width="800" height="589"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We've &lt;a href="https://docs.buildstash.com/changelog/overview#2025-02-23" rel="noopener noreferrer"&gt;recently rolled out&lt;/a&gt; tons of updates to our iOS and Android distribution flows, and we have so much more planned on our roadmap, including integrated QA workflows, and collaboration on rollout to stores.&lt;/p&gt;

&lt;p&gt;So if you're on the lookout for an App Center replacement, we hope you'll check out Buildstash and &lt;a href="https://buildstash.com" rel="noopener noreferrer"&gt;sign up for early access&lt;/a&gt;. We're onboarding teams today!&lt;/p&gt;

</description>
      <category>appcenter</category>
      <category>devops</category>
      <category>mobile</category>
      <category>testing</category>
    </item>
  </channel>
</rss>
