Skip to content

Fix workflow target branch. #354

Fix workflow target branch.

Fix workflow target branch. #354

Workflow file for this run

# This is a basic workflow to help you get started with Actions
name: Bitbake qemuriscv
# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the kirkstone branch
push:
branches: [ nanbield ]
pull_request:
branches: [ nanbield ]
schedule:
- cron: '0 12 * * 5'
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
env:
TARGET_VERSION: nanbield
TARGET_BITBAKE_VERSION: 2.6.1
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
bitbake-riscv:
strategy:
matrix:
target_machine: [qemuriscv64, qemuriscv32]
tensorflow_version: [2.15.1]
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v2
- name: Cleanup
run: |
docker images
sudo rm -rf "/opt/*" || true
sudo rm -rf "/usr/share/dotnet" || true
sudo rm -rf "$AGENT_TOOLSDIRECTORY" || true
sudo rm -rf "/usr/local/lib/android" || true
sudo rm -rf "/usr/local/share/boost" || true
sudo rm -rf "/usr/lib/jvm" || true
sudo rm -rf "/usr/share/swift" || true
sudo rm -rf "/usr/local/julia*" || true
sudo rm -rf "/usr/share/kotlinc" || true
sudo rm -rf "/usr/local/share/edge_driver" || true
sudo rm -rf "/usr/local/share/chromedriver-linux64" || true
sudo rm -rf "/usr/local/share/gecko_driver" || true
sudo rm -rf "/usr/share/miniconda" || true
sudo rm -rf "/usr/local/share/phantomjs*" || true
sudo rm -rf "/usr/share/sbt" || true
sudo rm -rf "/usr/local/sqlpackage" || true
sudo rm -rf "/usr/bin/yq" || true
sudo rm -rf "/usr/local/share/vcpkg" || true
sudo rm -rf "/usr/local/bin/terraform" || true
sudo rm -rf "/usr/local/bin/stack" || true
sudo rm -rf "/usr/local/bin/aliyun" || true
sudo rm -rf "/usr/local/bin/pulumi" || true
sudo rm -rf "/usr/local/bin/pulumi-language-dotnet" || true
sudo rm -rf "/usr/local/bin/azcopy" || true
sudo rm -rf "/usr/local/aws-cli" || true
sudo rm -rf "/usr/local/bin/bicep" || true
sudo rm -rf "/usr/local/bin/rebar3" || true
sudo rm -rf "/usr/local/bin/phpunit" || true
sudo rm -rf "/usr/local/bin/packer" || true
sudo rm -rf "/usr/local/bin/bicep" || true
sudo rm -rf "/usr/local/bin/docker-compose" || true
sudo rm -rf "/home/.dotnet/tools" || true
sudo rm -rf "/etc/skel/.dotnet/tools" || true
sudo rm -rf "/usr/local/bin/minikube" || true
sudo rm -rf "/usr/local/bin/kustomize" || true
sudo rm -rf "/usr/local/bin/kubectl" || true
sudo rm -rf "/usr/local/bin/kind" || true
sudo rm -rf "/usr/local/bin/helm" || true
sudo rm -rf "/home/linuxbrew" || true
sudo rm -rf "/usr/share/apache-maven-3.8.8" || true
sudo rm -rf "/usr/share/gradle-8.7" || true
sudo rm -rf "/usr/local/share/phantomjs-8.6" || true
sudo rm -rf "/usr/local/bin/azcopy_11.3.1" || true
sudo rm -rf "/usr/local/bin/bicep" || true
sudo rm -rf "/usr/local/bin/.ghcup" || true
sudo rm -rf "/usr/local/.ghcup" || true
sudo rm -rf "/home/.nvm" || true
sudo rm -rf "/usr/bin/composer" || true
sudo rm -rf "/usr/local/bin/phpunit" || true
sudo rm -rf "/usr/local/bin/pulumi-analyzer-policy" || true
sudo rm -rf "/usr/local/bin/pulumi-analyzer-policy-python" || true
sudo rm -rf "/usr/local/bin/pulumi-language-java" || true
sudo rm -rf "/usr/local/bin/pulumi-language-nodejs" || true
sudo rm -rf "/usr/local/bin/pulumi-language-go" || true
sudo rm -rf "/usr/local/bin/pulumi-language-python" || true
sudo rm -rf "/usr/local/bin/pulumi-language-python-exec" || true
sudo rm -rf "/usr/local/bin/pulumi-language-yaml" || true
sudo rm -rf "/usr/local/bin/pulumi-resource-pulumi-nodejs" || true
sudo rm -rf "/usr/local/bin/pulumi-resource-pulumi-python" || true
sudo rm -rf "/usr/local/bin/pulumi-watch" || true
sudo rm -rf "/usr/local/bin/oc" || true
sudo rm -rf "/usr/local/bin/ctest" || true
sudo rm -rf "/usr/local/bin/cmake-gui" || true
sudo rm -rf "/usr/local/bin/ccmake" || true
sudo rm -rf "/usr/local/bin/cpack" || true
sudo rm -rf "/usr/local/bin/oras" || true
sudo rm -rf "/usr/local/share/emacs" || true
sudo rm -rf "/usr/local/share/fonts" || true
sudo rm -rf "/usr/local/share/icons" || true
sudo rm -rf "/usr/local/share/man" || true
sudo rm -rf "/usr/local/share/chromium" || true
sudo rm -rf "/usr/local/share/powershell" || true
sudo rm -rf "/usr/local/share/doc" || true
sudo rm -rf "/home/perflog" || true
sudo rm -rf "/usr/libexec/docker/cli-plugins" || true
sudo rm -rf "/usr/bin/docker-credential-ecr-login" || true
sudo rm -rf "/usr/local/lib/lein" || true
sudo docker image prune --all --force
sudo npm uninstall bazel || true
sudo npm uninstall bazelisk || true
rustup self uninstall -y
sudo apt purge \
ansible \
aria2 \
azure-cli \
cabal* \
clang* \
dotnet-sdk* \
ghc* \
google-chrome-stable \
kubectl \
mysql* \
node* \
npm* \
php* \
powershell \
rpm \
ruby* \
subversion \
yarn \
firefox \
mono-complete \
nuget \
apache2 \
moby-engine \
moby-cli \
moby-buildx \
moby-compose \
microsoft-edge-stable \
mongodb* \
nginx \
postgresql* \
libpq-dev \
r-base \
sphinxsearch \
swig \
tcl \
temurin-* \
skopeo \
imagemagick-* \
mssql-tools* \
unixodbc-dev \
ubuntu-advantage-tools \
docker-* \
fonts-* \
llvm-* \
javascript-common \
openjdk-11-jre-headless \
linux-cloud-tools* \
linux-azure-6.2-* \
hicolor-icon-theme \
gcc-9 \
gcc-10 \
gcc-11 \
gcc-12 \
cloud-initramfs* \
x11-* \
bind9-* \
cloud-* \
gir1.2-* \
golang-github-* \
libjs-* \
libllvm* \
nano \
python3-* \
podman \
buildah \
skopeo \
temurin-* \
ant \
ant-optional \
libmysqlclient-dev \
libxft-dev \
libfreetype6-dev \
libfontconfig1-dev \
libpq-dev \
tcl* \
p7zip* \
gfortran-13 \
gcc-12-* \
gcc-11-* \
google-cloud-cli \
heroku \
snmp \
liblz4-dev \
man-db \
packages-microsoft-prod \
perl \
*-dev \
linux-headers-* \
manpages \
-yq || true
sudo dpkg -r packages-microsoft-prod > /dev/null 2>&1 || true
sudo apt-get autoremove -y > /dev/null 2>&1 || true
sudo apt-get autoclean -y > /dev/null 2>&1 || true
# Install essential host packages
- name: Install Pakages
run: |
sudo apt-get update
sudo apt-get -y install gawk wget git-core diffstat unzip texinfo gcc-multilib \
build-essential chrpath socat cpio python3 python3-pip python3-pexpect xz-utils \
debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev \
pylint xterm zstd liblz4-tool
sudo apt-get clean
# checkout repository
- name: Clone poky, meta-raspberrypi, meta-openembedded
run: |
git clone -b ${TARGET_VERSION} git://git.yoctoproject.org/poky.git
git clone -b master https://github.com/riscv/meta-riscv.git
git clone -b ${TARGET_VERSION} git://git.openembedded.org/meta-openembedded
working-directory: ..
# Run bitbake
- name: Bitbake MACHINE=${{ matrix.target_machine }}, TensorFlow-Lite ${{ matrix.tensorflow_version }}
run: |
source poky/oe-init-build-env rpi-build
bitbake-layers add-layer ../meta-openembedded/meta-oe/
bitbake-layers add-layer ../meta-openembedded/meta-python/
bitbake-layers add-layer ../meta-tensorflow-lite/
bitbake-layers add-layer ../meta-riscv/
cat <<EOF> conf/auto.conf
FORTRAN:forcevariable = ",fortran"
PREFERRED_VERSION_python3-tensorflow-lite="${{ matrix.tensorflow_version }}"
PREFERRED_VERSION_libtensorflow-lite="${{ matrix.tensorflow_version }}"
EOF
cat conf/auto.conf
MACHINE=${{matrix.target_machine}} bitbake python3-tensorflow-lite libtensorflow-lite \
libtensorflow-lite-c python3-tensorflow-lite-example tensorflow-lite-label-image \
tensorflow-lite-minimal tensorflow-lite-benchmark libedgetpu-std
df -h
working-directory: ../