<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/testing-frrouting-pull-requests-with-netlab-ipspace-net-blog-erecpefyl" -->

---
title: Testing FRRouting Pull Requests with netlab «...
description: A step-by-step guide for testing FRRouting pull requests using netlab. The workflow covers cloning the FRRouting GitHub repo, checking out a specific PR branch...
canonical: https://daily.dev/posts/testing-frrouting-pull-requests-with-netlab-ipspace-net-blog-erecpefyl
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Testing FRRouting Pull Requests with netlab « ipSpace.net blog | daily.dev
og:description: A step-by-step guide for testing FRRouting pull requests using netlab. The workflow covers cloning the FRRouting GitHub repo, checking out a specific PR branch...
og:url: https://daily.dev/posts/testing-frrouting-pull-requests-with-netlab-ipspace-net-blog-erecpefyl
og:image: https://api.daily.dev/og/posts/eRECpeFYL.png
og:image:alt: Testing FRRouting Pull Requests with netlab « ipSpace.net blog
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Testing FRRouting Pull Requests with netlab « ipSpace.net blog

**[ipSpace.net Blog](https://daily.dev/sources/ipspace)** · 2 min read · 0 upvotes · 0 comments

## Summary

A step-by-step guide for testing FRRouting pull requests using netlab. The workflow covers cloning the FRRouting GitHub repo, checking out a specific PR branch with GitHub CLI, building a custom FRRouting Docker container from source using the included Alpine build script, configuring netlab to use that custom container image (via defaults or environment variable), starting the lab with a bug-reproducing topology, and cleaning up afterward.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://blog.ipspace.net/2026/04/frr-pr-testing>

## Questions this post answers

### How do I test a specific FRRouting pull request using netlab before it's merged?

Clone the FRRouting repo, check out the PR branch with `gh pr checkout <PR_number>`, build a custom container with `./docker/alpine/build.sh`, then point netlab at the resulting image using `netlab defaults devices.frr.clab.image=frr:alpine-<hash>` or the equivalent environment variable `NETLAB_DEVICES_FRR_CLAB_IMAGE`. Start your lab normally and verify the correct image is running with `netlab report devices`.

_Network engineers validating FRRouting fixes before upstream merge track workflows like this on daily.dev._

---

Tags: [#docker](https://daily.dev/tags/docker), [#networking](https://daily.dev/tags/networking)

[View this post on daily.dev](https://daily.dev/posts/testing-frrouting-pull-requests-with-netlab-ipspace-net-blog-erecpefyl)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Testing FRRouting Pull Requests with netlab « ipSpace.net blog","url":"https://daily.dev/posts/testing-frrouting-pull-requests-with-netlab-ipspace-net-blog-erecpefyl","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/testing-frrouting-pull-requests-with-netlab-ipspace-net-blog-erecpefyl"},"datePublished":"2026-08-11T08:54:31.697Z","dateModified":"2026-08-11T09:12:24.530Z","description":"A step-by-step guide for testing FRRouting pull requests using netlab. The workflow covers cloning the FRRouting GitHub repo, checking out a specific PR branch...","image":"https://media.daily.dev/image/upload/s--0_ODbtD2--/f_auto/v1722860399/public/Placeholder%2008","thumbnailUrl":"https://media.daily.dev/image/upload/s--0_ODbtD2--/f_auto/v1722860399/public/Placeholder%2008","isAccessibleForFree":true,"articleSection":"ipSpace.net Blog","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"ipSpace.net Blog","logo":"https://media.daily.dev/image/upload/s--xS7E82MT--/f_auto,q_auto/v1786438303/logos/ipspace?_a=BAMAMicg0","url":"https://daily.dev/sources/ipspace"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/testing-frrouting-pull-requests-with-netlab-ipspace-net-blog-erecpefyl","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"docker,networking","timeRequired":"PT2M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"ipSpace.net Blog","item":"https://daily.dev/sources/ipspace"},{"@type":"ListItem","position":3,"name":"Testing FRRouting Pull Requests with netlab « ipSpace.net blog"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/testing-frrouting-pull-requests-with-netlab-ipspace-net-blog-erecpefyl#faq","mainEntity":[{"@type":"Question","name":"How do I test a specific FRRouting pull request using netlab before it's merged?","acceptedAnswer":{"@type":"Answer","text":"Clone the FRRouting repo, check out the PR branch with `gh pr checkout <PR_number>`, build a custom container with `./docker/alpine/build.sh`, then point netlab at the resulting image using `netlab defaults devices.frr.clab.image=frr:alpine-<hash>` or the equivalent environment variable `NETLAB_DEVICES_FRR_CLAB_IMAGE`. Start your lab normally and verify the correct image is running with `netlab report devices`. Network engineers validating FRRouting fixes before upstream merge track workflows like this on daily.dev."}}]}
```

