Skip to content

.github/workflows: Migrate workflows to Blacksmith runners#47

Open
blacksmith-sh[bot] wants to merge 1 commit intomainfrom
blacksmith-migration-a62801b
Open

.github/workflows: Migrate workflows to Blacksmith runners#47
blacksmith-sh[bot] wants to merge 1 commit intomainfrom
blacksmith-migration-a62801b

Conversation

@blacksmith-sh
Copy link

@blacksmith-sh blacksmith-sh bot commented Jan 24, 2026

To whomever may be reviewing this PR,

Blacksmith is the fastest way to run your GitHub Actions.

What does this PR change?

This PR has been automatically generated by a team member in your GitHub organization using Blacksmith's Migration Wizard, or MigWiz for short. This PR changes the following:

  1. Your selected workflows will now run on Blacksmith's 2x faster hardware (e.g., runs-on: blacksmith-4vcpu-ubuntu-2204). Learn more about the different instances available to choose from.
  2. Your jobs running on Blacksmith will now have all official GitHub and popular third-party cache actions automatically interact with our 4x faster, colocated cache. Learn more about Blacksmith's actions cache.
  3. Your GitHub Actions will now actually be observable. Learn more about Blacksmith's logging and other observability features.
  4. Your Docker builds will now automatically share their Docker layer cache, resulting in up to 40x faster builds. Learn more about Blacksmith's Docker layer caching.

FAQ

  • Is this free? The first 3,000 minutes per month are free.
  • Who uses Blacksmith? Clerk, Ashby, VEED, and 600+ others.
  • What's the catch? There is none. Merge this thing already.

@greptile-apps
Copy link

greptile-apps bot commented Jan 24, 2026

Greptile Summary

Migrates all GitHub Actions workflows from standard GitHub-hosted runners to Blacksmith's faster infrastructure. All 9 workflow files are updated with consistent runner tags (blacksmith-4vcpu-ubuntu-2404 or blacksmith-4vcpu-ubuntu-2204).

Key Changes:

  • Updates runs-on tags across all workflows to use Blacksmith runners
  • Replaces standard Docker actions with Blacksmith-optimized versions in docker-build.yml:
    • docker/setup-buildx-action@v3useblacksmith/setup-docker-builder@v1
    • docker/build-push-action@v6useblacksmith/build-push-action@v2
  • Removes GitHub Actions cache configuration (cache-from/cache-to) in favor of automatic Blacksmith caching
  • Maintains Ubuntu version compatibility (24.04 for -latest workflows, 22.04 for version-pinned workflows)

Infrastructure Impact:
This is a pure infrastructure migration with no logic changes. All workflow steps, dependencies, test commands, and build configurations remain unchanged. The migration provides performance benefits (2x faster compute, 4x faster cache, automatic Docker layer caching) without affecting test coverage or CI behavior.

Confidence Score: 5/5

  • This PR is safe to merge with minimal risk - it's a straightforward infrastructure migration with no code logic changes
  • The changes are purely infrastructure-related (runner tags and Docker action replacements) with zero impact on code logic, test behavior, or build processes. All modifications follow consistent patterns across files, maintain Ubuntu version compatibility, and the automated migration from Blacksmith's tool reduces human error risk.
  • No files require special attention

Important Files Changed

Filename Overview
.github/workflows/ci.yml Updates runs-on from ubuntu-latest to blacksmith-4vcpu-ubuntu-2404 for format-lint-reuse and ci-success jobs
.github/workflows/docker-build.yml Migrates to Blacksmith runners and replaces standard Docker build actions with Blacksmith-specific actions, removes GHA cache config
.github/workflows/e2e-tests.yml Updates runs-on from ubuntu-latest to blacksmith-4vcpu-ubuntu-2404 for ros-e2e-tests and e2e-tests-success jobs
.github/workflows/integration-tests-cpp.yml Updates runs-on from ubuntu-22.04 to blacksmith-4vcpu-ubuntu-2204 for cpp-integration-tests job
.github/workflows/publish.yml Updates runs-on from ubuntu-latest to blacksmith-4vcpu-ubuntu-2404 for all three jobs (publish-rust, publish-python, publish-ros)
.github/workflows/reuse.yml Updates runs-on from ubuntu-latest to blacksmith-4vcpu-ubuntu-2404 for reuse job
.github/workflows/tests-ros.yml Updates runs-on from ubuntu-latest to blacksmith-4vcpu-ubuntu-2404 for ros-tests and ros-tests-success jobs
.github/workflows/tests-zenoh.yml Updates runs-on from ubuntu-22.04 to blacksmith-4vcpu-ubuntu-2204 for zenoh-plugin-tests and zenoh-integration-tests jobs
.github/workflows/unit-tests-cpp.yml Updates runs-on from ubuntu-22.04 to blacksmith-4vcpu-ubuntu-2204 for cpp-unit-tests job

Sequence Diagram

sequenceDiagram
    participant GHA as GitHub Actions
    participant Workflow as Workflow Jobs
    participant BS as Blacksmith Runners
    participant Docker as Docker Builder
    participant Cache as Blacksmith Cache
    participant Registry as GHCR

    Note over GHA,Registry: Before: Standard GitHub-hosted Runners
    GHA->>Workflow: Trigger CI workflow
    Workflow->>GHA: runs-on: ubuntu-latest/22.04
    GHA->>Docker: setup-buildx-action
    Docker->>Cache: GitHub Actions Cache
    Docker->>Registry: build-push-action
    
    Note over GHA,Registry: After: Blacksmith Infrastructure
    GHA->>Workflow: Trigger CI workflow
    Workflow->>BS: runs-on: blacksmith-4vcpu-ubuntu-2404/2204
    BS->>Docker: useblacksmith/setup-docker-builder
    Docker->>Cache: Blacksmith Colocated Cache (4x faster)
    Docker->>Registry: useblacksmith/build-push-action
    
    Note over BS,Cache: Benefits: 2x faster compute, 4x faster cache, automatic Docker layer caching
Loading

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants