Skip to content

Commit

Permalink
Added stable nightlies
Browse files Browse the repository at this point in the history
  • Loading branch information
set-soft committed May 19, 2023
1 parent 38a7c50 commit eb1a844
Show file tree
Hide file tree
Showing 18 changed files with 231 additions and 0 deletions.
44 changes: 44 additions & 0 deletions .github/workflows/docker-image-stable_nightly.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: KiCad stable nightly Docker image

on:
push:
tags:
- sn*
repository_dispatch:
types: [build_stable_nightly]
schedule:
- cron: '33 5 * * 1-5'

jobs:
push_to_registry:
name: Push Docker image to Docker Hub
runs-on: ubuntu-latest
permissions:
packages: write
contents: read

steps:
- name: Check out the repo
uses: actions/checkout@v3

- name: Log in to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Log in to the Container registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and push Docker image
run: |
cd stable_nightly
./build.sh
- name: Trigger KiCad-Auto image build
run: |
curl -X POST -u "${{secrets.PAT_USERNAME}}:${{secrets.PAT_TOKEN}}" -H "Accept: application/vnd.github.v3+json" -H "Content-Type: application/json" https://api.github.com/repos/INTI-CMNB/kicad_auto/dispatches --data '{"event_type": "build_stable_nightlyp"}'
45 changes: 45 additions & 0 deletions .github/workflows/docker-image-stable_nightly_full.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: KiCad Full stable nightly Docker image

on:
push:
tags:
- snf*
repository_dispatch:
types: [build_stable_nightlyf]
schedule:
- cron: '33 5 * * 1-5'

jobs:
push_to_registry:
name: Push Docker image to Docker Hub
runs-on: ubuntu-latest
permissions:
packages: write
contents: read

steps:
- name: Check out the repo
uses: actions/checkout@v3

- name: Log in to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Log in to the Container registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and push Docker image
run: |
cd stable_nightly_full
./build.sh
- name: Trigger KiCad-Auto image build
run: |
curl -X POST -u "${{secrets.PAT_USERNAME}}:${{secrets.PAT_TOKEN}}" -H "Accept: application/vnd.github.v3+json" -H "Content-Type: application/json" https://api.github.com/repos/INTI-CMNB/kicad_auto_test/dispatches --data '{"event_type": "build_stable_nightlyp"}'
1 change: 1 addition & 0 deletions stable_nightly/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
kicad_version.py
15 changes: 15 additions & 0 deletions stable_nightly/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
FROM ghcr.io/inti-cmnb/base_os:latest_nightly
MAINTAINER Salvador E. Tropea <[email protected]>
LABEL Description="KiCad stable nightly on Ubuntu + tool dependencies"
LABEL org.opencontainers.image.description "KiCad stable nightly on Ubuntu + tool dependencies"

