only restart oh when java truely updated #939
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build | |
# Trigger the workflow on push or pull request | |
on: | |
push: | |
paths: | |
- 'build.bash' | |
- 'build-image/openhabian-installer.service' | |
- 'build-image/first-boot.bash' | |
- 'includes/offline-image-modifications.bash' | |
- '.github/workflows/build-action.yml' | |
pull_request: | |
paths: | |
- 'build.bash' | |
- 'build-image/openhabian-installer.service' | |
- 'build-image/first-boot.bash' | |
- 'includes/offline-image-modifications.bash' | |
- '.github/workflows/build-action.yml' | |
workflow_dispatch: | |
inputs: | |
comments: | |
description: 'Build comments' | |
default: 'Build for testing purposes' | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
repository: ${{ github.event.pull_request.head.repo.full_name }} | |
ref: ${{ github.event.pull_request.head.ref }} | |
- name: Setup environment | |
id: setup | |
run: | | |
sudo -E bash -c set | |
sudo apt-get update | |
sudo apt-get install --yes libarchive-zip-perl dos2unix systemd-container qemu-user-static qemu-utils | |
echo "image32=$(basename "$(curl "https://downloads.raspberrypi.org/raspios_lite_armhf_latest" -s -L -I -o /dev/null -w '%{url_effective}')")" >> $GITHUB_OUTPUT | |
echo "image64=$(basename "$(curl "https://downloads.raspberrypi.org/raspios_lite_arm64_latest" -s -L -I -o /dev/null -w '%{url_effective}')")" >> $GITHUB_OUTPUT | |
- name: Cache Raspberry Pi OS 32bit image | |
uses: actions/cache@v4 | |
with: | |
path: ${{ steps.setup.outputs.image32 }} | |
key: ${{ steps.setup.outputs.image32 }} | |
- name: Cache Raspberry Pi OS 64bit image | |
uses: actions/cache@v4 | |
with: | |
path: ${{ steps.setup.outputs.image64 }} | |
key: ${{ steps.setup.outputs.image64 }} | |
- name: Build openHABian images | |
id: build | |
run: | | |
sudo -E ./tests/ci-setup.bash github ${{ github.ref_name }} | |
for f in "openhabian.conf openhabian.pi-raspios32.conf openhabian.pi-raspios64.conf"; do | |
if [[ -f build-image/$f ]]; then | |
sed -i -e "s|^userpw=.*$|userpw=\"${{secrets.USERPW}}\"|g" build-image/$f | |
fi | |
done | |
sed -i -e "s|ap_password:.*$|ap_password: ${{secrets.HOTSPOTPW}}|g" includes/comitup.conf | |
cp build-image/template_rpi-imager-openhab.json rpi-imager-openhab.json | |
sudo -E ./build.bash rpi oldstable | |
#mv openhabian-pi-raspios32*.img.xz openhabian-32-oldstable-$(date +%Y%m%d%H%M).img.xz | |
sudo -E ./build.bash rpi64 oldstable | |
#mv openhabian-pi-raspios64*.img.xz openhabian-64-oldstable-$(date +%Y%m%d%H%M).img.xz | |
sudo -E ./build.bash rpi64 latest | |
#mv openhabian-pi-raspios64*.img.xz openhabian-64-latest-$(date +%Y%m%d%H%M).img.xz | |
#echo "image32=$(ls openhabian-32-oldstable*.img.xz)" >> $GITHUB_OUTPUT | |
#echo "image64=$(ls openhabian-64-oldstable*.img.xz)" >> $GITHUB_OUTPUT | |
#echo "image64latest=$(ls openhabian-64-latest*.img.xz)" >> $GITHUB_OUTPUT | |
echo "image32=$(ls openhabian-pi-raspios32*.img.xz)" >> $GITHUB_OUTPUT | |
echo "image64=$(ls -1t openhabian-pi-raspios64*.img.xz | tail -1)" >> $GITHUB_OUTPUT | |
echo "image64latest=$(ls -1t openhabian-pi-raspios64*.img.xz | head -1)" >> $GITHUB_OUTPUT | |
echo "json_image=$(ls rpi-imager-openhab.json)" >> $GITHUB_OUTPUT | |
- name: Archive openHABian 32bit bullseye image | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ steps.build.outputs.image32 }} | |
path: ${{ steps.build.outputs.image32 }} | |
- name: Archive openHABian 64bit bullseye image | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ steps.build.outputs.image64 }} | |
path: ${{ steps.build.outputs.image64 }} | |
- name: Archive openHABian 64bit bookworm image | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ steps.build.outputs.image64latest }} | |
path: ${{ steps.build.outputs.image64latest }} | |
- name: Archive openHABian json of image download | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ steps.build.outputs.json_image }} | |
path: ${{ steps.build.outputs.json_image }} | |
- name: Create release template | |
if: ${{ success() && github.ref_type == 'tag' && startsWith(github.ref_name, 'v') }} | |
uses: "marvinpinto/[email protected]" | |
with: | |
repo_token: "${{ secrets.GITHUB_TOKEN }}" | |
title: "openHABian ${{ github.ref_name }}" | |
automatic_release_tag: "${{ github.ref_name }}" | |
prerelease: false | |
draft: true | |
files: | | |
${{ steps.build.outputs.image32 }} | |
${{ steps.build.outputs.image64 }} | |
${{ steps.build.outputs.image64latest }} | |
${{ steps.build.outputs.json_image }} |