#!/bin/bash # -*- Mode:Shell; indent-tabs-mode:nil; tab-width -*- # # Copyright 2022 Kenneth Loafman # # This file is part of duplicity. # # Duplicity is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by the # Free Software Foundation; either version 2 of the License, or (at your # option) any later version. # # Duplicity is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with duplicity; if not, write to the Free Software Foundation, # Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA set -e if [ "`uname`" != "Linux" ]; then echo "$0 does not run on `uname`" exit 2 fi if [ "$#" -gt 1 ]; then echo "usage: $0 " echo " - default is amd64 only" echo " - working arch: arm64,amd64,armhf,ppc64el" exit 2 elif [ "$#" -eq 1 ]; then BUILD="$1" else BUILD="amd64" fi VERSION=`./setup.py --version` echo "$0 of ${VERSION} on ${BUILD}" # make distribution ./setup.py sdist --dist-dir=. # make clean source dir rm -rf build mkdir -p build tar xf duplicity-"${VERSION}".tar.gz -C build rm -f duplicity-"${VERSION}".tar.gz cd build/duplicity-"${VERSION}" # print version in build copy of snapcraft.yaml head -2 snap/snapcraft.yaml | tail -1 if [ ${BUILD} == "amd64" ]; then # build snap locally w/o multipass snapcraft snap --destructive-mode else # build snap via remote build on LP snapcraft remote-build --build-on=${BUILD} --launchpad-accept-public-upload fi