name: Build OS image of current master on: push: branches: - master jobs: build: runs-on: ubuntu-20.04 steps: - name: Run apt update run: sudo apt update - name: Install dependencies run: sudo apt -y install quilt qemu-user-static debootstrap libarchive-tools jq - name: Nuke current Docker installation run: | sudo systemctl stop docker sudo apt-get purge docker-ce docker-ce-cli containerd.io moby-engine moby-cli sudo rm -rf /var/lib/docker - name: Re-install Docker run: | curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh docker --version - name: Enable experimental features in Docker run: | sudo rm -rf /etc/docker/daemon.json echo '{"experimental": true}' | sudo tee -a /etc/docker/daemon.json sudo systemctl restart docker - name: Download Umbrel OS build scripts run: | git clone https://github.com/getumbrel/umbrel-os.git - name: Setting env vars run: | UMBREL_OS_VERSION="dev" IMAGE_NAME="umbrel-os-dev" UMBREL_REPO="https://github.com/getumbrel/umbrel.git" UMBREL_BRANCH="master" echo "UMBREL_OS_VERSION=$UMBREL_OS_VERSION" >> $GITHUB_ENV echo "IMAGE_NAME=$IMAGE_NAME">> $GITHUB_ENV echo "UMBREL_REPO=$UMBREL_REPO">> $GITHUB_ENV echo "UMBREL_BRANCH=$UMBREL_BRANCH" >> $GITHUB_ENV - name: Build Umbrel OS run: | cd umbrel-os echo "Building $IMAGE_NAME" sudo IMG_FILENAME=$IMAGE_NAME ZIP_FILENAME=$IMAGE_NAME UMBREL_OS_VERSION=$UMBREL_OS_VERSION UMBREL_REPO=$UMBREL_REPO UMBREL_BRANCH=$UMBREL_BRANCH ./build.sh cd .. - name: Copy ZIP to current working dir run: cp umbrel-os/deploy/*.zip ./ - name: Uploading artifacts uses: actions/upload-artifact@v2 with: path: ${{ env.IMAGE_NAME }}.zip name: ${{ env.IMAGE_NAME }}.zip