Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download
name: Domoticz Development (Beta)on:push:branches: [ development ]# Allows you to run this workflow manually from the Actions tabworkflow_dispatch:# A workflow run is made up of one or more jobs that can run sequentially or in paralleljobs:# This workflow contains a single job called "build"build:# The type of runner that the job will run onruns-on: ubuntu-latest# Steps represent a sequence of tasks that will be executed as part of the jobsteps:# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it- uses: actions/checkout@v2with:fetch-depth: 0submodules: true#- name: Make an error (Enable debug)# run: ./not-exist-file.sh it bloke build# install dependencies- name: dependenciesrun: |sudo apt-get update && sudo apt-get installsudo apt-get install make gcc g++ libssl-dev git libcurl4-gnutls-dev libusb-dev python3-dev zlib1g-dev libcereal-dev liblua5.3-dev uthash-dev# get CMake- name: cmake-compilerun: |curl -sSL https://github.com/Kitware/CMake/releases/download/v3.19.3/cmake-3.19.3-Linux-x86_64.tar.gz -o cmake.tar.gz;sudo tar xf cmake.tar.gz --strip 1 -C /usr/local;export PATH=/usr/local/bin:$PATH;# Boost- name: build boost librariesrun: |wget https://boostorg.jfrog.io/artifactory/main/release/1.76.0/source/boost_1_76_0.tar.gz >> /dev/null 2>&1tar xfz boost_1_76_0.tar.gzcd boost_1_76_0/./bootstrap.sh./b2 stage threading=multi link=static --with-thread --with-system --with-chrono >> /dev/null 2>&1sudo ./b2 install threading=multi link=static --with-thread --with-system --with-chrono >> /dev/null 2>&1# OpenZWave- name: openzwaverun: |cd $GITHUB_WORKSPACEcd ..git clone https://github.com/domoticz/open-zwave.git open-zwave-read-onlycd open-zwave-read-onlymakesudo make install >> /dev/null 2>&1# Domoticz- name: build domoticzrun: |cd $GITHUB_WORKSPACEcmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_LIBRARY_PATH=open-zwave-read-only CMakeLists.txtmake# Packaging- name: package domoticzif: ${{ false }}run: |cd $GITHUB_WORKSPACEmkdir packagetar czf package/domoticz_linux_x86_64.tgz domoticz History.txt License.txt domoticz.sh server_cert.pem updatebeta updaterelease www/ scripts/ Config/ dzVents/shasum -a 256 package/domoticz_linux_x86_64.tgz > package/domoticz_linux_x86_64.tgz.sha256sumcp appversion.h.txt package/version_linux_x86_64.hcp History.txt package/history_linux_x86_64.txt# Artifact upload- name: Upload artifactsif: ${{ false }}uses: actions/upload-artifact@v2with:name: domoticz_linux_x86_64-${{ github.sha }}path: package/domoticz_linux_x86_64.tgzretention-days: 7# Deploy- name: FTP Deploymentif: ${{ false }}#if: github.repository_owner == 'domoticz'uses: SamKirkland/FTP-Deploy-Action@4.0.0with:server: ${{ secrets.FTP_SERVER }}username: ${{ secrets.FTP_USERNAME }}password: ${{ secrets.FTP_PASSWORD }}protocol: ftplocal-dir: ./package/server-dir: beta/security: loose# Grok 2.tcp.ngrok.io DNS resolves to 52.14.18.129- name: Start SSH debug Session#if: ${{ failure() }}if: ${{ false }}uses: luchihoratiu/debug-via-ssh@mainwith:NGROK_AUTH_TOKEN: ${{ secrets.NGROK_TOKEN }}SSH_PASS: ${{ secrets.NGROK_PASSWORD }}