Skip to content

dau-dev/vivado-docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vivado-docker

Minimal Dockerized Vivado (5.38 GB / 2 GB compressed).

NOTE: This is still a work in progress, it works against a test repo targeting a xc7a200tfbg484-2 here via GitHub Actions.

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4

    - name: Restore Vivado image cache if it exists
      id: cache-docker-vivado
      uses: actions/cache@v4
      with:
        path: ci/cache/docker/vivado
        key: cache-docker-vivado
  
    - name: Update Vivado image cache if cache miss
      if: steps.cache-docker-vivado.outputs.cache-hit != 'true'
      run: docker pull timkpaine/vivtest:latest && mkdir -p ci/cache/docker/vivado && docker image save timkpaine/vivtest:latest --output ./ci/cache/docker/vivado/vivado-latest.tar
    
    - name: Use Vivado image cache if cache hit
      if: steps.cache-docker-vivado.outputs.cache-hit == 'true'
      run: docker image load --input ./ci/cache/docker/vivado/vivado-latest.tar
    
    - name: Run Vivado synthesis
      run: docker run -v `pwd`:/mnt/src timkpaine/vivtest bash -lc "pushd /mnt/src && LD_PRELOAD=/lib/x86_64-linux-gnu/libudev.so.1 vivado -mode batch -source scripts/build.tcl