From a67011d835bcb0df392e4033e75c5373949b1154 Mon Sep 17 00:00:00 2001 From: Liora Milbaum Date: Mon, 30 Oct 2023 22:27:12 +0200 Subject: [PATCH 1/2] Enable pre-commit --- .gitlab-ci.yml | 1 - COPYING | 1 - centos-tier-0-rt-stream9.yaml | 1 - centos-tier-0-stream9.yaml | 1 - centos-tier-1-stream9.yaml | 1 - copr-coreos-continuous.repo | 1 - copr-fedora-dnf.repo | 1 - fedora-eln.repo | 1 - 8 files changed, 8 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index cd0f43d..38bb110 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -44,4 +44,3 @@ build-push: - echo "$CI_REGISTRY_PASSWORD" | skopeo login -u "$CI_REGISTRY_USER" --password-stdin $CI_REGISTRY script: - set -euo pipefail; rpm-ostree compose image ${COMPOSE_INITIALIZE:+--initialize} ${FORCE:+--force-nocache} --format=registry ${OS}-${TIER}${VARIANT}-${VERSION}.yaml ${CI_REGISTRY_IMAGE}/${OS}-boot-${TIER}${VARIANT}:${VERSION} - diff --git a/COPYING b/COPYING index b81e261..fd10f08 100644 --- a/COPYING +++ b/COPYING @@ -18,4 +18,3 @@ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - diff --git a/centos-tier-0-rt-stream9.yaml b/centos-tier-0-rt-stream9.yaml index 987118c..a58fe8c 100644 --- a/centos-tier-0-rt-stream9.yaml +++ b/centos-tier-0-rt-stream9.yaml @@ -2,4 +2,3 @@ include: - centos-stream-9.yaml - tier-0/kernel-rt.yaml - tier-0/manifest.yaml - diff --git a/centos-tier-0-stream9.yaml b/centos-tier-0-stream9.yaml index 3983dcf..fe66794 100644 --- a/centos-tier-0-stream9.yaml +++ b/centos-tier-0-stream9.yaml @@ -2,4 +2,3 @@ include: - centos-stream-9.yaml - tier-0/kernel.yaml - tier-0/manifest.yaml - diff --git a/centos-tier-1-stream9.yaml b/centos-tier-1-stream9.yaml index b5a94c9..24c0722 100644 --- a/centos-tier-1-stream9.yaml +++ b/centos-tier-1-stream9.yaml @@ -2,4 +2,3 @@ include: - centos-stream-9.yaml - tier-1/kernel.yaml - tier-1/manifest.yaml - diff --git a/copr-coreos-continuous.repo b/copr-coreos-continuous.repo index 38edefa..e419712 100644 --- a/copr-coreos-continuous.repo +++ b/copr-coreos-continuous.repo @@ -8,4 +8,3 @@ gpgkey=https://download.copr.fedorainfracloud.org/results/@CoreOS/continuous/pub repo_gpgcheck=0 enabled=1 enabled_metadata=1 - diff --git a/copr-fedora-dnf.repo b/copr-fedora-dnf.repo index 306b5d2..11934a4 100644 --- a/copr-fedora-dnf.repo +++ b/copr-fedora-dnf.repo @@ -8,4 +8,3 @@ gpgkey=https://download.copr.fedorainfracloud.org/results/rpmsoftwaremanagement/ repo_gpgcheck=0 enabled=1 enabled_metadata=1 - diff --git a/fedora-eln.repo b/fedora-eln.repo index c72a071..14e4d4a 100644 --- a/fedora-eln.repo +++ b/fedora-eln.repo @@ -406,4 +406,3 @@ type=rpm gpgcheck=1 gpgkey=file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-40-primary skip_if_unavailable=False - From b3272a03fb1174cb33da8e9538af4faf6a9f5173 Mon Sep 17 00:00:00 2001 From: Liora Milbaum Date: Mon, 30 Oct 2023 23:14:50 +0200 Subject: [PATCH 2/2] pre-commit enabled --- .mdl_style.rb | 3 ++ .mdlrc | 1 + .pre-commit-config.yaml | 31 ++++++++++++++++++ README.md | 69 ++++++++++++++++++++++++----------------- 4 files changed, 75 insertions(+), 29 deletions(-) create mode 100644 .mdl_style.rb create mode 100644 .mdlrc create mode 100644 .pre-commit-config.yaml diff --git a/.mdl_style.rb b/.mdl_style.rb new file mode 100644 index 0000000..b7fb25e --- /dev/null +++ b/.mdl_style.rb @@ -0,0 +1,3 @@ +all +rule 'MD009', :br_spaces => 2 +rule 'MD013', :ignore_code_blocks => true diff --git a/.mdlrc b/.mdlrc new file mode 100644 index 0000000..1f82ca2 --- /dev/null +++ b/.mdlrc @@ -0,0 +1 @@ +style '.mdl_style.rb' diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..c27f9fa --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,31 @@ +--- +repos: + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.4.0 + hooks: + - id: end-of-file-fixer + - id: trailing-whitespace + args: + - --markdown-linebreak-ext=md + - id: check-docstring-first + - id: requirements-txt-fixer + - id: check-merge-conflict + - id: no-commit-to-branch + args: + - "--branch" + - "main" + - id: check-symlinks + - id: detect-private-key + - id: detect-aws-credentials + args: + - --allow-missing-credentials + - id: check-json + - id: check-yaml + - repo: https://github.com/markdownlint/markdownlint + rev: v0.12.0 + hooks: + - id: markdownlint + - repo: https://github.com/maxbrunet/pre-commit-renovate + rev: 35.82.0 + hooks: + - id: renovate-config-validator diff --git a/README.md b/README.md index c9b0727..c954d99 100644 --- a/README.md +++ b/README.md @@ -2,17 +2,19 @@ This is part of [Project Sagano](https://gitlab.com/CentOS/cloud/issue-tracker/-/blob/main/README.md). -These images are technology demonstrators, not for production use. The intention is that these images are -generated by the OS vendor or distribution. Or, you can fork this repository and generate your own -via `rpm-ostree compose image`. +These images are technology demonstrators, not for production use. The +intention is that these images are generated by the OS vendor or +distribution. +Or, you can fork this repository and generate your own via +`rpm-ostree compose image`. -# Operating system sources +## Operating system sources At the moment these demonstration builds use Fedora 38 and CentOS Stream 9. -# Tiers +## Tiers -## Tier 0 +### Tier 0 This is the basic tier; it has effectively just: @@ -22,7 +24,7 @@ You are generally going to need to generate derived images from this; installing it on its own will boot to a system with no automatic networking support, no SSH, and no default passwords etc. -## Tier 1 +### Tier 1 This is larger system. @@ -35,67 +37,76 @@ still need to derive from it in order to inject a mechanism to log in in many cases. However, it will work to install it using e.g. Anaconda and set up users and passwords that way. -# Image matrix (Fedora) +## Image matrix (Fedora) - `registry.gitlab.com/centos/cloud/sagano/fedora-boot-tier-0:38` - `registry.gitlab.com/centos/cloud/sagano/fedora-boot-tier-1:38` - `registry.gitlab.com/centos/cloud/sagano/fedora-boot-tier-0:eln` - `registry.gitlab.com/centos/cloud/sagano/fedora-boot-tier-1:eln` -# Image matrix (CentOS Stream 9) +## Image matrix (CentOS Stream 9) - `registry.gitlab.com/centos/cloud/sagano/centos-boot-tier-0:stream9` -- `registry.gitlab.com/centos/cloud/sagano/centos-boot-tier-0-rt:stream9` (realtime kernel) +- `registry.gitlab.com/centos/cloud/sagano/centos-boot-tier-0-rt:stream9` + (realtime kernel) - `registry.gitlab.com/centos/cloud/sagano/centos-boot-tier-1:stream9` -- `registry.gitlab.com/centos/cloud/sagano/centos-boot-tier-1-rt:stream9` (realtime kernel) +- `registry.gitlab.com/centos/cloud/sagano/centos-boot-tier-1-rt:stream9` + (realtime kernel) -# Image matrix (Fedora development) +## Image matrix (Fedora development) These images pull from git main/master of RPMs using COPRs for selected projects. - `registry.gitlab.com/centos/cloud/sagano/fedora-boot-tier-0-dev:38` - `registry.gitlab.com/centos/cloud/sagano/fedora-boot-tier-1-dev:38` -## More about image sources +### More about image sources -The current manifest definitions [tier-0](tier-0) and [tier-1](tier-1) were forked from Fedora CoreOS, but significantly -cut down. +The current manifest definitions [tier-0](tier-0) and [tier-1](tier-1) were +forked from Fedora CoreOS, but significantly cut down. The existing content set is obviously subject to change and debate. -# Building +## Building Here's an example command: -``` -$ sudo rpm-ostree compose image --authfile ~/.config/containers/myquay.json --cachedir=cache -i --format=ociarchive centos-tier-0-stream9.yaml centos-tier-0-stream9.ociarchive +```shell +sudo rpm-ostree compose image --authfile ~/.config/containers/myquay.json --cachedir=cache -i --format=ociarchive centos-tier-0-stream9.yaml centos-tier-0-stream9.ociarchive ``` -In some situations, copying to a local `.ociarchive` file is convenient. You can also push to a registry with `--format=registry`. +In some situations, copying to a local `.ociarchive` file is convenient. You +can also push to a registry with `--format=registry`. -More information at https://coreos.github.io/rpm-ostree/container/ +More information at -# Plan +## Plan -## Phase 0 +### Phase 0 -- Merge this repository into https://gitlab.com/fedora/boot-container-base (e.g.) +- Merge this repository into (e.g.) - Add these images to Fedora, but in the `fedoraci` namespace, [like ELN](https://docs.fedoraproject.org/en-US/eln/deliverables/). - The images are [built via Pungi](https://pagure.io/pungi/pull-request/1699) -- The [sync container script](https://pagure.io/releng/pull-request/11180) is modified to include this +- The [sync container script](https://pagure.io/releng/pull-request/11180) is + modified to include this - Add this to CI tooling in Fedora -## Phase 1 +### Phase 1 -- Change [fedora-coreos-config](https://github.com/coreos/fedora-coreos-config/) to inherit from this as a git submodule -- (?) Fork https://gitlab.com/fedora/boot-container-base into something under https://gitlab.com/CentOS/cloud/ and start building C9S versions there? -- https://gitlab.com/redhat/centos-stream +- Change [fedora-coreos-config](https://github.com/coreos/fedora-coreos-config/) + to inherit from this as a git submodule +- (?) Fork into something under + and start building C9S versions there? +- -# Badges +## Badges | Badge | Description | Service | | ----------------------- | -------------------- | ------------ | | [![Renovate][1]][2] | Dependencies | Renovate | +| [![Pre-commit][3]][4] | Static quality gates | pre-commit | [1]: https://img.shields.io/badge/renovate-enabled-brightgreen?logo=renovate [2]: https://renovatebot.com +[3]: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit +[4]: https://pre-commit.com/