rpm-ostree/docs/CONTRIBUTING.md

29 lines
634 B
Markdown
Raw Permalink Normal View History

2020-09-30 19:00:42 +03:00
---
app: Add `rpm-ostree compose extensions` This adds support for a new `rpm-ostree compose extensions` command` which takes a treefile, a new extensions YAML file, and an OSTree repo and ref. It performs a depsolve and downloads the extensions to a provided output directory. This is intended to replace cosa's `download-extensions`: https://github.com/coreos/coreos-assembler/blob/master/src/download-extensions The input YAML schema matches the one accepted by that script. Some differences from the script: - We have a guaranteed depsolve match and thus can avoid silly issues we've hit in RHCOS (like downloading the wrong `libprotobuf` for `usbguard` -- rhbz#1889694). - We seamlessly re-use the same repos defined in the treefile, whereas the cosa script uses `reposdir=$dir` which doesn't have the same semantics (repo enablement is in that case purely based on the `enabled` flag in those repos, which may be different than what the rpm-ostree compose ran with). - We perform more sanity-checks against the requested extensions, such as whether the extension is already in the base. - We support no-change detection via a state SHA512 file for better integration in cosa and pipelines. - We support a `match-base-evr` key, which forces the extension to have the same EVR as the one from a base package: this is helpful in the case of extensions which complement a base package, esp. those which may not have strong enough reldeps to enforce matching EVRs by depsolve alone (`kernel-headers` is an example of this). - We don't try to organize the RPMs into separate directories by extension because IMO it's not at the right level. Instead, we should work towards higher-level metadata to represent extensions (see https://github.com/openshift/os/issues/409 which is related to this). Closes: #2055
2021-01-12 00:53:05 +03:00
nav_order: 10
2020-09-30 19:00:42 +03:00
---
2020-09-30 19:00:42 +03:00
# Contributing
{: .no_toc }
1. TOC
{:toc}
## Submitting patches
Submit a pull request against [coreos/rpm-ostree][rpm-ostree].
Please look at `git log` and match the commit log style.
2020-09-30 19:00:42 +03:00
## Running the test suite
There is `make check` as well as `make vmcheck`. See also what the
[Jenkinsfile][jenkinsfile] file does.
2020-09-30 19:00:42 +03:00
## Coding style
2020-09-30 19:00:42 +03:00
See the [OSTree CONTRIBUTING][contributing] coding style.
2020-09-30 19:00:42 +03:00
[rpm-ostree]: https://github.com/coreos/rpm-ostree
2021-05-07 17:12:45 +03:00
[jenkinsfile]: https://github.com/coreos/rpm-ostree/blob/main/.cci.jenkinsfile
[contributing]: https://github.com/ostreedev/ostree/blob/main/docs/CONTRIBUTING.md