Commit Graph

17 Commits

Author SHA1 Message Date
Alexandru Avadanii fd5b8c0359 AArch64 support: api, cli, controllers, drivers
Enable new architecture 'aarch64' ('arm64' on Ubuntu).
Tested with DEB driver.

Closes-bug: 1638635

Change-Id: I9761322020837186c109c18e849128791ab909d8
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2016-11-02 18:13:42 +01:00
Bulat Gaifullin cae6df70bf Added packaging driver to build RPM by using mock
Option 'cache_dir' uses to specify directory where
will be downloaded remote files
The packaging controller allows to use files which
are available via HTTP as source or spec file
Each driver has its own section in input data,
this allows to use same input data for several drivers.

Change-Id: I1fb3b08fe305c3413e5aa4a9213762208a2479da
2016-07-05 16:49:06 +03:00
Bulat Gaifullin 406bdaa7e2 Introduced packaging API
This change introduces API for building packages.
The commit includes Controller object and interface for PackagingDriver.

Change-Id: I1ce0f746c1cbc5cf8ff29d08d09175acb5d79586
2016-06-22 13:09:23 +03:00
Bulat Gaifullin f659d0ed63 Moved repositorory drivers to dedicated namespace
The 'packetary.drivers' is very common namespace, so
the repository drivers was moved to 'repository_drivers' namespace.

Change-Id: Ie246e8ba83e1f4cd01ff707c0cd1e77ea5fe3551
2016-06-15 13:34:23 +03:00
Sergey Kulanov e1f7a5975a [priority] Merge repos with the same priority
1) We need to merge trees with the same priority in order
to catch case when we have package with different versions in
repos with the same priority, eg:
   repo2, priority=10, package=foo-5.3
   repo1, priority=5,  package=asd-1.2
   repo3, priority=10, package=foo-7.1

   --> sort(key=priority) can result:
   repo1, priority=5,  package=asd-1.2
   repo2, priority=10, package=foo-5.3
   repo3, priority=10, package=foo-7.1
   so we will return: foo-5.3 instead we must return foo-7.1

2) priority must be a mandatory parameter for Repository

3) Align rpm default priority _DEFAULT_PRIORITY: N, where
   N is an integer from 1 to 99. The default priority for
   repositories is 99. The repositories with the lowest
   numerical priority number have the highest priority.

Closes-bug: #1590525
Change-Id: I8299b1502775cc68bd1c783487ce7dc802a31a05
2016-06-14 13:42:34 +03:00
Bulat Gaifullin d661055322 Introduced new scheme to declare requirements
the requirements can contain the following sections:
packages - the list of packages that are needed
repositories - the list of repositories, packages from that are needed
mandatory - boolean flag that uses to automatically copy mandatory packages

Change-Id: Ic26f991c0bf1e9819005cd4bbe7ed40228b2ce1b
2016-05-19 15:26:16 +03:00
Bulat Gaifullin d644789905 Fixed retrieve groups.xml on merge repositories
Also add package name when warn about unresolved

Closes-Bug: 1551614
Change-Id: I9545b5c419f03fd9095a6a0abb5d5f21fb3a1ac0
2016-03-01 15:51:08 +03:00
Bulat Gaifullin f27bed00a5 Copied groups index upon fork of repository
Also keep original group index durring rebuild repository index.
Build only meta-files without package information durring create and fork
repository

Change-Id: I613ce2084750f02035a13c301aa5812e08a90482
Closes-Bug: 1549413
2016-02-24 22:12:17 +03:00
Bulat Gaifullin c0f04443b5 Fixed building destination path on forking repository
Also fixed handling 'path' argument for centos repositories

Change-Id: I3292e64d47e0ea58a44d3ce625649d4bb934f3c6
Closes-Bug: 1547820
2016-02-20 13:20:14 +03:00
Bulat Gaifullin 34b2ba01b2 Fixed invalid call signature for clone-command
Also make versions as optional field in packages_schema.
Fixed ValidationError formatting when path contains int indexes.

Closes-Bug: 1543503
Change-Id: Idf070b4431bdac2c49340e9e09902a5b39d2a548
2016-02-09 13:36:17 +03:00
Bulat Gaifullin 9e107cde9a Implemented input data validation
Change-Id: I8407cf4cbb69e60b7def891625522f3ca3c822fe
Implements:  blueprint unify-input-data
2016-02-05 17:07:48 +03:00
Bulat Gaifullin aff85a919e Introduced API to build DEB and RPM repository
Change-Id: I7abc2705f66228e81b36febe146d06988efb7b00
Implements: blueprint build-repository
2016-01-28 18:22:39 +00:00
Bulat Gaifullin 1ce69b4fef Unify input data format
The input data is described in YAML or JSON format
Also implemented support of priorities for repositories

Change-Id: I02f11714ba8880dd06c3ceeadf230c1d812ff0be
Implements:  blueprint unify-input-data
2016-01-28 17:27:15 +00:00
Bulat Gaifullin 0cb734c002 Updated file-headers 2015-12-29 12:51:14 +03:00
Bulat Gaifullin 15cbcf5e0a Update file-headers 2015-12-29 12:08:39 +03:00
Bulat Gaifullin aa570b1f98 [packetary] Introduce driver for debian-repository
Change-Id: Icb8f6964bd0a9080ace50b4786ac76ae5dbb9976
Implements: blueprint refactor-local-mirror-scripts
Partial-Bug: #1487077
2015-11-16 15:00:55 +03:00
Bulat Gaifullin 671af8e611 [packetary] Repository class
class Repository composes from:
* RepositryDriver - low-level support for physical repository. deb, yum, etc.
* RepositoryController - infrastcuture method to communicate with driver
* RepositoryApi - high-level class, that provides methods to work with repository

Change-Id: Iaf868fca982d91089e369d13a6fb381ff879ea73
Implements: blueprint refactor-local-mirror-scripts
Partial-Bug: #1487077
2015-11-09 16:22:18 +03:00