Skip to content

Import

Import #5

Workflow file for this run

name: Build Docker Container
on:
push:
branches:
- main
schedule:
# Build every 6 hours
- cron: "0 */6 * * *"
workflow_dispatch:
jobs:
docker:
runs-on: ubuntu-latest
steps:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Set BIRD version
run: echo "BIRD_VERSION=$(curl -s 'https://dl.fedoraproject.org/pub/epel/9/Everything/x86_64/Packages/b/' | awk -F'"' '/>bird-/ {print $6; exit}' | sed -e 's/bird-//' -e 's/\.el.*.rpm//')" >> $GITHUB_ENV
- uses: actions-ecosystem/action-regex-match@v2
id: extract-semver
with:
text: ${{ env.BIRD_VERSION }}
regex: '^([0-9]+)\.([0-9]+)'
- name: Print target BIRD version
run: |
echo 'Full version: ${{ env.BIRD_VERSION }}'
echo 'Major: ${{ steps.extract-semver.outputs.group1 }}'
echo 'Minor: ${{ steps.extract-semver.outputs.group2 }}'
- name: Build and push
uses: docker/build-push-action@v6
with:
push: true
file: Containerfile
build-args: |
BIRD_VERSION=${{ env.BIRD_VERSION }}
tags: |
ghcr.io/sonix-network/bird:${{ env.BIRD_VERSION }}
ghcr.io/sonix-network/bird:latest