Skip to content

Separated CI/CD pipeline to parallel architecture build stage and optional version creation stage #15

Separated CI/CD pipeline to parallel architecture build stage and optional version creation stage

Separated CI/CD pipeline to parallel architecture build stage and optional version creation stage #15

Workflow file for this run

name: gdb-static-pipeline
on:
pull_request:
branches:
- '*'
push:
tags:
- 'v*'
jobs:
build:
strategy:
matrix:
architecture: ["x86_64", "arm", "aarch64", "powerpc", "mips", "mipsel"]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Install dependencies
run: sudo apt-get install -y wget
- name: Build
run: make build-${{ matrix.architecture }} -j$((`nproc`+1))
# We only need to create & upload artifacts if we are creating a new version.
- name: Pack
if: github.event_name == 'push'
run: make pack-${{ matrix.architecture }}
- name: Upload artifact
uses: actions/upload-artifact@v4
if: github.event_name == 'push'
with:
name: gdb-static
path: build/artifacts/gdb-static*.tar.gz
create_and_publish_release:
runs-on: ubuntu-latest
needs: build
if: github.event_name == 'push'
steps:
- name: Download build artifacts
uses: actions/download-artifact@v4
with:
path: "build-results/"
- name: Publish release.
uses: softprops/action-gh-release@v2
with:
files: build-results/*