diff --git a/.cirrus.expect b/.cirrus.expect deleted file mode 100755 index 9a9ee41..0000000 --- a/.cirrus.expect +++ /dev/null @@ -1,15 +0,0 @@ -#!/usr/bin/expect - -# SPDX-FileCopyrightText: 2021 fosslinux -# -# SPDX-License-Identifier: GPL-3.0-or-later - -set timeout -1 - -spawn python3 rootfs.py --qemu-cmd qemu-system-x86_64 --qemu-ram 3500 -expect { - "not syncing: Attempted to kill init" {} - "Bootstrapping completed." {} -} -send -- "\x01" -send -- "x" diff --git a/.cirrus.yml b/.cirrus.yml deleted file mode 100644 index f8c8e04..0000000 --- a/.cirrus.yml +++ /dev/null @@ -1,70 +0,0 @@ -# SPDX-FileCopyrightText: 2021 fosslinux -# SPDX-FileCopyrightText: 2021 Andrius Štikonas -# -# SPDX-License-Identifier: GPL-3.0-or-later - -pylint_task: - container: - image: debian:bullseye - deps_script: - - apt-get -y update - - apt-get -y dist-upgrade - - apt-get -y install python3-pip python3-requests - - apt-get -y clean - - pip3 install pylint - check_script: - - pylint rootfs.py sysa.py sysc.py lib/utils.py lib/sysgeneral.py lib/tmpdir.py --disable=duplicate-code - -shell_lint_task: - container: - image: debian:stable - deps_script: - - apt-get -y update - - apt-get -y dist-upgrade - - apt-get -y install shellcheck - - apt-get -y clean - check_script: - - shellcheck sysa/run.sh sysa/run2.sh sysb/init sysb/run.sh sysc/init sysc/run.sh sysa/helpers.sh download-distfiles.sh - -reuse_lint_task: - container: - image: debian:stable - deps_script: - - apt-get -y update - - apt-get -y dist-upgrade - - apt-get -y install python3-pip git - - apt-get -y clean - - pip3 install reuse - check_script: - - reuse lint - -# XXX: Takes too long right now -#run_task: -# timeout_in: 180m -# container: -# image: potyarkin/molecule:host-kvm -# kvm: true -# cpu: 2 -# memory: 4G -# # Required background services -# dbus_background_script: -# - mkdir -p /var/run/dbus -# - /usr/bin/dbus-daemon --system --nofork --nopidfile -# virtlogd_background_script: -# - /usr/sbin/virtlogd -# libvirtd_background_script: -# - sleep 2 && /usr/sbin/libvirtd -# iptables_legacy_script: -# - update-alternatives --set iptables /usr/sbin/iptables-legacy -# deps_script: -# - apt-get -y update -# - apt-get -y dist-upgrade -# - apt-get -y install sudo git cpio linux-image-4.19.0-16-amd64 expect wget -# - apt-get -y clean -# submodule_script: -# - git submodule update --init --recursive -# kernel_script: -# - cp /boot/vmlinuz-4.19.0-16-amd64 ./kernel -# run_script: -# - ./.cirrus.expect | tee -a /tmp/run.log -# - grep -q 'Bootstrapping completed.' /tmp/run.log diff --git a/.github/workflows/bwrap.yml b/.github/workflows/bwrap.yml new file mode 100644 index 0000000..92cb662 --- /dev/null +++ b/.github/workflows/bwrap.yml @@ -0,0 +1,52 @@ +# SPDX-FileCopyrightText: 2023 fosslinux +# +# SPDX-License-Identifier: GPL-3.0-or-later + +name: Run under bubblewrap + +on: + workflow_dispatch: + pull_request: + push: + branches: + - master + +jobs: + run: + name: Run under bubblewrap + runs-on: ubuntu-latest + steps: + - name: Install bubblewrap + run: sudo apt install bubblewrap + - name: Checkout repo + uses: actions/checkout@v3 + with: + submodules: recursive + - name: Query cache for sources + id: cache + uses: actions/cache/restore@v3 + with: + path: | + sysa/distfiles + sysc/distfiles + key: cache-${{ hashFiles('sys*/*/sources') }} + - name: Get sources + if: steps.cache.outputs.cache-hit != 'true' + run: ./download-distfiles.sh + - name: Cache sources + if: steps.cache.outputs.cache-hit != 'true' + uses: actions/cache/save@v3 + with: + path: | + sysa/distfiles + sysc/distfiles + key: cache-${{ hashFiles('sys*/*/sources') }} + - name: Run bootstrap + id: bootstrap + run: ./rootfs.py --bwrap --external-sources --preserve + - name: Archive created packages + if: steps.bootstrap.conclusion == 'success' + uses: actions/upload-artifact@v3 + with: + name: packages + path: tmp/sysa/sysc_image/usr/src/repo/** diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml new file mode 100644 index 0000000..639d3d3 --- /dev/null +++ b/.github/workflows/lint.yml @@ -0,0 +1,44 @@ +# SPDX-FileCopyrightText: 2023 fosslinux +# +# SPDX-License-Identifier: GPL-3.0-or-later + +name: Linters + +on: + workflow_dispatch: + pull_request: + push: + branches: + - master + +jobs: + pylint: + name: Lint Python files + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v3 + - name: Install pylint + run: sudo pip3 install pylint + - name: pylint + run: pylint rootfs.py sysa.py sysc.py lib/utils.py lib/sysgeneral.py lib/tmpdir.py --disable=duplicate-code + + shellcheck: + name: Lint shell files + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v3 + - name: shellcheck + run: shellcheck sysa/run.sh sysa/run2.sh sysb/init sysb/run.sh sysc/init sysc/run.sh sysa/helpers.sh download-distfiles.sh + + reuse: + name: Lint reuse information + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v3 + - name: Install reuse + run: sudo pip3 install reuse + - name: reuse + run: reuse lint diff --git a/sysa.py b/sysa.py index 7aa57a8..e495f2a 100755 --- a/sysa.py +++ b/sysa.py @@ -7,6 +7,7 @@ # SPDX-FileCopyrightText: 2021-23 fosslinux import os +# pylint: disable=deprecated-module from distutils.dir_util import copy_tree import shutil import tarfile