gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-exchange] branch master updated (7a2deeea -> 9c3eac36)


From: gnunet
Subject: [taler-exchange] branch master updated (7a2deeea -> 9c3eac36)
Date: Mon, 04 Sep 2023 20:50:43 +0200

This is an automated email from the git hooks/post-receive script.

devan-carpenter pushed a change to branch master
in repository exchange.

    from 7a2deeea -fix minor dpkg build issues
     new 00c96138 debian: install correct filename of script
     new d705ee26 ci: add pipeline with build and package jobs
     new 2c3a2636 ci: add test job
     new 11ae7c42 ci: print test logs upon failure
     new 9c3eac36 ci: add jq utility to container

The 5 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 ci/Containerfile                        | 60 +++++++++++++++++++++++++++++++++
 ci/jobs/0-build/build.sh                |  9 +++++
 ci/jobs/0-build/job.sh                  |  6 ++++
 ci/jobs/1-test/job.sh                   |  6 ++++
 ci/jobs/1-test/test.sh                  | 28 +++++++++++++++
 ci/jobs/2-docs/docs.sh                  | 11 ++++++
 ci/jobs/2-docs/job.sh                   |  6 ++++
 ci/jobs/3-deb-package/install-fix.patch | 13 +++++++
 ci/jobs/3-deb-package/job.sh            | 24 +++++++++++++
 debian/libtalerexchange.install         |  2 +-
 10 files changed, 164 insertions(+), 1 deletion(-)
 create mode 100644 ci/Containerfile
 create mode 100755 ci/jobs/0-build/build.sh
 create mode 100755 ci/jobs/0-build/job.sh
 create mode 100755 ci/jobs/1-test/job.sh
 create mode 100755 ci/jobs/1-test/test.sh
 create mode 100755 ci/jobs/2-docs/docs.sh
 create mode 100755 ci/jobs/2-docs/job.sh
 create mode 100644 ci/jobs/3-deb-package/install-fix.patch
 create mode 100755 ci/jobs/3-deb-package/job.sh

