Inkycal/.github/workflows/test-on-rpi.yml

71 lines
2.8 KiB
YAML
Raw Normal View History

2023-08-18 01:15:09 +02:00
name: Run tests on Raspberry Pi OS
on:
push:
branches:
2023-11-07 23:15:49 +01:00
- main
pull_request:
branches:
- main
2023-08-18 01:15:09 +02:00
jobs:
test-on-rpi-os:
name: Run Tests on Raspberry Pi OS
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Build Raspberry Pi OS
uses: pguyot/arm-runner-action@v2
id: build_image
env:
INKY_INITAL_PASSWORD: ${{ secrets.INKY_INITAL_PASSWORD }}
OPENWEATHERMAP_API_KEY: ${{ secrets.OPENWEATHERMAP_API_KEY }}
SAMPLE_ICAL_URL: ${{ secrets.SAMPLE_ICAL_URL }}
TEST_ICAL_URL: ${{ secrets.TEST_ICAL_URL }}
TODOIST_API_KEY: ${{ secrets.TODOIST_API_KEY }}
2024-01-20 21:14:36 +01:00
TINDIE_API_KEY: ${{ secrets.TINDIE_API_KEY }}
TINDIE_USERNAME: ${{ secrets.TINDIE_USERNAME }}
2023-08-18 01:15:09 +02:00
with:
# Set the base_image to the desired Raspberry Pi OS version
2024-01-23 16:36:44 +01:00
base_image: https://downloads.raspberrypi.com/raspios_lite_armhf/images/raspios_lite_armhf-2023-12-11/2023-12-11-raspios-bookworm-armhf-lite.img.xz
2023-11-21 16:26:37 +01:00
image_additional_mb: 2560 # enlarge free space to 2.5 GB
2023-08-18 01:15:09 +02:00
optimize_image: true
2024-02-11 13:47:22 +01:00
# user: inky --> not supported?
2023-08-18 01:15:09 +02:00
commands: |
cd /home
sudo useradd -m -p "$(openssl passwd -1 $INKY_INITAL_PASSWORD)" inky
sudo usermod -a -G adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,input,netdev,gpio,i2c,spi inky
sudo su inky
echo $HOME
whoami
cd /home/inky
sudo apt-get update -y
2024-02-11 13:47:22 +01:00
# try support for python 3.12
2024-02-12 20:46:33 +01:00
wget -q https://www.python.org/ftp/python/3.12.2/Python-3.12.2.tgz
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev cmake -y
tar -xzf Python-3.12.2.tgz
2024-02-11 13:47:22 +01:00
cd Python-3.12.2/
2024-02-12 20:46:33 +01:00
./configure --enable-optimizations
sudo make altinstall > /dev/null 2>&1
2024-02-11 13:47:22 +01:00
sudo rm /usr/bin/python
sudo ln -s /usr/local/bin/python3.12 /usr/bin/python
2023-08-18 01:15:09 +02:00
python --version
sudo apt-get install -y python3-pip
2024-02-10 23:08:10 +01:00
sudo apt-get install zlib1g libjpeg-dev libatlas-base-dev rustc libopenjp2-7 python3-dev scons libssl-dev python3-venv python3-pip git libfreetype6-dev wkhtmltopdf libopenblas-dev -y
2023-08-18 01:15:09 +02:00
echo $PWD && ls
git clone --branch main --single-branch https://github.com/aceinnolab/Inkycal
cd Inkycal
2024-02-11 13:47:22 +01:00
python3.12 -m venv venv
2023-08-18 01:15:09 +02:00
. venv/bin/activate
python -m pip install --upgrade pip
pip install wheel
pip install -e ./
2023-12-21 16:54:23 +01:00
pip install RPi.GPIO==0.7.1 spidev==3.5 gpiozero==2.0
2023-08-18 01:15:09 +02:00
wget https://raw.githubusercontent.com/aceinnolab/Inkycal/assets/tests/settings.json
2023-11-08 01:00:48 +01:00
pip install pytest
python -m pytest