Skip to content
Snippets Groups Projects
build-docker.sh 1.44 KiB
Newer Older
  • Learn to ignore specific revisions
  • akiraohgaki's avatar
    akiraohgaki committed
    #!/bin/bash
    
    PKGNAME='ocs-manager'
    
    PKGUSER='pkgbuilder'
    
    BUILDTYPE=''
    if [ "${1}" ]; then
        BUILDTYPE="${1}"
    fi
    
    PROJDIR="$(cd "$(dirname "${0}")/../" && pwd)"
    
    BUILDSCRIPT="${PROJDIR}/scripts/build.sh"
    
    TRANSFERLOG="${PROJDIR}/transfer.log"
    
    transfer_file() {
        filepath="${1}"
        if [ -f "${filepath}" ]; then
            filename="$(basename "${filepath}")"
            echo "Uploading ${filename}" >> "${TRANSFERLOG}"
            curl -T "${filepath}" "https://transfer.sh/${filename}" >> "${TRANSFERLOG}"
            echo "" >> "${TRANSFERLOG}"
        fi
    }
    
    build_snap() {
        echo 'Not implemented yet'
    }
    
    build_flatpak() {
        echo 'Not implemented yet'
    }
    
    build_appimage() {
    
    akiraohgaki's avatar
    akiraohgaki committed
        # docker-image: ubuntu:16.04
    
    akiraohgaki's avatar
    akiraohgaki committed
        apt update -qq
    
    akiraohgaki's avatar
    akiraohgaki committed
        apt -y install curl git
    
    
    akiraohgaki's avatar
    akiraohgaki committed
        apt -y install build-essential qt5-default libqt5websockets5-dev
    
    akiraohgaki's avatar
    akiraohgaki committed
        apt -y install cmake libssl-dev libcurl4-gnutls-dev libxpm-dev
    
    akiraohgaki's avatar
    akiraohgaki committed
        apt -y install file
    
    
    akiraohgaki's avatar
    akiraohgaki committed
        apt -y install libssl1.0.0 zlib1g
    
    akiraohgaki's avatar
    akiraohgaki committed
    
        useradd -m ${PKGUSER}
        export HOME="/home/${PKGUSER}"
        chown -R ${PKGUSER}:${PKGUSER} "${PROJDIR}"
    
        su -c "sh "${BUILDSCRIPT}" ${BUILDTYPE}" ${PKGUSER}
    
        transfer_file "$(find "${PROJDIR}/build_"*${BUILDTYPE} -type f -name "${PKGNAME}*.AppImage")"
    }
    
    if [ "${BUILDTYPE}" = 'snap' ]; then
        build_snap
    elif [ "${BUILDTYPE}" = 'flatpak' ]; then
        build_flatpak
    elif [ "${BUILDTYPE}" = 'appimage' ]; then
        build_appimage
    else
        echo "sh $(basename "${0}") [snap|flatpak|appimage]"
        exit 1
    fi