diff --git a/ci/Containerfile b/ci/Containerfile
new file mode 100644
index 00000000..3cc99cb7
--- /dev/null
+++ b/ci/Containerfile
@@ -0,0 +1,60 @@
+FROM docker.io/library/debian:bookworm
+
+ENV DEBIAN_FRONTEND=noninteractive
+
+RUN apt-get update -yqq && \
+    apt-get install -yqq \
+                  autoconf \
+                  autopoint \
+                  curl \
+                  doxygen \
+                   git \
+                  jq \
+                  libcurl4-gnutls-dev \
+                  libgcrypt-dev \
+                  libidn11-dev \
+                  libjansson-dev \
+                   libmicrohttpd-dev \
+                  libpq-dev \
+                  libqrencode-dev \
+                   libsodium-dev \
+                   libtool \
+                  libunistring-dev \
+                  make \
+                  pkg-config \
+                  python3-pip \
+                  python3-sphinx \
+                  python3-sphinx-rtd-theme \
+                   recutils \
+                   texinfo \
+                  zlib1g-dev
+
+# Debian packaging tools
+RUN apt-get install -yqq \
+                   po-debconf \
+                   build-essential \
+                   debhelper-compat \
+                   devscripts
+
+# Install Taler (and friends) packages
+RUN curl -sS https://deb.taler.net/apt-nightly/taler-bookworm-ci.sources \
+    | tee /etc/apt/sources.list.d/taler-bookworm-ci.sources
+
+RUN echo '\
+Package: * \n\
+Pin: origin "deb.taler.net" \n\
+Pin-Priority: 999' > /etc/apt/preferences.d/taler
+
+RUN cat /etc/apt/preferences.d/taler && \
+    apt-get update -y && \
+    apt-get install -y \
+                   libgnunet-dev \
+                   libgnunet \
+&& rm -rf /var/lib/apt/lists/*
+
+
+RUN pip3 install --break-system-packages htmlark
+
+WORKDIR /workdir
+
+CMD ["bash", "/workdir/ci/ci.sh"]
diff --git a/ci/jobs/0-build/build.sh b/ci/jobs/0-build/build.sh
new file mode 100755
index 00000000..b1137429
--- /dev/null
+++ b/ci/jobs/0-build/build.sh
@@ -0,0 +1,9 @@
+#!/bin/bash
+set -exuo pipefail
+
+./bootstrap
+./configure CFLAGS="-ggdb -O0" \
+           --enable-logging=verbose \
+           --disable-doc
+
+make
diff --git a/ci/jobs/0-build/job.sh b/ci/jobs/0-build/job.sh
new file mode 100755
index 00000000..8d79902c
--- /dev/null
+++ b/ci/jobs/0-build/job.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+set -exuo pipefail
+
+job_dir=$(dirname "${BASH_SOURCE[0]}")
+
+"${job_dir}"/build.sh
diff --git a/ci/jobs/1-test/job.sh b/ci/jobs/1-test/job.sh
new file mode 100755
index 00000000..bfb24e33
--- /dev/null
+++ b/ci/jobs/1-test/job.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+set -exuo pipefail
+
+job_dir=$(dirname "${BASH_SOURCE[0]}")
+
+"${job_dir}"/test.sh
diff --git a/ci/jobs/1-test/test.sh b/ci/jobs/1-test/test.sh
new file mode 100755
index 00000000..64be6325
--- /dev/null
+++ b/ci/jobs/1-test/test.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+set -exuo pipefail
+
+./bootstrap
+./configure CFLAGS="-ggdb -O0" \
+           --enable-logging=verbose \
+           --disable-doc
+make
+make install
+
+check_command()
+{
+       make check
+}
+
+print_logs()
+{
+       for i in $(cat src/util/test-suite.log  | grep '^FAIL:' | cut -d' ' -f 
2)
+       do
+               echo Printing $i.log:
+               tail src/util/$i.log
+       done
+}
+
+if ! check_command ; then
+       print_logs
+       exit 1
+fi
diff --git a/ci/jobs/2-docs/docs.sh b/ci/jobs/2-docs/docs.sh
new file mode 100755
index 00000000..fe2b9687
--- /dev/null
+++ b/ci/jobs/2-docs/docs.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+set -exuo pipefail
+
+./bootstrap
+./configure --enable-only-doc
+
+pushd ./doc/doxygen/
+
+make full
+
+popd
diff --git a/ci/jobs/2-docs/job.sh b/ci/jobs/2-docs/job.sh
new file mode 100755
index 00000000..a72bca4b
--- /dev/null
+++ b/ci/jobs/2-docs/job.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+set -exuo pipefail
+
+job_dir=$(dirname "${BASH_SOURCE[0]}")
+
+"${job_dir}"/docs.sh
diff --git a/ci/jobs/3-deb-package/install-fix.patch 
b/ci/jobs/3-deb-package/install-fix.patch
new file mode 100644
index 00000000..8334c5a7
--- /dev/null
+++ b/ci/jobs/3-deb-package/install-fix.patch
@@ -0,0 +1,13 @@
+diff --git a/debian/taler-exchange.install b/debian/taler-exchange.install
+index 631c270b..072c6231 100644
+--- a/debian/taler-exchange.install
++++ b/debian/taler-exchange.install
+@@ -36,6 +36,6 @@ usr/share/taler/exchange/templates/*.must
+ debian/etc-taler-exchange/* etc/
+ 
+ # Terms of service / privacy policy templates
+-usr/share/taler/exchange/*.rst
++#usr/share/taler/exchange/terms/*.rst
+ # Translations of ToS/PP
+-usr/share/taler/exchange/locale/*/LC_MESSAGES/*.po
++#usr/share/taler/exchange/terms/locale/*/LC_MESSAGES/*.po
diff --git a/ci/jobs/3-deb-package/job.sh b/ci/jobs/3-deb-package/job.sh
new file mode 100755
index 00000000..dc78cdf2
--- /dev/null
+++ b/ci/jobs/3-deb-package/job.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+set -exuo pipefail
+# This file is in the public domain.
+# Helper script to build the latest DEB packages in the container.
+
+unset LD_LIBRARY_PATH
+
+
+git apply ./ci/jobs/2-deb-package/install-fix.patch
+
+# Get current version from debian/control file.
+DEB_VERSION=$(dpkg-parsechangelog -S Version)
+
+# Install build-time dependencies.
+mk-build-deps --install --tool='apt-get -o Debug::pkgProblemResolver=yes 
--no-install-recommends --yes' debian/control
+
+# We do a sparse checkout, so we need to hint
+# the version to the build system.
+echo $DEB_VERSION > .version
+./bootstrap
+dpkg-buildpackage -rfakeroot -b -uc -us
+
+ls ../*.deb
+mv ../*.deb /artifacts/
diff --git a/debian/libtalerexchange.install b/debian/libtalerexchange.install
index fb1e3a71..56b69e6d 100644
--- a/debian/libtalerexchange.install
+++ b/debian/libtalerexchange.install
@@ -5,6 +5,6 @@ usr/share/taler/config.d/paths.conf
 usr/share/taler/config.d/taler.conf
 debian/etc-libtalerexchange/* etc/
 usr/bin/taler-config
-usr/bin/taler-terms-generator.sh
+usr/bin/taler-terms-generator
 usr/share/man/man5/taler.conf.5
 usr/share/man/man1/taler-config*

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]