2894 Commits

Author SHA1 Message Date
Dan Streetman
87a09640ba ubuntutools/pullpkg.py: convert -v to count, enable package-wide debug for -vv 2019-11-25 10:10:06 -05:00
Dan Streetman
90e8fe81e1 replace ubuntutools.logger with standard python logging 2019-11-25 10:10:06 -05:00
Dan Streetman
c9c7fed1f6 pull-uca-*: search in reverse order of UCA releases, if none specified
if only the version of a UCA package is specified, search each UCA
archive from latest backwards.  This avoids having to specify both
the package version *and* UCA release.
2019-11-25 10:10:06 -05:00
Dan Streetman
7c097b19ba ubuntutools: add --status param to pull-pkg
Allow specifying what package statuses should be searched for.

By default search only for Pending and Published, unless a specific
version number is being searched for.
2019-11-25 10:10:06 -05:00
Dan Streetman
0f61836b10 ubuntutools: update archive/lpapicache to optionally search all series
For PPA and UCA repos, the latest build is not necessarily in the
'development' release; so for those SourcePackage classes, search
all the 'active' series (starting with latest devel) for any
matches to the provided package name.  This allows not having to
specify the series name when looking in PPA/UCA repos for the 'latest'
version of a specific package.
2019-11-25 10:10:06 -05:00
Dan Streetman
b11b83f0e2 pull-pkg: change UCA source pkg class to subclass of PPA source pkg class
The UCA source pkg class was its own specific class, but with the
addition of the generic PPA source pkg class, the UCA class is just
a specific case of PPA.  Changing it to a subclass of the PPA class
simplifies code.
2019-11-25 10:10:06 -05:00
Dan Streetman
7084bfc8bc pull-pkg: add pull-ppa-* functionality
Add functionality, and frontend pull-ppa-* scripts, to be able to pull
from PPA archives.
2019-11-25 10:10:06 -05:00
Dan Streetman
3491b0cff9 pull-pkg: change pullpkg into class PullPkg
instead of pullpkg.py containing a simple method to call, change it
into a normal class PullPkg that callers can create and use.
2019-11-25 10:10:06 -05:00
Dan Streetman
fb750e38bb lpapicache: find binaries from lp
Also update getBinaries() to allow retreival by binary name

