summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * sandbox: make run_sandboxed output stdout and stderrJonathan Maw2017-05-111-3/+3
| | | | | | | | stderr isn't used for anything, yet.
| * rpm: use prefix field when spec files use %{prefix}Jonathan Maw2017-05-111-0/+1
| | | | | | | | | | | | | | | | | | i.e. the chunk has a field named "prefix" This exposes this value to the spec when generating rpms by inserting it into the spec file as a "Prefix:" header. Following discussion that concluded that since we always default prefix to /usr, we should maintain this when generating rpms.
| * rpm: Fix Provides lines being absorbed into descriptionsJonathan Maw2017-05-111-17/+18
| |
| * rpm: Add Provides: information when generating rpmsJonathan Maw2017-05-111-0/+5
| |
| * rpm: specify cpu in rpmbuildJonathan Maw2017-05-111-0/+1
| |
| * ybd/rpm.py: Fix problem in deployment:Tristan Van Berkom2017-05-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 17-03-02 00:00:17 [0/137/540] [system-x86_32] ERROR: surprise exception in sandbox Traceback (most recent call last): File "/ybd/ybd/sandbox.py", line 60, in setup yield File "/ybd/ybd/rpm.py", line 279, in package_rpms whitelist=whitelist) File "/ybd/ybd/rpm.py", line 72, in foreach_def foreach_def(item, callback, user_data, traversed, whitelist) File "/ybd/ybd/rpm.py", line 72, in foreach_def foreach_def(item, callback, user_data, traversed, whitelist) File "/ybd/ybd/rpm.py", line 75, in foreach_def callback(dn, user_data) File "/ybd/ybd/rpm.py", line 211, in package_one_rpm defines = extract_defines(dn) File "/ybd/ybd/rpm.py", line 163, in extract_defines defines = meta.get('defines') AttributeError: 'list' object has no attribute 'get'
| * rpm.py: Support "defines" list in rpm-metadataTristan Van Berkom2017-05-111-1/+22
| | | | | | | | | | | | | | | | If specified, these are added to the defines list for package generation of the given chunk. This should be used when spec files make local macro definitions which might be used in rpm scriptlets or %files manifests.
| * ybd.conf: Documenting the generate-rpms setting to include the new list formatTristan Van Berkom2017-05-111-0/+4
| |
| * __main__.py: Interpret the generate-rpms setting differently.Tristan Van Berkom2017-05-111-3/+11
| | | | | | | | | | | | | | | | The generate-rpms can still be set to True which means to generate every rpm possible. Now generate-rpms can also be set to a list of chunk names to generate rpms for.
| * rpm.py: Support a whitelist of chunks for which to generate rpmsTristan Van Berkom2017-05-111-7/+13
| |
| * sandbox.py: pep8Tristan Van Berkom2017-05-111-2/+4
| |
| * rpm.py: pep8Tristan Van Berkom2017-05-111-3/+5
| |
| * rpm.py: Support dictionary variant for rpm-metadataTristan Van Berkom2017-05-111-1/+13
| | | | | | | | | | | | | | The new rpm-metadata format allows us to encode more things into the per chunk metadata (specifically, we need to be able to manually specify which spec file to parse in the odd cases of repositories contiaining many spec files).
| * If definition contains sha:, it always overrides ref:Paul Sherwood2017-05-112-0/+6
| |
| * rpm.py: Keep trying to build rpms, even if one of them fails.Tristan Van Berkom2017-05-111-5/+11
| | | | | | | | | | We would rather have a full build log of everything that failed so we can fix it, than to fix/build one at a time.
| * sandbox.py: Only optionally abort on failures from run_sandbox()Tristan Van Berkom2017-05-111-2/+6
| | | | | | | | | | Dont sys.exit() for this if not asked for, just return False if there was a failure
| * Fix rpmbuild failing when unexpected files existJonathan Maw2017-05-111-0/+1
| | | | | | | | | | The specific use case here was that splitting rules created files containing binaries' debugging information.
| * Properly handle empty files: sections in rpm-metadataJonathan Maw2017-05-111-0/+4
| |
| * Rework rpmdb initializationJonathan Maw2017-05-111-3/+6
| | | | | | | | | | Uses built-in python commands instead of shelling out to create dirs. Also checks whether they exist first.
| * Use an rpm-metadata field to get most rpm dataJonathan Maw2017-05-112-80/+55
| | | | | | | | | | | | i.e. it reads a chunk's rpm-metadata field (if it doesn't exist, it doesn't assemble an rpm for that chunk) for package names, files, and %{pre,post}{,un} sections.
| * Fail early in RPM generation if rpm or rpmbuild is missingJonathan Maw2017-05-111-1/+5
| | | | | | | | | | RPM generation can only happen if the system includes the tools to generate RPMs.
| * Add %post and %postun to rpmsJonathan Maw2017-05-111-4/+21
| | | | | | | | | | This also included a little bit of code tidying in the generate_spec function.
| * Allow rpm-post-{,un}install as fields in definitionsJonathan Maw2017-05-111-0/+2
| | | | | | | | | | | | | | | | These fields will store rpm-specific information about post-install and post-uninstall commands. system-integration commands are not sufficient, as they are intended to be run once when the system is assembled.
| * Make rpm spec's version and release hold useful infoJonathan Maw2017-05-112-9/+20
| | | | | | | | | | | | | | | | "version" is the number of seconds since the epoch. "release" is the sha1 used to build. Actual version information isn't guaranteed to be in the definition format, so it's better to use something consistent.
| * Make ybd+rpm generate rpms for every system in a clusterJonathan Maw2017-05-112-7/+10
| |
| * Put the RPM db in the deployment area, tooJonathan Maw2017-05-111-0/+7
| |
| * Fix rpm generation behaving differently if the destination dir already existsJonathan Maw2017-05-111-1/+9
| |
| * Make generated RPMs not clobber output for diffrerent targetsJonathan Maw2017-05-111-1/+3
| |
| * Make RPM generation dependent on configJonathan Maw2017-05-112-1/+5
| | | | | | | | It should only generate RPMs if 'generate-rpms' is true.
| * Make sandbox.install optionally take a destdirJonathan Maw2017-05-111-5/+11
| |
| * Invoke package_rpms when buildingJonathan Maw2017-05-111-0/+3
| |
| * Update tristan's code to pass pep8Jonathan Maw2017-05-111-77/+90
| | | | | | | | | | Technically, against an older specification of pep8. It contradicts the current rule on line breaks before/after binary operators.
| * Copy rpm.py from tristan's ybd-rpm implementatoinJonathan Maw2017-05-111-0/+244
|/
* Merge branch 'jjardon/modern_distros' into 'master' 17.19Javier Jardón2017-05-112-1/+19
|\ | | | | | | | | Test building baserock definitions in modern distros See merge request !345
| * install_dependencies.sh: Install findutils in fedorajjardon/modern_distrosJavier Jardón2017-05-101-1/+1
| |
| * .gitlab-ci.yml: Test build in current Fedora release (25)Javier Jardón2017-05-101-0/+9
| |
| * .gitlab-ci.yml: Test build in current Ubuntu version (17.04)Javier Jardón2017-05-101-0/+9
|/
* Merge branch 'jonathan/parallel-missing-lockfile' into 'master' Javier Jardón2017-05-101-1/+1
|\ | | | | | | | | | | | | Fix parallel builds failing because of a missing lockfile Closes #212 See merge request !351
| * Fix parallel builds failing because of a missing lockfilejonathan/parallel-missing-lockfileJonathan Maw2017-05-091-1/+1
|/
* Merge branch 'benbrown/sha-key' into 'master' devcurmudgeon2017-04-292-2/+3
|\ | | | | | | | | Resolve 'sha' if it exists over 'ref' in get_tree() See merge request !348
| * Bump artifact-versionbenbrown/sha-keyBen Brown2017-04-281-1/+2
| |
| * Resolve 'sha' if it exists over 'ref' in get_tree()Ben Brown2017-04-281-1/+1
|/ | | | | The 'sha' field should override 'ref' when generating cache-keys as it does when checking out for building.
* Merge branch 'tristan/clean-output' into 'master' devcurmudgeon2017-03-122-12/+97
|\ | | | | | | | | Tristan/clean output See merge request !325
| * pots.py: Use morph_dump() when outputting the exported <target>.ymltristan/clean-outputTristan Van Berkom2017-03-121-12/+2
| | | | | | | | | | This ensures consistent ordering of output, dictated by defaults.conf, and also ensures clean output without escaping strings.
| * Added MorphDumper for clean and consistent YAML output.Tristan Van Berkom2017-03-121-0/+95
|/ | | | | | This code is originally from morph, and added to this is the clause ensuring that no aliases are ever emitted in the output, i.e.: http://stackoverflow.com/questions/21016220
* Merge branch 'ps-fix-concourse-instructions' into 'master' Javier Jardón2017-03-071-3/+5
|\ | | | | | | | | Fix concourse instructions See merge request !321
| * Fix concourse instructionsps-fix-concourse-instructionsPaul Sherwood2017-03-071-3/+5
|/
* Merge branch 'benbrown/kbas-plus' into 'master' Javier Jardón2017-03-071-1/+1
|\ | | | | | | | | Add '+' to the list of accepted characters in kbas artifacts See merge request !320
| * Add '+' to the list of accepted characters in kbas artifactsbenbrown/kbas-plusBen Brown2017-03-061-1/+1
|/ | | | | | | | Fixes: [libdbus-c++] Starting upload [libdbus-c++] Artifact server problem: 400 [libdbus-c++] Failed to upload libdbus-c++.joidja8
* Merge branch 'jjardon/remove_non_suppported_distro' into 'master' Javier Jardón2017-03-051-26/+3
|\ | | | | | | | | .gitlab-ci.yml: Remove non supported distros See merge request !316