add Launchpad PPA build

Could it be this easy? There's no way it's this easy.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2023-12-03 19:14:54 -08:00
parent 243d6bfd2b
commit 41b5bbb226
4 changed files with 54 additions and 4 deletions

View file

@ -3,7 +3,6 @@ on:
push:
branches:
- master
- github-action-test
pull_request:
branches:
- master

View file

@ -0,0 +1,47 @@
name: Ubuntu Launchpad Build
on:
push:
branches:
- master
- github-action-test
pull_request:
branches:
- master
jobs:
push-to-ppa:
name: Submit build to Ubuntu Launchpad
runs-on: ubuntu-latest
steps:
- name: Check out sources
uses: actions/checkout@v1
- name: Setup build dependencies
run: |
sudo apt-get update
sudo apt-get install -y devscripts dput gpg debhelper qt5-qmake cmake
- name: Setup gpg key token for launchpad
env:
GPG_PRIVATE_KEY: ${{ secrets.PPA_SECRET_KEY }}
run: |
echo "$GPG_PRIVATE_KEY" > ~/.key
gpg --import ~/.key
- name: setup git
run: |
git config --global --add safe.directory /__w/subsurface/subsurface
git config --global --add safe.directory /__w/subsurface/subsurface/libdivecomputer
- name: Checkout googlemaps
run: |
cd ..
git clone https://github.com/subsurface/googlemaps
- name: run the launchpad make-package script
run: |
cd ..
bash -x subsurface/packaging/ubuntu/make-package.sh post

View file

@ -1,13 +1,14 @@
Source: subsurface
Section: utils
Priority: optional
Maintainer: Dirk Hohndel <dirk@hohndel.org>
Maintainer: Subsurface CI Bot <dirk@subsurface-divelog.org>
Build-Depends: asciidoc,
debhelper (>= 9),
libgconf2-dev,
libtool,
libxml2-dev,
libxslt-dev,
libgit2-dev,
libsoup2.4-dev,
pkg-config,
txt2html,

View file

@ -5,7 +5,7 @@
# it is included in our source tar file
#
if [[ $(pwd | grep "subsurface$") || ! -d subsurface || ! -d subsurface/libdivecomputer ]] ; then
if [[ ! -d subsurface || ! -d subsurface/libdivecomputer ]] ; then
echo "Please start this script from the folder ABOVE the subsurface source directory"
exit 1;
fi
@ -27,6 +27,9 @@ VERSION=$(echo $GITVERSION | sed -e 's/-/./')
GITDATE=$(cd subsurface ; git log -1 --format="%at" | xargs -I{} date -d @{} +%Y-%m-%d)
LIBDCREVISION=$(cd subsurface/libdivecomputer ; git rev-parse --verify HEAD)
export DEBSIGN_PROGRAM="gpg --passphrase-file passphrase_file.txt --batch --no-use-agent"
export DEBSIGN_KEYID="F58109E3"
if [[ "$GITVERSION" = "" ]] ; then
SUFFIX=".release"
else
@ -65,7 +68,7 @@ echo "preparing the debian directory"
# this uses my (Dirk's) email address by default... simply set that variable in your
# environment prior to starting the script
test -z $DEBEMAIL && export DEBEMAIL=dirk@hohndel.org
test -z $DEBEMAIL && export DEBEMAIL=dirk@subsurface-divelog.org
# copy over the debian files and allow maintaining a release and daily changelog files
rm -rf debian