Docker image for KiCad automation scripts suitable for CI/CD
Go to file
Salvador E. Tropea ffb228ef28 Updated PcbDraw version 2021-12-28 11:14:15 -03:00
.github/workflows Moved nightly to a separated dir and added a workflow for it. 2021-12-05 10:17:02 -03:00
nightly Moved nightly to a separated dir and added a workflow for it. 2021-12-05 10:17:02 -03:00
.gitignore Added make to the image and updated a couple of tools 2020-04-24 23:33:46 -03:00
Dockerfile Fixed: curl from backports 2021-04-28 14:26:14 -03:00
LICENSE Initial commit 2020-04-23 11:09:16 -03:00
Makefile Moved nightly to a separated dir and added a workflow for it. 2021-12-05 10:17:02 -03:00
README.md Updated PcbDraw version 2021-12-28 11:14:15 -03:00
build.sh Build without obsolete download.sh script 2021-09-03 15:02:12 +02:00
run.sh Added KiCad 5.1.6 on Deabian 10.4 2020-05-24 16:09:09 -03:00
run_kicad_same_user.sh Added KiCad 5.1.6 on Deabian 10.4 2020-05-24 16:09:09 -03:00
run_shell_same_user.sh Added script to run a shell in the container. 2020-10-06 17:55:00 -03:00
run_shell_same_user_dev.sh Added more example scripts 2021-11-25 11:13:07 -03:00

README.md

kicad_auto

Docker image for KiCad automation scripts suitable for CI/CD

The main objetive is to use it as a base for KiCad automation in CI/CD environments.

The images are uploaded to Docker Hub.

This image is based on setsoft/kicad_debian and adds some automation tools to it:

The available tags are:

  • 10.3-5.1.5 is KiCad 5.1.5 on Debian 10.3 with Kiplot 0.2.4, kicad-automation-scripts 1.3.1, KiBoM 1.6.3 and interactivehtmlbom 2.3.1
  • 10.4-5.1.6 is KiCad 5.1.6 on Debian 10.4 with KiBot 0.7.0, kicad-automation-scripts 1.4.2, KiBoM 1.8.0, interactivehtmlbom 2.3.3 and PcbDraw 0.6.0-2
  • 10.4-5.1.9 (same as latest) is KiCad 5.1.9 on Debian 10.4 with KiBot 0.11.0, KiAuto 1.5.14, KiBoM 1.8.0, interactivehtmlbom 2.4.1 and PcbDraw 0.9.0-1
  • bullseye-6.0.0-RC1-20211204 (same as nightly) is KiCad 6.0.0 RC1 (20211204) on Debian bullseye with KiBot 0.11.0, kicad-automation-scripts 1.5.14, KiBoM 1.8.0, interactivehtmlbom 2.4.1 and PcbDraw 0.9.0-1

You can run it using a script like this:

export USER_ID=$(id -u)
export GROUP_ID=$(id -g)
export WORKDIR=RELATIVE_PATH_TO_KICAD_PROJECTS
export SUBDIR=SUBDIR_INSIDE_WORKDIR
docker run --rm -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY \
    -v $(pwd)/$WORKDIR:/home/$USER/workdir \
    --user $USER_ID:$GROUP_ID \
    --env NO_AT_BRIDGE=1 \
    --workdir="/home/$USER" \
    --volume="/etc/group:/etc/group:ro" \
    --volume="/home/$USER/.config/kicad:/home/$USER/.config/kicad:rw" \
    --volume="/home/$USER/.cache/kicad:/home/$USER/.cache/kicad:rw" \
    --volume="/etc/passwd:/etc/passwd:ro" \
    --volume="/etc/shadow:/etc/shadow:ro" \
    setsoft/kicad_auto:10.3-5.1.5 /bin/bash -c "cd workdir/$SUBDIR; kiplot"

To create the docker image run the build.sh script. This script will download the latest KiPlot and needed tools.

The run.sh script is an example of how to run KiPlot using this image locally. You must edit the file to define the place where your KiCad project is located. The WORKDIR variable indicates the directory where your project and libraries are located. The SUBDIR variable is the subdir inside WORKDIR that contains the schematic and PCB files.