Add automated image builds for VM, bare metal (amd64) and RPi (arm64-rpi) (#3486)
* add amd64 image build with lean and fatpack option
* use the pi user for setup
* add notes to ci readme
* add gnome desktop to fatpack image, reduce to 30GB
* documentation updates
* install gnome with --force-yes
* install gnome desktop non-interactively
* change links to rootzoll dev
* pass user and branch to build_sdcard.sh from PR
* add user and branch to Makefile
* Add arm64 rpi image build (#74)
ci:
* add arm64-rpi image build
* rename to raspiblitz-amd64-debian-11.5-lean/fatpack
* use rm -f to not exit with error
* place amd64 images under ci/amd64/builds/
* make /dev/shm world writable for fatpack
* fix vlc remove and --var syntax
* remove sudo-s
* leave update and upgrade to the build_sdcard.sh
* increase image size to 16GB, rename build dir
build_sdcard.sh:
* detect raspios_arm64 with raspi.list
* switch ssmtp to msmtp
related: https://github.com/rootzoll/raspiblitz/pull/2232
Co-authored-by: rootzoll <johndoe@example.com>
* i2pd: unified install from repo, /usr/sbin to PATH
related: #2413, fixes amd64 build
* update CHANGES.md
* fix amd64 path in Makefile
* use only qemu image, run on ubuntu-22.04
* use file_checksum for the arm64-rpi base image
* Fix the local arm64-rpi image generation (#75)
* add selfrun script
* ubuntu: add universe repo and qemu-user-static
* test on ubuntu live (jammy)
* build from branches: [ "dev", "v1.8", "v1.9" ]
* correct Makefile paths for the local run
* make the local run non-interactive
* improve readme and Makefile
* increase disk image sizes to 32GB
* set image sizes to 30 GB for amd64 and arm64-rpi
* add network-manager for amd64
* add to readme
* skip Code&Compile for VM builds
* add to readme
* amd64 base image update to debian 11.6.0
* remove debian version from filenames
* skip Code&Compile for amd64 builds
* Merge branch 'dev' into add-amd64-image-build
* amd64: increase cpu and RAM, compile mempool last
* trigger workflows only on scripts used or called
* Update ci/arm64-rpi/packer.build.arm64-rpi.sh
Co-authored-by: Daniel Bast <2790401+dbast@users.noreply.github.com>
* arm64 remove setup-qemu-action, leave npm last
* set only manual trigger for fatpack, edit triggers
Co-authored-by: rootzoll <johndoe@example.com>
Co-authored-by: Daniel Bast <2790401+dbast@users.noreply.github.com>
2022-12-20 15:31:51 +01:00
|
|
|
name: amd64-fatpack-image-build
|
|
|
|
|
2023-07-08 12:58:00 +00:00
|
|
|
concurrency:
|
|
|
|
group: amd64-fatpack-image-build-${{ github.head_ref }}
|
|
|
|
cancel-in-progress: true
|
|
|
|
|
Add automated image builds for VM, bare metal (amd64) and RPi (arm64-rpi) (#3486)
* add amd64 image build with lean and fatpack option
* use the pi user for setup
* add notes to ci readme
* add gnome desktop to fatpack image, reduce to 30GB
* documentation updates
* install gnome with --force-yes
* install gnome desktop non-interactively
* change links to rootzoll dev
* pass user and branch to build_sdcard.sh from PR
* add user and branch to Makefile
* Add arm64 rpi image build (#74)
ci:
* add arm64-rpi image build
* rename to raspiblitz-amd64-debian-11.5-lean/fatpack
* use rm -f to not exit with error
* place amd64 images under ci/amd64/builds/
* make /dev/shm world writable for fatpack
* fix vlc remove and --var syntax
* remove sudo-s
* leave update and upgrade to the build_sdcard.sh
* increase image size to 16GB, rename build dir
build_sdcard.sh:
* detect raspios_arm64 with raspi.list
* switch ssmtp to msmtp
related: https://github.com/rootzoll/raspiblitz/pull/2232
Co-authored-by: rootzoll <johndoe@example.com>
* i2pd: unified install from repo, /usr/sbin to PATH
related: #2413, fixes amd64 build
* update CHANGES.md
* fix amd64 path in Makefile
* use only qemu image, run on ubuntu-22.04
* use file_checksum for the arm64-rpi base image
* Fix the local arm64-rpi image generation (#75)
* add selfrun script
* ubuntu: add universe repo and qemu-user-static
* test on ubuntu live (jammy)
* build from branches: [ "dev", "v1.8", "v1.9" ]
* correct Makefile paths for the local run
* make the local run non-interactive
* improve readme and Makefile
* increase disk image sizes to 32GB
* set image sizes to 30 GB for amd64 and arm64-rpi
* add network-manager for amd64
* add to readme
* skip Code&Compile for VM builds
* add to readme
* amd64 base image update to debian 11.6.0
* remove debian version from filenames
* skip Code&Compile for amd64 builds
* Merge branch 'dev' into add-amd64-image-build
* amd64: increase cpu and RAM, compile mempool last
* trigger workflows only on scripts used or called
* Update ci/arm64-rpi/packer.build.arm64-rpi.sh
Co-authored-by: Daniel Bast <2790401+dbast@users.noreply.github.com>
* arm64 remove setup-qemu-action, leave npm last
* set only manual trigger for fatpack, edit triggers
Co-authored-by: rootzoll <johndoe@example.com>
Co-authored-by: Daniel Bast <2790401+dbast@users.noreply.github.com>
2022-12-20 15:31:51 +01:00
|
|
|
on:
|
|
|
|
workflow_dispatch:
|
|
|
|
#push:
|
|
|
|
# branches: [ "dev", "v1.8", "v1.9" ]
|
|
|
|
# paths:
|
|
|
|
# - 'build_sdcard.sh'
|
|
|
|
# - 'home.admin/bitcoin.install.sh'
|
|
|
|
# - 'home.admin/lnd.install.sh'
|
|
|
|
# - 'home.admin/cl.install.sh'
|
|
|
|
# - 'home.admin/cl-plugin.cln-grpc.sh'
|
|
|
|
# - 'home.admin/tor.install.sh'
|
|
|
|
# - 'home.admin/blitz.i2pd.sh'
|
|
|
|
# - 'home.admin/blitz.web.sh'
|
|
|
|
# - 'home.admin/bonus.nodejs.sh'
|
|
|
|
# - 'home.admin/bonus.rtl.sh'
|
|
|
|
# - 'home.admin/bonus.btcpayserver.sh'
|
|
|
|
# - 'home.admin/bonus.thunderhub.sh'
|
|
|
|
# - 'home.admin/bonus.jam.sh install'
|
|
|
|
# - 'home.admin/bonus.mempool.sh'
|
|
|
|
# - 'home.admin/blitz.web.api.sh'
|
|
|
|
# - 'home.admin/blitz.web.ui.sh'
|
|
|
|
# - 'home.admin/blitz.display.sh'
|
|
|
|
# - 'ci/amd64/**'
|
|
|
|
#pull_request:
|
|
|
|
# branches: [ "dev", "v1.8", "v1.9" ]
|
|
|
|
# paths:
|
|
|
|
# - 'build_sdcard.sh'
|
|
|
|
# - 'home.admin/bitcoin.install.sh'
|
|
|
|
# - 'home.admin/lnd.install.sh'
|
|
|
|
# - 'home.admin/cl.install.sh'
|
|
|
|
# - 'home.admin/cl-plugin.cln-grpc.sh'
|
|
|
|
# - 'home.admin/tor.install.sh'
|
|
|
|
# - 'home.admin/blitz.i2pd.sh'
|
|
|
|
# - 'home.admin/blitz.web.sh'
|
|
|
|
# - 'home.admin/bonus.nodejs.sh'
|
|
|
|
# - 'home.admin/bonus.rtl.sh'
|
|
|
|
# - 'home.admin/bonus.btcpayserver.sh'
|
|
|
|
# - 'home.admin/bonus.thunderhub.sh'
|
|
|
|
# - 'home.admin/bonus.jam.sh install'
|
|
|
|
# - 'home.admin/bonus.mempool.sh'
|
|
|
|
# - 'home.admin/blitz.web.api.sh'
|
|
|
|
# - 'home.admin/blitz.web.ui.sh'
|
|
|
|
# - 'home.admin/blitz.display.sh'
|
|
|
|
# - 'ci/amd64/**'
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
amd64-image-build:
|
|
|
|
runs-on: ubuntu-22.04
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v3
|
|
|
|
|
|
|
|
- name: Set values
|
|
|
|
run: |
|
|
|
|
echo "BUILD_DATE=$(date +"%Y-%m-%d")" >> $GITHUB_ENV
|
|
|
|
echo "BUILD_VERSION=$(git describe --always --tags)" >> $GITHUB_ENV
|
|
|
|
|
|
|
|
- name: Hello RaspiBlitz
|
|
|
|
run: echo "Building the raspiblitz-amd64-debian-image-${{env.BUILD_DATE}}-${{env.BUILD_VERSION}} at "
|
|
|
|
|
|
|
|
- name: Run the build script
|
|
|
|
run: |
|
|
|
|
cd ci/amd64
|
|
|
|
bash packer.build.amd64-debian.sh fatpack $GITHUB_ACTOR $GITHUB_HEAD_REF
|
|
|
|
|
|
|
|
- name: Compute checksum of the raw image
|
|
|
|
run: |
|
|
|
|
cd ci/amd64/builds/raspiblitz-amd64-debian-fatpack-qemu/
|
|
|
|
sha256sum raspiblitz-amd64-debian-fatpack.qcow2 > raspiblitz-amd64-debian-fatpack.qcow2.sha256
|
|
|
|
|
|
|
|
- name: Compress image
|
|
|
|
run: |
|
|
|
|
cd ci/amd64/builds/raspiblitz-amd64-debian-fatpack-qemu/
|
|
|
|
gzip -v9 raspiblitz-amd64-debian-fatpack.qcow2
|
|
|
|
|
|
|
|
- name: Compute checksum of the compressed image
|
|
|
|
run: |
|
|
|
|
cd ci/amd64/builds/raspiblitz-amd64-debian-fatpack-qemu/
|
|
|
|
sha256sum raspiblitz-amd64-debian-fatpack.qcow2.gz > raspiblitz-amd64-debian-fatpack.qcow2.gz.sha256
|
|
|
|
|
|
|
|
- name: Upload the image and checksums
|
|
|
|
uses: actions/upload-artifact@v3
|
|
|
|
with:
|
|
|
|
name: raspiblitz-amd64-image-${{env.BUILD_DATE}}-${{env.BUILD_VERSION}}
|
|
|
|
path: |
|
|
|
|
${{github.workspace}}/ci/amd64/builds/raspiblitz-amd64-debian-fatpack-qemu/raspiblitz-amd64-debian-fatpack.qcow2.sha256
|
|
|
|
${{github.workspace}}/ci/amd64/builds/raspiblitz-amd64-debian-fatpack-qemu/raspiblitz-amd64-debian-fatpack.qcow2.gz
|
|
|
|
${{github.workspace}}/ci/amd64/builds/raspiblitz-amd64-debian-fatpack-qemu/raspiblitz-amd64-debian-fatpack.qcow2.gz.sha256
|