Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
129 changes: 129 additions & 0 deletions .github/workflows/cicd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
# SPDX-FileCopyrightText: Copyright (c) 2025 Advanced Micro Devices, Inc. All rights reserved.
# SPDX-FileCopyrightText: Copyright (c) 2025 Timor Knudsen (AMD)

# SPDX-License-Identifier: MIT

name: "Lint, simulate, synthesize, test and docs"

on: [push]

jobs:
lint:
name: "Run pre-commit lint"
runs-on: ubuntu-latest
container:
image: ghcr.io/amd/mini-isp-dev:latest
options: --user root
credentials:
username: ${{ github.actor }}
password: ${{ secrets.github_token }}
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Run lint
run: |
git config --global --add safe.directory $GITHUB_WORKSPACE
make lint

simulation:
name: "Run test bench simulations"
runs-on: ubuntu-latest
container:
image: ghcr.io/amd/mini-isp-dev:latest
options: --user root
credentials:
username: ${{ github.actor }}
password: ${{ secrets.github_token }}
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Simulation
run: make sim
- name: Upload
uses: actions/upload-artifact@v7
with:
name: Simulation artifacts
path: |
build/sim/**/*.png
build/sim/**/*.pdf
build/sim/**/*.xml
retention-days: 1

synthesis:
name: "Run synthesis and generate reports"
runs-on: ubuntu-latest
container:
image: ghcr.io/amd/mini-isp-dev:latest
options: --user root
credentials:
username: ${{ github.actor }}
password: ${{ secrets.github_token }}
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Synthesis
run: make synth
- name: Upload
uses: actions/upload-artifact@v7
with:
name: synthesis_reports
path: build/docs/reports
retention-days: 1

test:
name: "Run Python tests"
runs-on: ubuntu-latest
container:
image: ghcr.io/amd/mini-isp-dev:latest
options: --user root
credentials:
username: ${{ github.actor }}
password: ${{ secrets.github_token }}
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Test
run: make test

docs:
name: "Generate documentation"
needs: synthesis
permissions:
contents: read
packages: write
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
container:
image: ghcr.io/amd/mini-isp-dev:latest
options: --user root
credentials:
username: ${{ github.actor }}
password: ${{ secrets.github_token }}
if: ${{ github.ref == 'ref/head/main' }}
steps:
- uses: actions/configure-pages@v5
- uses: actions/checkout@v6
with:
fetch-depth: 0
- uses: actions/download-artifact@v8
with:
name: synthesis_reports
path: build/docs/reports
- run: make docs
- uses: actions/upload-pages-artifact@v4
with:
path: build/site
- uses: actions/deploy-pages@v4
id: deployment
5 changes: 1 addition & 4 deletions .github/workflows/docker_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:
fetch-depth: 0

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
uses: docker/setup-buildx-action@v4

- name: Lint Dockerfile
uses: hadolint/hadolint-action@v3.1.0
Expand All @@ -49,9 +49,6 @@ jobs:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v4

- name: Build base container image
uses: docker/build-push-action@v7
with:
Expand Down
68 changes: 0 additions & 68 deletions .github/workflows/docs.yml

This file was deleted.

26 changes: 0 additions & 26 deletions .github/workflows/lint.yml

This file was deleted.

35 changes: 0 additions & 35 deletions .github/workflows/simulation.yml

This file was deleted.

26 changes: 0 additions & 26 deletions .github/workflows/synthesis.yml

This file was deleted.

26 changes: 0 additions & 26 deletions .github/workflows/test.yml

This file was deleted.