ARG DEBIAN_FRONTEND=noninteractive
ENV TZ=Etc/UTC
RUN add-apt-repository --remove ppa:kicad/kicad-dev-nightly && \
add-apt-repository ppa:kicad/kicad-7.0-nightly && \
apt-get update && \
apt-get -y install --no-install-recommends kicad kicad-templates kicad-libraries kicad-symbols kicad-footprints && \
apt-get -y autoremove && \
rm -rf /var/lib/apt/lists/* /var/cache/debconf/templates.dat-old /var/lib/dpkg/status-old && \
rm -rf /usr/share/icons/Adwaita/ /*.deb
COPY kicad_3d_install.sh kicad_version.py /usr/bin/
9 changes: 9 additions & 0 deletions stable_nightly/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/sh
cp ../kicad_version.py .
docker build -f Dockerfile -t ghcr.io/inti-cmnb/kicad_debian:stable_nightly .
TG1=`docker run --rm ghcr.io/inti-cmnb/kicad_debian:stable_nightly kicad_version.py`
TG2=`docker run --rm ghcr.io/inti-cmnb/kicad_debian:stable_nightly /bin/bash -c "grep DISTRIB_CODENAME /etc/lsb-release | sed s/DISTRIB_CODENAME=//" | tr -d '\n'`
docker tag ghcr.io/inti-cmnb/kicad_debian:stable_nightly ghcr.io/inti-cmnb/kicad_debian:t${TG1}_${TG2}
docker push ghcr.io/inti-cmnb/kicad_debian:t${TG1}_${TG2}
docker push ghcr.io/inti-cmnb/kicad_debian:stable_nightly

4 changes: 4 additions & 0 deletions stable_nightly/kicad_3d_install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/bin/sh
apt-get -y update
apt-get -y install --no-install-recommends kicad-packages3d
rm -rf /var/lib/apt/lists/*
13 changes: 13 additions & 0 deletions stable_nightly/run_kicad_same_user.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/bin/sh
export USER_ID=$(id -u)
export GROUP_ID=$(id -g)
docker run -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY \
--user $USER_ID:$GROUP_ID \
--env NO_AT_BRIDGE=1 \
--workdir="/home/$USER" \
--volume="/etc/group:/etc/group:ro" \
--volume="/home/$USER:/home/$USER:rw" \
--volume="/etc/passwd:/etc/passwd:ro" \
--volume="/etc/shadow:/etc/shadow:ro" \
--volume="/home/$USER:/home/$USER:rw" \
ghcr.io/inti-cmnb/kicad_debian:stable_nightly kicad
13 changes: 13 additions & 0 deletions stable_nightly/run_pcbnew_same_user.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/bin/sh
export USER_ID=$(id -u)
export GROUP_ID=$(id -g)
docker run -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY \
--user $USER_ID:$GROUP_ID \
--env NO_AT_BRIDGE=1 \
--workdir="/home/$USER" \
--volume="/etc/group:/etc/group:ro" \
--volume="/home/$USER:/home/$USER:rw" \
--volume="/etc/passwd:/etc/passwd:ro" \
--volume="/etc/shadow:/etc/shadow:ro" \
--volume="/home/$USER:/home/$USER:rw" \
ghcr.io/inti-cmnb/kicad_debian:stable_nightly pcbnew
2 changes: 2 additions & 0 deletions stable_nightly/run_shell.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#!/bin/sh
docker run --rm -it ghcr.io/inti-cmnb/kicad_debian:stable_nightly /bin/bash
13 changes: 13 additions & 0 deletions stable_nightly/run_shell_same_user.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/bin/sh
export USER_ID=$(id -u)
export GROUP_ID=$(id -g)
docker run --rm -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY \
--user $USER_ID:$GROUP_ID \
--env NO_AT_BRIDGE=1 \
--workdir="/home/$USER" \
--volume="/etc/group:/etc/group:ro" \
--volume="/home/$USER:/home/$USER:rw" \
--volume="/etc/passwd:/etc/passwd:ro" \
--volume="/etc/shadow:/etc/shadow:ro" \
--volume="/home/$USER:/home/$USER:rw" \
ghcr.io/inti-cmnb/kicad_debian:stable_nightly /bin/bash
1 change: 1 addition & 0 deletions stable_nightly_full/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
kicad_version.py
16 changes: 16 additions & 0 deletions stable_nightly_full/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
FROM ghcr.io/inti-cmnb/base_os_full:latest_nightly
MAINTAINER Salvador E. Tropea <[email protected]>
LABEL Description="KiCad stable nightly on Ubuntu + heavy tools"
LABEL org.opencontainers.image.description "KiCad stable nightly on Ubuntu + heavy tools"

ARG DEBIAN_FRONTEND=noninteractive
ENV TZ=Etc/UTC
RUN add-apt-repository --remove ppa:kicad/kicad-dev-nightly && \
add-apt-repository ppa:kicad/kicad-7.0-nightly && \
apt-get update && \
apt-get -y install --no-install-recommends kicad kicad-templates kicad-libraries kicad-symbols kicad-footprints && \
apt-get -y autoremove && \
rm -rf /var/lib/apt/lists/* /var/cache/debconf/templates.dat-old /var/lib/dpkg/status-old && \
rm -rf /usr/share/icons/Adwaita/ /*.deb
COPY kicad_3d_install.sh kicad_version.py /usr/bin/

10 changes: 10 additions & 0 deletions stable_nightly_full/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#!/bin/sh
cp ../kicad_version.py .
docker build -f Dockerfile -t ghcr.io/inti-cmnb/kicad_debian:stable_nightly_full .
TG1=t`docker run --rm ghcr.io/inti-cmnb/kicad_debian:stable_nightly_full kicad_version.py`
TG2=`docker run --rm ghcr.io/inti-cmnb/kicad_debian:stable_nightly_full /bin/bash -c "grep DISTRIB_CODENAME /etc/lsb-release | sed s/DISTRIB_CODENAME=//" | tr -d '\n'`
TG3=b`docker run --rm ghcr.io/inti-cmnb/kicad_debian:stable_nightly_full /bin/bash -c "ls -d /usr/bin/?.? | tr -d '\n' | tail -c 3"`
docker tag ghcr.io/inti-cmnb/kicad_debian:stable_nightly_full ghcr.io/inti-cmnb/kicad_debian:${TG1}_${TG2}_${TG3}
docker push ghcr.io/inti-cmnb/kicad_debian:${TG1}_${TG2}_${TG3}
docker push ghcr.io/inti-cmnb/kicad_debian:stable_nightly_full

4 changes: 4 additions & 0 deletions stable_nightly_full/kicad_3d_install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/bin/sh
apt-get -y update
apt-get -y install --no-install-recommends kicad-packages3d
rm -rf /var/lib/apt/lists/*
13 changes: 13 additions & 0 deletions stable_nightly_full/run_kicad_same_user.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/bin/sh
export USER_ID=$(id -u)
export GROUP_ID=$(id -g)
docker run -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY \
--user $USER_ID:$GROUP_ID \
--env NO_AT_BRIDGE=1 \
--workdir="/home/$USER" \
--volume="/etc/group:/etc/group:ro" \
--volume="/home/$USER:/home/$USER:rw" \
--volume="/etc/passwd:/etc/passwd:ro" \
--volume="/etc/shadow:/etc/shadow:ro" \
--volume="/home/$USER:/home/$USER:rw" \
ghcr.io/inti-cmnb/kicad_debian:stable_nightly_full kicad
13 changes: 13 additions & 0 deletions stable_nightly_full/run_pcbnew_same_user.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/bin/sh
export USER_ID=$(id -u)
export GROUP_ID=$(id -g)
docker run -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY \
--user $USER_ID:$GROUP_ID \
--env NO_AT_BRIDGE=1 \
--workdir="/home/$USER" \
--volume="/etc/group:/etc/group:ro" \
--volume="/home/$USER:/home/$USER:rw" \
--volume="/etc/passwd:/etc/passwd:ro" \
--volume="/etc/shadow:/etc/shadow:ro" \
--volume="/home/$USER:/home/$USER:rw" \
ghcr.io/inti-cmnb/kicad_debian:stable_nightly_full pcbnew
2 changes: 2 additions & 0 deletions stable_nightly_full/run_shell.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#!/bin/sh
docker run --rm -it ghcr.io/inti-cmnb/kicad_debian:stable_nightly_full /bin/bash
13 changes: 13 additions & 0 deletions stable_nightly_full/run_shell_same_user.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/bin/sh
export USER_ID=$(id -u)
export GROUP_ID=$(id -g)
docker run --rm -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY \
--user $USER_ID:$GROUP_ID \
--env NO_AT_BRIDGE=1 \
--workdir="/home/$USER" \
--volume="/etc/group:/etc/group:ro" \
--volume="/home/$USER:/home/$USER:rw" \
--volume="/etc/passwd:/etc/passwd:ro" \
--volume="/etc/shadow:/etc/shadow:ro" \
--volume="/home/$USER:/home/$USER:rw" \
ghcr.io/inti-cmnb/kicad_debian:stable_nightly_full /bin/bash

0 comments on commit eb1a844

Please sign in to comment.