Commit Graph

503 Commits (07cc085a771c40416c425c7d58d4838cf96c7b52)

Author SHA1 Message Date
Niels Thykier 59633a92b5
Clone all_buildarchs before mutating it
6 years ago
Niels Thykier 2c9e0b9b97
do_all: Prune cruft after non-recursive hints (e.g. "easy")
6 years ago
Niels Thykier c30ecbb7e8
Skip cruft on source migration / removal items
6 years ago
Niels Thykier 73791e48d0
Rename migrate_item{,s}_to_target_suite
6 years ago
Niels Thykier 5d408fa800
Remove new cruft items in iter_packages
6 years ago
Niels Thykier 32ebe9d4e0
Ensure get_auto_hinter_hints does not choke on cruft items
6 years ago
Paul Gevers 16f823dd91 autopkgtest: in Debian we want linux to be treated as any other
6 years ago
Paul Gevers 1ca76486b5
Replace libreoffice with doxygen as the libgcc smoke test for gcc.
6 years ago
Niels Thykier 69d42ffb36
solver: improve apply_order to simplify more code
6 years ago
Niels Thykier b306700376
solver: Extract a function from _comute_group_order_adds
6 years ago
Niels Thykier 259fecf6cf
solver: Rename a variable to avoid confusion
6 years ago
Niels Thykier cdcfe85bfa
solver: Replace dict with a proper object
6 years ago
Niels Thykier 93f101bee2
solver: Extract some common code into a function
6 years ago
Niels Thykier 2ed6161b49
solver: Refactor out a function to avoid duplicated code
6 years ago
Niels Thykier af20634b12
solver: Merge some loops to reduce nesting level
6 years ago
Niels Thykier b61e1086bd
solver: Invert an if-statement to reduce max indentation level
6 years ago
Niels Thykier 68407c53c0
Remove an unnecessary if-statement
6 years ago
Niels Thykier 9971714e27
solver: Merge two loops by using chain
6 years ago
Niels Thykier 16dc303190
solver: Reduce two small loops into a comprehension
6 years ago
Niels Thykier d3e06fc45f
solver: Split _compute_group_order into three methods
6 years ago
Niels Thykier c65b377c5d
solver: Split solve_groups into 3 smaller methods
6 years ago
Niels Thykier 4eb038ab6d
autopkgtest: Move field creation into __init__
6 years ago
Paul Gevers 1ecb07ac2d
autopkgtest: bug fix in baseline cache
6 years ago
Paul Gevers 075d4d823b
autopkgtest: fix copy() in save_state
6 years ago
Paul Gevers c6c5c45287
autopkgtest: tiny change for easier understanding
6 years ago
Paul Gevers d038e7bbe6
autopkgtest: simplify bin_triggers logic/naming
6 years ago
Niels Thykier caf83b9357
Fix the remaining two style issues in britney2/__init__.py
6 years ago
Niels Thykier e0b46e5196
Make the source pkg consistency checks a TargetSuite method
6 years ago
Niels Thykier b200c15062
Add a missing "no cover"
6 years ago
Niels Thykier 427328821e
Remove redundant variables
6 years ago
Niels Thykier b0835fa4a1
Fix pycodestyle warnings
6 years ago
Ivo De Decker 66648c1a03
Add BuiltUsingPolicy
6 years ago
Ivo De Decker 4fcb90b775
Read Built-Using info for binary packages
6 years ago
Ivo De Decker 35ae8848b4
Fix apply_src_policies when policy is applied on multiple archs
6 years ago
Niels Thykier bb699f7416
Make britney2/utils.py PEP-8 clean
6 years ago
Niels Thykier 5a38e00996
Fix pep8 issues in check_target_suite_source_pkg_consistency
6 years ago
Niels Thykier c9d523da93
Remove trailing whitespace
6 years ago
Ivo De Decker cd08deb943 Fix build-dep check for source with only arch: all binaries
6 years ago
Ivo De Decker 15e5228669 Add src_policy option to policies.
6 years ago
Niels Thykier 82fa58df20 Extract a compute_item_name method
6 years ago
Ivo De Decker 97ed917db4 Sort some data for deterministic output in excuses
6 years ago
Niels Thykier f928c7ed3d Make SourcePackage.binaries a set
6 years ago
Ivo De Decker 37a173af67 Always create a new SourcePackage
6 years ago
Ivo De Decker 7bba77726b Always define source_t in apply_item_to_target_suite
6 years ago
Ivo De Decker 69c94caa01 Add source_name return value to compute_groups
6 years ago
Ivo De Decker 046bdc60c6 Add consistency checks for target suite.
6 years ago
Niels Thykier 6c3f8354e5
BlockPolicy: Compile regex once rather than once per migration item
6 years ago
Niels Thykier c4371b9f58
BlockPolicy: Replace print with logger.info
6 years ago
Niels Thykier 2fea931da3
Remove --control-files; It is not used any where
6 years ago
Niels Thykier 603aa9fdca
Drop unused local variables
6 years ago
Ivo De Decker f1cd87dc9c Check build-depends-indep
6 years ago
Ivo De Decker 1c115eee11 For build-depends-indep, only add best result
6 years ago
Ivo De Decker 3f575a1cd0 For b-d-indep track best result and archs per result
6 years ago
Ivo De Decker fa44a3f968 Implement get_check_archs for build-depends-indep
6 years ago
Ivo De Decker 65128a13b7 Read all_buildarch config option
6 years ago
Ivo De Decker a28a7665f3 Split off adding build-dep info into separate function
6 years ago
Ivo De Decker 07643f4c30 Define BuildDepResult object (based on IntEnum)
6 years ago
Ivo De Decker c9148d475a Get dependency type from variable
6 years ago
Ivo De Decker ccbaedab1d Split of _get_check_archs into separate function
6 years ago
Ivo De Decker a073e35940 BuildDependsPolicy: split off checking in separate function
6 years ago
Ivo De Decker 0709f8d96c Move block handling to BlockPolicy
6 years ago
Ivo De Decker 49d9a38d25 Skip unimplemented policies in excuses
6 years ago
Ivo De Decker 7090c23efc Expose architecture and suite property for hints
6 years ago
Ivo De Decker 7e05c0e5ac Apply policy to srcarch excuses
6 years ago
Ivo De Decker d0b5cc2ce1 Rename apply_policy to apply_src_policy
6 years ago
Ivo De Decker 0d80bad65c Move handling of policies to PolicyEngine
6 years ago
Niels Thykier b16ae8046a
Add some '# pragma: no cover' for error cases, abstract methods, etc.
6 years ago
Niels Thykier 5bcbed499e
Fix the doc string for compile_nuninst
6 years ago
Niels Thykier 04318473f6
Simplify MigrationItem.parse_item by extracting a method
6 years ago
Niels Thykier 542f030a96
Remove now obsolete code from MigrationItem
6 years ago
Niels Thykier 61d3068de6
Move suite name auto-correction to MigrationItemFactory
6 years ago
Niels Thykier eec7b9b7ef
MigrationItem: Remove setter for "name"
6 years ago
Niels Thykier 6174d2c3f9
Create a MigrationItemFactory and migrate most code to use it
6 years ago
Ivo De Decker 18d951be25 Handle dependencies between excuses in a generic way
6 years ago
Ivo De Decker 847e6e41e1 Add invalidated-by-other-package field in excuses.yaml
6 years ago
Niels Thykier dd3dcf818f
Mark a regex pattern as a raw string
6 years ago
Raphaël Hertzog 6c1cf01898 Do not ensure consistency of "Section" field across unstable and testing
6 years ago
Ivo De Decker 348274947e Add option fake_runtime to override runtime in britney.conf
6 years ago
Niels Thykier 179faeb23b
Update some comments to match a renamed method
6 years ago
Niels Thykier 8cefd1a546
Have transactions verify/assert safe usage
6 years ago
Niels Thykier 7d758760d1
MigrationManager: _transaction is a stack; not a queue
6 years ago
Niels Thykier a5352d353b
Simplify undo code handling sources
6 years ago
Niels Thykier 59ae7e3d68
Optimize out "nvirtual" member of undo items
6 years ago
Niels Thykier 5642a90449
Rename _compute_groups to compute_groups
6 years ago
Niels Thykier 33ba41c76e
Split out a _compute_removals from _compute_groups
6 years ago
Niels Thykier d3b391aed1
MigrationManager: Precompute a set of all architectures
6 years ago
Niels Thykier 89fcccba13
MigrationManager: Create a is_nuninst_worse
6 years ago
Niels Thykier aa6dd4a0f3
Extract a compute eqv_set function
6 years ago
Niels Thykier a95565c0e8
Split migrate_item_to_target_suite into two
6 years ago
Niels Thykier 57ded55674
Remove dead assignment
6 years ago
Niels Thykier c7dbd95c0b
Have MigrationManager keep track of active transaction
6 years ago
Niels Thykier 4803065e1a
Move (and rename) try_migration to the MigrationManager
6 years ago
Niels Thykier 28c7a052fa
Move to MM and rename doop_source to apply_item_to_target_suite
6 years ago
Niels Thykier 4ae6a34a27
Move _compute_groups to a new MigrationManager class
6 years ago
Ivo De Decker 12debfc7c8 Check that version increases when adding packages to testing
6 years ago
Niels Thykier a05a249e04
Record exactly which binaries are updated in the transaction
6 years ago
Niels Thykier 5d49a41204
Introduce a "Transaction" for changes to testing
6 years ago
Niels Thykier 68fd0ba4b2
Remove --components/COMPONENTS as it is auto-detected
6 years ago
Niels Thykier 7124313aa6
Make InstallabilityTester suite agnostic
6 years ago
Niels Thykier ced7b7b413
Refactor britney.py to use InstallabilityTester less
6 years ago
Niels Thykier 0099c34d93
Refactor _read_binaries to reduce its complexity a bit
6 years ago
Niels Thykier f547fb20b1
suiteloader: Create a _setup_architecture method
6 years ago
Niels Thykier 7efa865a04
Move Suite/Package loading into a separate class/module
6 years ago
Niels Thykier deb9482a2f
Move parse_provides to britney2.utils
6 years ago
Ivo De Decker 3828a76053 Filter out cruft in find_smooth_updateable_binaries
6 years ago
Ivo De Decker f0ddfc253f Fix parsing of migration item name for binNMU in tpu
6 years ago
Niels Thykier 65b67e763c
Replace the use of inst_tester with new suite functionality
6 years ago
Niels Thykier 03df891b7e
Expand the Suite interface and create a TargetSuite sub-class
6 years ago
Niels Thykier 0b4f58315f
Rename a method and reduce a table to a set
6 years ago
Niels Thykier 0eb8b5a201
BinaryPackageUniverse: Provde equivalent_packages
6 years ago
Niels Thykier ef813bf0d8
Let the BinaryPackageUnvierse track broken packages
6 years ago
Niels Thykier 8867ef0cf9
Let the BinaryPackageUniverse track essential packages
6 years ago
Niels Thykier 07a407e810
Partly separate the solver from the inst_tester
6 years ago
Niels Thykier c0ecdd82fb
Remove now redundant APIs from the InstallabilityTester
6 years ago
Niels Thykier 0a669461ca
Separate inst_tester from universe
6 years ago
Niels Thykier 35b06ee007
tests: Separate inst_tester from universe
6 years ago
Niels Thykier d557610c6f
BinaryPackageUniverse: Implement packages_equivalent_to()
6 years ago
Niels Thykier 530db5d3f7
Extract a BinaryPackageUniverse from the InstallabilityTester
6 years ago
Niels Thykier 32def47991
Fix typo in doc string
6 years ago
Niels Thykier b37575f000
Stop creating some throw-away data-structures for a method call
6 years ago
Niels Thykier f86cda97da
inst_tester: Improve doc string/argument name
6 years ago
Niels Thykier 7bcbcb6282
Make clone_nuninst able to fully deep clone nuninst
6 years ago
Niels Thykier 6c5300d873
Unfold the suite.binaries tuple into two members
6 years ago
Ivo De Decker 9c606ef533 Don't add smooth-updatable cruft to migration items
6 years ago
Niels Thykier 99a35a2986
autopkgtest.py: Update previous commit to match recent changes
6 years ago
Iain Lane c09a229dc9
autopkgtest: Run gcc-n's testuite, if it has one
6 years ago
Niels Thykier 880a614b2b
britney: Extract a find_smooth_updateable_binaries function
6 years ago
Niels Thykier c4931fb1b2
solver: Move a common variable out of an if
6 years ago
Niels Thykier 1e46965924
inst/builder.py: Split function in three to reduce indentation levels
6 years ago
Niels Thykier dd5211d55a
inst-tester: Add missing element to a set
6 years ago
Niels Thykier 55dd190fa6
inst-tester: Make "check" a list
6 years ago
Niels Thykier cd1f384012
inst-tester: Remove obsolete "safe-set" optimization
6 years ago
Niels Thykier 95b945d2b3
inst-tester: Remove obsolete optimization
6 years ago
Niels Thykier 0690a85fe0
excuse: Avoid some unnecessary throw-away tuples
6 years ago
Niels Thykier bd1a0ea000
excuse: Fix some minor style/pep8 issues
6 years ago
Niels Thykier 41f4b43f2c
excuse.p: Refactor some duplicated code
6 years ago
Paul Gevers 18633e275c
autopkgtest: figure out which packages from unstable are needed
6 years ago
Paul Gevers 713b98ad6b
inst_tester: add is_pkg_in_testing
6 years ago
Paul Gevers 20a64cadef
Process space separated triggers individually
6 years ago
Niels Thykier b6888c2716 test-builder: Avoid allocating empty throw-away lists on empty relations
6 years ago
Niels Thykier 373f7f51f3 inst-builder: Avoid some hash-look ups by doing them early
6 years ago
Niels Thykier 35add7cb26 Move loop-invariant out of loop
6 years ago
Niels Thykier 02001d4d4f inst-builder: Loop over values instead of keys + hash-lookup
6 years ago
Niels Thykier 0446ead9e8 inst-builder: Replace RelationBuilder with a set_relations method
6 years ago
Niels Thykier ab6b2ef953 inst-builder: Refactor to bulk adding dependency clauses
6 years ago
Niels Thykier bc1d3afa38 inst-builder: Make add_breaks a bulk call
6 years ago
Niels Thykier 6f97e36477 inst-builder: Split relation loop and optimize conflicts
6 years ago
Niels Thykier 6a3d100b92 Fix error format string error in AssertionError
6 years ago
Niels Thykier fc834624fc Avoid some unnecessary hash look ups
6 years ago
Niels Thykier 74c728bf91 Make the tab-completer suite agnostic
6 years ago
Niels Thykier 0d5c4a24c4 Handle Build-Depends-Indep in excuses
6 years ago
Niels Thykier 1623828a48 SourcePackage: Add field for Build-Depends-Indep
6 years ago
Niels Thykier 8753649e54 Replace a for-loop with any()
6 years ago
Niels Thykier 1d45b2a3b2 Move autopkgtest specific field to Autopkgtest policy
6 years ago
Mathieu Trudel-Lapierre 8d2cabd914 Add 'unsatisifiable dependencies' to YAML excuses
6 years ago
Niels Thykier 3e1da36331 excuses: Correct source field in YAML excuses
6 years ago
Paul Gevers 0868962ee3
autopkgtest: Ignore triggers without a forward slash
6 years ago
Niels Thykier f67fc00292 AgePolicy: Move self.options usage to constructor/initialization
6 years ago
Niels Thykier 8e9e099a67 BasePolicy: Make an easy accessor for state_dir
6 years ago
Niels Thykier b0e193d955 Add missing @property - otherwise "verdict.is_blocked" is always True
6 years ago
Niels Thykier 36608194f8 test_policy: Add additional tests of AgePolicy
6 years ago
Niels Thykier e88f4d2e5e AgePolicy: Explicitly ignore comment lines in data files
6 years ago
Niels Thykier 206d5ac5df Fix typo in parameter
6 years ago
Paul Gevers c219c42804 Add text to excuses in case autopkgtest is delayed
6 years ago
Paul Gevers 08a6cdde6f Don't have britney create migration-references itself
6 years ago
Niels Thykier 4a2fe3420a Rewrite write_controlfiles to take a single suite as argument
6 years ago
Niels Thykier 97d707e5c0 britney: Avoid some references to britney.{sources,binaries}
6 years ago
Niels Thykier dfbff18b5c Remove some references to "unstable"
6 years ago
Niels Thykier 6c6b8fcb96 policies: Make policies suite name agnostic
6 years ago
Niels Thykier 54e5eb0e74 policies: Use suite class instead of suite name
6 years ago
Niels Thykier 63c867995b write_heidi: Accept a target suite instead of sources+packages
6 years ago
Niels Thykier 609bb9e960 Make migration and undo code suite agnotisc
6 years ago
Niels Thykier 382ced2a68 Make write_excuses suite agnostic
6 years ago
Niels Thykier 9a5c0c3fa8 Rewrite old_libraries to be suite agnostic
6 years ago
Niels Thykier 64d2bc4203 builder.py: Make the code suite agnostic
6 years ago
Niels Thykier f464baa257 Move the "binary" field from Britney to Suite
6 years ago
Niels Thykier 73f4f3a5dd Suites now have a reference to sources
6 years ago
Niels Thykier d1350606bb Use a proper Suite object for MigrationItem.suite
6 years ago
Niels Thykier 8768e2a02a Define a SuiteClass to classify suites
6 years ago
Niels Thykier b63ade583c Rename and turn SuiteInfo into a proper class
6 years ago
Niels Thykier e63aa05708 Add Suites to keep track of all suites
6 years ago
Niels Thykier 37f02d611c Revert "Rename autopkgtest related hints"
7 years ago
Niels Thykier a07fa9f907 Rename autopkgtest related hints
7 years ago
Paul Gevers bfa5c9f191
Don't show excuses for packages that are PASS, NEUTRAL, RUNNING-ALWAYSFAIL or ALWAYSFAIL
7 years ago
Paul Gevers 0da1e4d589
autopkgtest: Drop broken reference update
7 years ago
Paul Gevers 624b185ba6
autopkgtest: enable NEUTRAL state for the case where all tests were skipped (or none available)
7 years ago
Paul Gevers 8bbe112735
Rephrase 'Always failed' as it is confusing in Debian
7 years ago
Niels Thykier d11152b366 Remove the "valid candidate"/"Not considered" messages
7 years ago
Niels Thykier 5dd4a5141c Avoid explicit state in non-actionable excuses
7 years ago
Niels Thykier e51a3b91ff autopkgtest.py: Avoid unnecessary indirection
7 years ago
Niels Thykier a344a9b375 Rewrite handling of logging old libraries
7 years ago
Niels Thykier 3d05b834ad Refactor logging of uninst
7 years ago
Niels Thykier d3638cc08f Make adt_baseline config optional
7 years ago
Niels Thykier 92817767b6 Merge remote-tracking branch 'github/autopkgtest'
7 years ago
Paul Gevers a4d0c4a854
Don't start the tests before arch:all has been build (if applicable)
7 years ago
Paul Gevers 022d6ed564
Packages need passing tests on all tested architectures to receive the bounty
7 years ago
Paul Gevers 7e8ec20bc1
Put autopkgtest state files in their own namespace
7 years ago
Paul Gevers 575993d77b
Drop some linux-meta hardcoded stuff; not in Debian and bug 779559 is fixed long time
7 years ago
Niels Thykier d7045af2b7 Leverage defaultdict to simplify some code
7 years ago
Niels Thykier 641df09570 Fix typo in a comment
7 years ago
Niels Thykier 686721e91f Rewrite some set constructs
7 years ago
Niels Thykier 77ec8a34f9 Optimize some hash lookups
7 years ago
Niels Thykier 499f7d993c Move loop-invariant out of loop
7 years ago
Niels Thykier 74fe0c8b8e Use finally to close handles from urlopen
7 years ago
Niels Thykier 2c34b70492 Remove unused import
7 years ago
Paul Gevers def9d81c76
Make retry URL configurable (two flavors)
7 years ago
Paul Gevers 9a28ec184b
Revert "autopkgtest: Drop retry_url from the excuses as this works different in Debian"
7 years ago
Paul Gevers cb716e3186
Don't excuse.force() on skiptest hint
7 years ago
Paul Gevers 6252826fad
autopkgtest: add adt_baseline = reference option
7 years ago
Niels Thykier 41978869ce Migrate solver's ad-hoc debug logging
7 years ago
Niels Thykier 8eaee4309e Rewrite "self.log -> self.logger.<severity>" for autopkgtest
7 years ago
Niels Thykier f752ea4ac7 Merge branch 'master' into autopkgtest
7 years ago
Niels Thykier 32b2ee326a Use lazy evaluation of format arguments in logging
7 years ago
Niels Thykier 8bf73610ee policies: Use logger instead of "log"
7 years ago
Niels Thykier ac69b3b5c7 Migrate hint parser to fully use logging
7 years ago
Niels Thykier 5e825043d3 Replace "print" logging with the "logging" module
7 years ago
Paul Gevers 5dfde99fe6
sources is a proper class with a version method
7 years ago
Paul Gevers c7107d1fd4
autopkgtest: rewrite processing of debci2britney data
7 years ago
Paul Gevers 12e2cb7596
autopkgtest: don't log a very much occuring ignored situation
7 years ago
Paul Gevers 67becb2aec
autopkgtest: in the final API, run_id is a number, convert it to string internally
7 years ago
Paul Gevers d0fd1872d4
autopkgtest: give blacklisted packages a version of 'blacklisted'
7 years ago
Paul Gevers df17112bbe
autopkgtest: ignore results without trigger
7 years ago
Paul Gevers adbe6d5f67
autopkgtest: redefine regression, if possible, only take test results in testing into account
7 years ago
Paul Gevers 054830d03f
autopkgtest: Drop retry_url from the excuses as this works different in Debian
7 years ago
Paul Gevers fc5eacf7d1
autopkgtest: minor change
7 years ago
Paul Gevers d59538a514
Enable correct result file url for Debian
7 years ago
Paul Gevers 93ca29c3aa
Load the debci API status file directly
7 years ago
Paul Gevers 03292d1df4
On ci.d.n the running test page is under status/pending
7 years ago
Paul Gevers 1e022af99e
Minor enhancement of log message as in Debian a package can be in unstable without being in testing.
7 years ago
Paul Gevers 9790dbf7c2
Don't reward bounty while tests are running or are always-failed
7 years ago
Paul Gevers 44f983dc63
autopkgtest: Remove hack for gccgo-5/6
7 years ago
Paul Gevers 011e9a14b7
Merge branch 'master' into autopkgtest
7 years ago
Paul Wise 94a3136f64 Drop duplicate 'has new bugs' excuses item
7 years ago
Paul Gevers fd03083ea5
Merge branch 'master' into autopkgtest
7 years ago
Niels Thykier b82f4fc632 autopkgtests policy: only load amqplib if needed
7 years ago
Niels Thykier 5c3229467a write_heidi: Include cruft arch:all packages in the output
7 years ago
Niels Thykier 7217c22b42 get_dependency_solvers: The "foo:any" modifier can also appear in B-D relations
7 years ago
Niels Thykier 2242821c01 BuildDependsPolicy: Add missing build_depends=True to get_dependency_solvers
7 years ago
Niels Thykier c195268019 piuparts: Properly discard the URL for testing
7 years ago
Niels Thykier bda39f8ca0 Support :native in build-dependency relations
7 years ago
Niels Thykier 89765bc374 BuildDependsPolicy: Keep block_txt and block in sync
7 years ago
Niels Thykier ee27d7a67c Add BuildDependsPolicy to check Build-Depends(-Arch) availability
7 years ago
Niels Thykier c537f0554f Move PolicyVerdict to britney2.policies
7 years ago
Niels Thykier 784d80ab4c Replace a few lists with sets
7 years ago
Niels Thykier 94034f225f excuse: Drop unused field
7 years ago
Paul Gevers f03f59548d
Fix logic in exception handling of unknown autopkgtest results
7 years ago
Paul Gevers 089c4f6e57
Rename new excuse field and method to unsatisfiable_on_archs and add_unsatisfiable_on_arch
7 years ago
Paul Gevers a16e4e5a55
Enable autopkgtesting on built arches when not all have been built yet
7 years ago
Paul Gevers 41c4729506
Only give bounty on passing packages if the package has a test suite itself
7 years ago
Paul Gevers d975b2fc39
Make the huge queue in autopkgtest optional
7 years ago