Package Details: borgmatic 1.3.13-1

Git Clone URL: https://aur.archlinux.org/borgmatic.git (read-only)
Package Base: borgmatic
Description: Simple, configuration-driven backup software for servers and workstations
Upstream URL: https://torsion.org/borgmatic/
Licenses: GPL3
Submitter: nylocx
Maintainer: devopsdeluxe (witten, nicoulaj)
Last Packager: nicoulaj
Votes: 25
Popularity: 0.430341
First Submitted: 2016-02-18 13:48
Last Updated: 2019-07-29 15:43

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 Next › Last »

devopsdeluxe commented on 2018-12-26 20:52

Here's what we should do until I can pick the brains of those in #archlinux-aur:

pytest --ignore=tests/end-to-end

Which seem to only fail due to borgmatic* files not existing in $PATH while tests are being run.

EDIT: After installing 1.2.11 onto my system and re-enabling the end-to-end tests, all tests pass. We're safe to bump the $pkgver and ignore the e2e tests for the time being.

devopsdeluxe commented on 2018-12-26 20:14

the problem is that the way the tests are built they expect to find the borgmatic executable in the current path.

Welp, I don't know how I missed that bit...

The solution is to manually add the borgmatic executable to $PATH during the check() stage.

It'll look something like:

PATH="${PATH}:/path/to/borgmatic"

Which appends the location of the borgmatic executable to $PATH.

I'm going to tinker with something locally real quick now that I know that borgmatic needs to be in our path during the testing phase. Give me ~15 minutes or so.

nicoulaj commented on 2018-12-26 19:13

Thanks.

@devopsdeluxe good point, the problem is that the way the tests are built they expect to find the borgmatic executable in the current path. So there is a chicken and egg issue, we can't really run the tests using the system libraries without installing the package first... Actually I am not sure if the check() step is really supposed to "test the package on current system" vs just "run the project unit tests" ? Not sure what to do then, IMHO running tests with tox is the least worse we can do ?

devopsdeluxe commented on 2018-12-26 19:01

@witten, @nicoulaj

I've added you both as co-maintainers to this package.

devopsdeluxe commented on 2018-12-26 18:51

@nicoulaj

Testing with tox will test in a virtualenv rather than with the system's dependencies. This can lead to the program failing to work after installation even though the tests "pass" during the check() stage.

witten commented on 2018-12-26 05:36

"i looked at the CI of borgmatic and found out the maintainer is not testing end-to-end."

End-to-end tests are running in CI. They weren't originally because they were Docker-based and thus a pain to run in a Docker-based CI, but now they're just tox-based and run fine in CI.

Please let me know if I can help with any of the packaging here.

nylocx commented on 2018-12-23 06:48

Hi nicoulaj, I disowned the package now you just have to convince the co-maintainer.

Thanks for your interest in the package.

nicoulaj commented on 2018-12-22 15:16

Can you please update or disown the package ? See my previous comment.

nicoulaj commented on 2018-12-08 16:46

@devopsdeluxe you need to run via tox, otherwise it won't work.

Here is a patch for 1.2.11:

diff --git a/.SRCINFO b/.SRCINFO
index [`5a3ba99`](https://aur.archlinux.org/cgit/aur.git/commit/?h=borgmatic&id=5a3ba99)..e310226 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,20 +1,19 @@
 pkgbase = borgmatic
        pkgdesc = A wrapper script for Borg backup software that creates and prunes backups
-       pkgver = 1.2.4
+       pkgver = 1.2.11
        pkgrel = 1
        url = <https://torsion.org/borgmatic/>
        install = borgmatic.install
        arch = any
        license = GPL3
-       checkdepends = python-flexmock
-       checkdepends = python-pytest
+       checkdepends = python-tox
        makedepends = python-setuptools
        depends = borg
        depends = python-pykwalify
        depends = python-ruamel-yaml
-       source = borgmatic-1.2.4.tar.gz::<https://projects.torsion.org/witten/borgmatic/archive/1.2.4.tar.gz>
+       source = borgmatic-1.2.11.tar.gz::<https://projects.torsion.org/witten/borgmatic/archive/1.2.11.tar.gz>
        source = borgmatic.install
-       sha256sums = 139653a014e39b749234908153ed81a712753e92bd3419ec2f38f7898b452ab3
+       sha256sums = db73f8754c7f3aa929a6051776a2d731543b702ab3963f74603a50f52b07c277
        sha256sums = 2862763feea83e3ee0fb65c9f3fec648312486cd8ab48cd7cac70a7bb742b55b

 pkgname = borgmatic
diff --git a/PKGBUILD b/PKGBUILD
index [`764ad65`](https://aur.archlinux.org/cgit/aur.git/commit/?h=borgmatic&id=764ad65)..be7740d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,9 +1,10 @@
 # Maintainer: Alexander Görtz <aur@nyloc.de>
 # Co-maintainer: Dan Beste <dan.ray.beste@gmail.com>
 # Contributor: stef204 <<https://aur.archlinux.org/account/stef204>>
+# Contributor: Julien Nicoulaud <julien dot nicoulaud at gmail dot com>

 pkgname='borgmatic'
-pkgver=1.2.4
+pkgver=1.2.11
 pkgrel=1
 pkgdesc='A wrapper script for Borg backup software that creates and prunes backups'
 arch=('any')
@@ -11,16 +12,14 @@ url='<https://torsion.org/borgmatic/>'
 license=('GPL3')
 depends=('borg' 'python-pykwalify' 'python-ruamel-yaml')
 makedepends=('python-setuptools')
-checkdepends=('python-flexmock' 'python-pytest')
+checkdepends=('python-tox')
 install="${pkgname}.install"
 source=(
   "${pkgname}-${pkgver}.tar.gz::<https://projects.torsion.org/witten/borgmatic/archive/>${pkgver}.tar.gz"
   "${pkgname}.install"
 )
-sha256sums=(
-  '139653a014e39b749234908153ed81a712753e92bd3419ec2f38f7898b452ab3'
-  '2862763feea83e3ee0fb65c9f3fec648312486cd8ab48cd7cac70a7bb742b55b'
-)
+sha256sums=('db73f8754c7f3aa929a6051776a2d731543b702ab3963f74603a50f52b07c277'
+            '2862763feea83e3ee0fb65c9f3fec648312486cd8ab48cd7cac70a7bb742b55b')

 prepare() {
   cd "${pkgname}"
@@ -31,7 +30,7 @@ prepare() {
 check() {
   cd "${pkgname}"

-  pytest
+  tox
 }

 package() {

Can you please apply it or add me to comaintainers ?

devopsdeluxe commented on 2018-12-02 21:58

There's some severe breakage with the system tests...

I'll post the logs shortly! I'm probably just missing a testing dependency...