This significantly speeds up binary file lookup for non-published
package versions, since we can get the list of binary urls, but
then have to look up the BPPH for each of those urls, which is slow.
If the user only wants a specific binary package and/or arch, this
speeds up getting that, especially for packages with a lot of binary
files (like the kernel).
2019-11-25 10:10:06 -05:00
Dan Streetman
3a413760f3 ubuntutools: add pull-* --no-verify-signature option, don't fail if no pub key
Change dsc verification to fail only if the public key was available, but
signature verification failed.  If no public key is available for the dsc,
print warning only. (LP: #1700846)

Also add pull-* parameter --no-verify-signature to manually prevent failure
when signature verification fails.
2019-11-25 10:10:06 -05:00
Dan Streetman
41a6c47ac2 pull-pkg: update man pages to all point to single pull-pkg.1 man page
remove the pull-lp-source.1 and pull-debian-source.1 man pages,
consolidating them both into a pull-pkg.1 man page.  Also create
symlinks for all associated scripts pointing to pull-pkg.1 man page.
2019-11-25 10:10:06 -05:00
Dan Streetman
e3268a62f4 pull-pkg: create pull-[lp|debian|uca]-* scripts
for backwards compatibility (i.e. to keep pull-lp-source,
pull-debian-source, and pull-uca-source) and for ease of use,
create scripts that default the pull-pkg -p and -D params

re-create pull-pkg script also, to call ubuntutools/pullpkg.py
without any default pull or distro parameters
2019-11-25 10:10:06 -05:00
Dan Streetman
cdaf5d0761 pull-pkg: change pull-pkg script code into modular code 2019-11-25 10:10:06 -05:00
Dan Streetman
79b705d235 pull-pkg: rename pull-pkg to ubuntutools/pullpkg.py module
rename only with no content changes, so next commit shows code
changes converting script pull-pkg to module pullpkg.py

This also changes the file mode from 755 to 644, since we're changing
an executable script into a module.
2019-11-25 10:09:26 -05:00
Dan Streetman
d7bcb012f6 pull-pkg: update to use previous SourcePackage improvements
New pull-pkg allows pulling source, debs, ddebs, or udebs, or just
listing all package files. Also, package lookup by binary name is done
automatically.
2019-11-25 09:57:54 -05:00
Dan Streetman
ec72cf1538 pull-pkg: rename pull-lp-source to pull-pkg
no changes to the file, just a rename, to allow the next commit
to show the changes to the file.
2019-11-25 09:57:54 -05:00
Dan Streetman
3dabf05370 pull-pkg: add debian and ubuntu ddebs mirror urls 2019-11-25 09:57:54 -05:00
Dan Streetman
f4f16f95f7 pull-uca: update UbuntuCloudArchiveSourcePackage
look in its PPA for its SPPHs
look up the development (latest) UCA release if not specified
use the 'series' param as the UCA release, instead of 'uca_release' param
2019-11-25 09:57:54 -05:00
Dan Streetman
b96885f05e ubuntutools/archive: convert external rmadison call to native implementation
instead of a function that calls the system program rmadison, use
a fully-functional class to interface with the madison api, as well
as the debian snapshot api
2019-11-25 09:57:54 -05:00
Dan Streetman
f944d3146a pull-pkg: find src pkg name from binary pkg name 2019-11-25 09:57:54 -05:00
Dan Streetman
9f58f5cb80 pull-pkg: find latest pkg in series in SourcePackage
Allow specifying series instead of version, to find the latest
version in that series; or only specify package name, to get the
latest version in the devel series
2019-11-25 09:57:54 -05:00
Dan Streetman
b0c22e1d57 pull-pkg: update archive.py SourcePackage
verify it can parse/load DSC when created
throw PackageNotFoundException from lp_spph if can't find package
update test case expected order of url processing
2019-11-25 09:57:54 -05:00
Dan Streetman
506e3db601 pull-pkg: add SourcePackage.pull_binaries() function 2019-11-25 09:57:54 -05:00
Dan Streetman
d3b8d7a1b7 ubuntutools/lp/lpapicache: expand coverage for LP api 2019-11-25 09:57:54 -05:00
Dan Streetman
51231f116c debian/control: add python3-lazr.restfulclient dep to python3-ubuntutools 2019-11-25 09:57:54 -05:00
Dan Streetman
d0aa64a51b ubuntutools/misc: define POCKETS and DEFAULT_POCKETS
POCKETS is all valid pockets (capitalized), DEFAULT_POCKETS is all in
POCKETS except 'Backports'.
2019-11-25 09:57:54 -05:00
Dan Streetman
b5ae0bdca3 simplify subprocess usage 2019-11-25 09:57:54 -05:00
Mattia Rizzolo
463d1f63a8
requestbackport: Error out nicely when a tracking project doens't exist.
LP: #1852901
Signed-off-by: Mattia Rizzolo <mattia@debian.org>
2019-11-21 16:20:02 +01:00
Mattia Rizzolo
c7b2149e1a
Merge branch 'py3debian-changelog' of git+ssh://git.launchpad.net/ubuntu-dev-tools
MR: https://code.launchpad.net/~ubuntu-dev/ubuntu-dev-tools/+git/ubuntu-dev-tools/+merge/372620
Signed-off-by: Mattia Rizzolo <mattia@debian.org>
2019-11-11 14:44:04 +01:00
Mattia Rizzolo
8220accbe8
Merge branch 'submittodebian_context_mgr' of git+ssh://git.launchpad.net/~ddstreet/ubuntu-dev-tools/+git/ubuntu-dev-tools
MR: https://code.launchpad.net/~ddstreet/ubuntu-dev-tools/+git/ubuntu-dev-tools/+merge/375291
Signed-off-by: Mattia Rizzolo <mattia@debian.org>
2019-11-11 14:27:20 +01:00
Mattia Rizzolo
d3d63d6a59
Merge branch 'pylint_jobs' of git+ssh://git.launchpad.net/~ddstreet/ubuntu-dev-tools/+git/ubuntu-dev-tools
MR: https://code.launchpad.net/~ddstreet/ubuntu-dev-tools/+git/ubuntu-dev-tools/+merge/375289
Signed-off-by: Mattia Rizzolo <mattia@debian.org>
2019-11-11 14:25:46 +01:00
Dan Streetman
17cce2602c submittodebian: use file context manager 2019-11-07 15:10:16 -05:00
Dan Streetman
0931098a2c tests/pylint.conf: use jobs=0 to speed up tests 2019-11-07 15:03:29 -05:00
Mattia Rizzolo
982ebe6a46
Trust the installed debian-keyring when checking validity of dsc signatures. 2019-10-28 14:35:01 +01:00
Mattia Rizzolo
ba2afc6429
Release 0.174
Signed-off-by: Mattia Rizzolo <mattia@debian.org>
0.174
2019-09-26 11:07:46 +02:00
Mattia Rizzolo
21adb8f61f
fix flake8 warning
Signed-off-by: Mattia Rizzolo <mattia@debian.org>
2019-09-26 11:05:48 +02:00
Mattia Rizzolo
e083529784
import-bug-from-debian: revert a change from the last merge: keep debianbts an optional dependency
Signed-off-by: Mattia Rizzolo <mattia@debian.org>
2019-09-26 10:56:48 +02:00
Mattia Rizzolo
9cd3479218
Merge branch 'import-bug-from-debian' of git+ssh://git.launchpad.net/~ddstreet/ubuntu-dev-tools/+git/ubuntu-dev-tools
MR: https://code.launchpad.net/~ddstreet/ubuntu-dev-tools/+git/ubuntu-dev-tools/+merge/372643
Signed-off-by: Mattia Rizzolo <mattia@debian.org>
2019-09-26 10:53:54 +02:00
Mattia Rizzolo
b76201967a
Merge branch 'reverse-depends-fixes' of git+ssh://git.launchpad.net/~ddstreet/ubuntu-dev-tools/+git/ubuntu-dev-tools
MR: https://code.launchpad.net/~ddstreet/ubuntu-dev-tools/+git/ubuntu-dev-tools/+merge/372653
Signed-off-by: Mattia Rizzolo <mattia@debian.org>
2019-09-12 14:40:40 +02:00
Mattia Rizzolo
dc6e03d38c
Merge branch 'python3_missed_one' of git+ssh://git.launchpad.net/~ddstreet/ubuntu-dev-tools/+git/ubuntu-dev-tools
MR: https://code.launchpad.net/~ddstreet/ubuntu-dev-tools/+git/ubuntu-dev-tools/+merge/372644
Signed-off-by: Mattia Rizzolo <mattia@debian.org>
2019-09-12 14:37:26 +02:00
Mattia Rizzolo
c8602ba8a2
Merge branch 'ubuntutools-misc' of git+ssh://git.launchpad.net/ubuntu-dev-tools
MR: https://code.launchpad.net/~ubuntu-dev/ubuntu-dev-tools/+git/ubuntu-dev-tools/+merge/372627
Signed-off-by: Mattia Rizzolo <mattia@debian.org>
2019-09-12 14:34:30 +02:00
Dan Streetman
ec14165262 reverse-depends fixes
move from optparse to argparse

fix typo in --recursive-deph param

use list comprehensions to fix/simplify del-during-iteration functions
2019-09-11 18:11:20 -04:00
Dan Streetman
2c998a6fd2 setup.py: convert to py3 2019-09-11 17:18:51 -04:00
Dan Streetman
0d9d78a721 import-bug-from-debian fixes
change PEP263 coding value from invalid UTF-8 to valid utf-8

don't try to import debianbts, just import debianbts

migrate to argparge

add --verbose option

actually make --dry-run do a dry run

handle multiple cmdline bug numbers

correctly get the bug summary
2019-09-11 17:02:14 -04:00
Stefano Rivera
e5c90b986c reverse-depends: Support Reverse-Testsuite-Triggers and Reverse-Build-Depends-Arch (LP: #1843614) 2019-09-11 16:03:13 -03:00
Stefano Rivera
317b68bc08 Use a context manager for opening files 2019-09-11 13:38:42 -03:00
Stefano Rivera
7a6b779e77 ubuntutools.misc: Replace Popen() calls with check_output() 2019-09-11 13:38:42 -03:00
Stefano Rivera
454737b5bf Rewrite merge-changelog using python3-debian 2019-09-11 12:14:08 -03:00
Mattia Rizzolo
4438c23a72
Changelog for 0.173
Signed-off-by: Mattia Rizzolo <mattia@debian.org>
0.173
2019-09-10 15:35:19 +02:00
Mattia Rizzolo
228c5710e7
Explicitly require Python3 >= 3.6.
Signed-off-by: Mattia Rizzolo <mattia@debian.org>
2019-09-10 14:27:42 +02:00