From 5440df6e36d2d7b79e736b532b33ea6de21b9acd Mon Sep 17 00:00:00 2001 From: Pawel Zmarzly Date: Jan 15 2026 16:56:50 +0000 Subject: Update packaging instructions, add GitLab links --- diff --git a/docs/communication/reports.md b/docs/communication/reports.md index 923e888..605713b 100644 --- a/docs/communication/reports.md +++ b/docs/communication/reports.md @@ -1,5 +1,10 @@ The SIG publishes quarterly updates on the [CentOS Blog](https://blog.centos.org) covering recent activity and happenings. +# 2024 + +* [2024Q4](https://blog.centos.org/2025/01/centos-hyperscale-sig-quarterly-report-for-2024q4/) +* [2024Q2](https://blog.centos.org/2024/07/centos-hyperscale-sig-quarterly-report-for-2024q2/) + # 2023 * [2023Q4](https://blog.centos.org/2024/01/centos-hyperscale-sig-quarterly-report-for-2023q4/) diff --git a/docs/contributing/documentation.md b/docs/contributing/documentation.md index ec3a25f..1a21645 100644 --- a/docs/contributing/documentation.md +++ b/docs/contributing/documentation.md @@ -1,7 +1,7 @@ This [documentation site](https://sigs.centos.org/hyperscale/) is generated from our [Pagure repository](https://pagure.io/centos-sig-hyperscale/sig) using [mkdocs](https://www.mkdocs.org). It uses the same -[configuration](https://git.centos.org/centos/centos-infra-docs/blob/master/f/mkdocs.yml) +[configuration](https://gitlab.com/CentOS/infra/docs/-/blob/master/mkdocs.yml) as the CentOS Infra documentation (notably, the [material theme](https://squidfunk.github.io/mkdocs-material/)). diff --git a/docs/contributing/packaging.md b/docs/contributing/packaging.md index 9ccf9ff..552e674 100644 --- a/docs/contributing/packaging.md +++ b/docs/contributing/packaging.md @@ -8,11 +8,9 @@ We recommend using a Fedora Linux or CentOS Stream (with EPEL enabled) system f $ sudo dnf install mock mock-centos-sig-configs centpkg-sig ``` -You will also want to clone the [centos-git-common](https://git.centos.org/centos-git-common) repository for `get_sources.sh`. +You will also want to clone the [centos-git-common](https://gitlab.com/CentOS/common/centos-git-common) repository for `get_sources.sh`. -SIG-maintained packages are hosted [git.centos.org](https://git.centos.org/browse/projects/) under the `cXs-sig-hyperscale` branches, where `cXs` refers to the CentOS Stream version (e.g. `c8s` for CentOS Stream 8). - -To open PRs on git.centos.org you will need a [CentOS account](https://accounts.centos.org) with a valid SSH key added to it. If you're creating a new account, you will also need to login at least once on [git.centos.org](https://git.centos.org) with it to initialize your permissions. +SIG-maintained packages are hosted [on GitLab](https://gitlab.com/CentOS/Hyperscale) under the `cXs-hs` or `cXs-sig-hyperscale` branches, where `cXs` refers to the CentOS Stream version (e.g. `c8s` for CentOS Stream 8). # Branching new packages for Hyperscale @@ -22,7 +20,7 @@ If a package is not currently branched, please file a ticket on our [issue track To clone an existing package: ``` -$ git clone ssh://git@git.centos.org/rpms/$package.git +$ git clone https://gitlab.com/CentOS/Hyperscale/rpms/$rpm ``` And checkout the relevant branch: @@ -30,11 +28,14 @@ And checkout the relevant branch: $ git checkout cXs-sig-hyperscale ``` -To fetch the sources from lookaside, run `get_sources.sh` from inside the checkout. +Fetch the sources from lookaside: +``` +$ ~/centos-git-common/get_sources.sh $rpm.spec +``` You can use mock to do a local test build, for example: ``` -$ mock -r centos-stream-hyperscale-9-x86_64 --sources . --spec systemd.spec --postinstall +$ mock -r centos-stream-hyperscale-9-x86_64 --sources . --spec $rpm.spec --postinstall ``` Use `centos-stream-hyperscale-$releasever-$arch` for packages targeting the Hyperscale main repo, and `centos-stream-hyperscale-experimental-$releasever-$arch` for packages targeting the experimental repo. @@ -61,15 +62,15 @@ If you're not sure, please ask before embarking on this work. To beging with, add the relevant remote to your local checkout. For a package originating from CentOS Stream 9 that would be: ``` -$ git remote add gitlab https://gitlab.com/redhat/centos-stream/rpms/$package.git +$ git remote add centos-upstream https://gitlab.com/redhat/centos-stream/rpms/$package.git ``` Once you have the remote, fetch all changes, checkout the Hyperscale branch and merge the upstream branch into it: ``` $ git fetch --all -$ git checkout c9s-sig-hyperscale -$ git merge gitlab/c9s +$ git checkout c9s-hs +$ git merge centos-upstream/c9s ``` ## Resolving conflicts @@ -77,16 +78,20 @@ $ git merge gitlab/c9s If the Hyperscale package was a straight unmodified backport (e.g. from Fedora), this should just work. In almost all other cases, this will result in a conflict that you will have to resolve. Usually the conflict is around the Release and changelog sections, but other parts of the specfile could be affected too. For Release, you'll want to follow our [versioning policy](../policies/versioning.md). For the changelog, interleave the new upstream entries with the previous Hyperscale entries and ensure they're in chronological order, then add a new changelog entry detailing your changes. # Submitting changes -You will need to fork the repository on git.centos.org if you haven't already (by clicking the "Fork" button on the repository page ([example](https://git.centos.org/rpms/systemd)). Once you have a fork, add the corresponding remote to your local checkout: +You will need to fork the repository on GitLab if you haven't already (by clicking the "Fork" button on the repository page). Once you have a fork, add the corresponding remote to your local checkout: ``` -$ git remote add fork ssh://git@git.centos.org/forks/$account/rpms/$package.git +$ git remote add $user https://gitlab.com/$user/$package.git ``` Once you're ready to submit your changes, push them to your fork: ``` -$ git push fork work +$ git push $user work ``` -and create a PR against the corresponding SIG branch. Note that if the PR contains a merge commit, the commit list in the git.centos.org may be incorrect due to a [Pagure bug](https://pagure.io/pagure/issue/953). This is purely a cosmetic issue and does not impact the actual PR content or the ability to merge it. +and create a MR against the corresponding SIG branch + +# Joining SIG + +If you want to contribute regularly, consider joining our SIG group. See [internal package building docs](../internal/building.md). diff --git a/docs/internal/building.md b/docs/internal/building.md index fbd5cd1..8cb15bd 100644 --- a/docs/internal/building.md +++ b/docs/internal/building.md @@ -1,4 +1,14 @@ -# Prerequisites +This page is for people who want to become Hyperscale SIG members. If you want to do occasional contributions, see public [Packaging guide](../contributing/packaging.md). + +# Becoming SIG member + +Before you start, you will need a CentOS (or Fedora) account, and a Gitlab.com account. + +See [Governance doc](../policies/governance.md) for how to request your membership. + +After you are approved, you will need to click [this magic Gitlab link](https://gitlab.com/groups/centos/-/saml/sso) to link your Gitlab and CentOS accounts together. You only need to do it once. If everything went right, you will see yourself in [the member list](https://gitlab.com/groups/CentOS/Hyperscale/-/group_members). + +# Software prerequisites * For local test builds: `mock` and `mock-centos-sig-configs` * To interact with the lookaside: `centos-get-sources` and `centos-lookaside-upload-sig` from `centos-packager` @@ -6,41 +16,22 @@ # Working with git -SIG members can push SIG branches to any repo under [git.centos.org](https://git.centos.org/browse/projects/). SIG branch names need to prefixed with `cXs-sig-hyperscale`, where `cXs` refers to the CentOS Stream version (e.g. `c8s` for CentOS Stream 8). Currently we're using: +SIG members can create repositories under [GitLab org](https://gitlab.com/CentOS/Hyperscale). The branches should be named `cXs-hs`, where `cXs` refers to the CentOS Stream version (e.g. `c10s` for CentOS Stream 10). Currently we're also using: * `cXs-sig-hyperscale`: stuff meant to go in the main repository * `cXs-sig-hyperscale-experimental`: stuff meant to go in the experimental repository * `cXs-sig-hyperscale-spin`: stuff meant to go in the spin repository -To create a new package file a ticket for [CentOS Infra](https://pagure.io/centos-infra/). Before doing that, think about whether you actually need a new package in CentOS proper, or whether you can use Fedora/EPEL instead. - -## Cloning and building a package +## Cloning, editing and building a package -To clone an existing package: -``` -$ git clone ssh://git@git.centos.org/rpms/systemd.git -``` - -To fetch the sources from lookaside, run `centos-get-sources` from inside the checkout. +See [Packaging guide](../contributing/packaging.md). -To do a local test build, make sure `mock-centos-sig-configs` is installed, then do: -``` -$ mock -r centos-stream-hyperscale-9-x86_64 --sources ./SOURCES --spec ./SPECS/*.spec -``` - -## Making changes - -To make a new empty SIG branch (you can also branch `c8s` if you prefer starting from the existing packaging): -``` -$ git checkout --orphan c9s-sig-hyperscale -``` - -If you need to add new source tarballs: +Prefer using URLs to point to sources, but if you need to upload new source tarballs to lookaside, use: ``` $ centos-lookaside-upload-sig -f systemd-249.4.tar.gz -n systemd ``` -to push them to lookaside, then update gitignore and metadata ([example](https://git.centos.org/rpms/systemd/c/1c4d83f9061e38d08c8fcb4c43b5ba3a96d8cd0a?branch=c9s-sig-hyperscale)) +to push them to lookaside, then update gitignore and metadata ([example](https://gitlab.com/CentOS/Hyperscale/rpms/systemd/-/commit/1c4d83f9061e38d08c8fcb4c43b5ba3a96d8cd0a)). Note that `centos-lookaside-upload-sig` requires a valid CentOS certificate. See the [CentOS SIG Guide](https://sigs.centos.org/guide/git/) for more information. @@ -51,6 +42,20 @@ All our build tags set the `%centos_hs` macro `1`, so that we can gate Hyperscal !!! note As explained in [CentOS-Infra #75](https://pagure.io/centos-infra/issue/715), when adding new tags, make sure to request that `epel` and `epel-next` repos are added to the tags. +## CentOS Stream 10 + +We have two main build tags: + +* `hyperscale10s-packages-main-el10s` -- our default build tag, if you're not sure, this is probably what you want to use; packages built here will have `%dist` set to `.hs.el10` +* `hyperscale10s-packages-experimental-el10s` -- use this when building for experimental; this tag does not inherit from main, and packages build here will have `%dist` set to `.hsx.el10` + +There are three additional special purpose tags: + +* `hyperscale10s-packages-facebook-el10s` -- same as `main`, but also with `%facebook` set to `1` and `%dist` set to `.hs+fb.el10`; meant for Facebook-flavored builds, currently only used for systemd and btrfs-progs +* `hyperscale10-packages-facebook` -- built against RHEL instead of CentOS Stream, `%facebook` set to `1` and `%dist` set to `.hs+fb.el10_z`; meant for Facebook-flavored builds for RHEL +* `hyperscale10s-packages-hotfixes-el10s` -- do not use, use `main` instead +* `hyperscale10s-packages-spin-el9s` -- use this when building for packages for spin that should not be in the main buildroot; prefer using `main` whenever possible + ## CentOS Stream 9 We have two main build tags: @@ -61,6 +66,7 @@ We have two main build tags: There are three additional special purpose tags: * `hyperscale9s-packages-facebook-el9s` -- same as `main`, but also with `%facebook` set to `1` and `%dist` set to `.hs+fb.el9`; meant for Facebook-flavored builds, currently only used for systemd and btrfs-progs +* `hyperscale9-packages-facebook` -- built against RHEL instead of CentOS Stream, `%facebook` set to `1` and `%dist` set to `.hs+fb.el9_z`; meant for Facebook-flavored builds for RHEL * `hyperscale9s-packages-hotfixes-el9s` -- do not use, use `main` instead * `hyperscale9s-packages-spin-el9s` -- use this when building for packages for spin that should not be in the main buildroot; prefer using `main` whenever possible @@ -100,7 +106,7 @@ Note that you won't be able to tag into a destination tag unless it's been regis To run a scratch build from git: ``` -$ cbs build --scratch hyperscale9s-packages-main-el9s "git+https://git.centos.org/rpms/systemd.git#$(git rev-parse HEAD)" +$ cbs build --scratch hyperscale9s-packages-main-el9s "git+https://gitlab.com/CentOS/Hyperscale/rpms/systemd.git#$(git rev-parse HEAD)" ``` To run a real build, the package needs to be registered to a destination tags first: @@ -114,7 +120,7 @@ This only needs to be done once per package. To kickoff a build: ``` -$ cbs build hyperscale9s-packages-main-el9s "git+https://git.centos.org/rpms/systemd.git#$(git rev-parse HEAD)" +$ cbs build hyperscale9s-packages-main-el9s "git+https://gitlab.com/CentOS/Hyperscale/rpms/systemd.git#$(git rev-parse HEAD)" ``` To publish to buildlogs.centos.org: diff --git a/docs/sig/charter.md b/docs/sig/charter.md index 01deedf..a12008a 100644 --- a/docs/sig/charter.md +++ b/docs/sig/charter.md @@ -39,11 +39,12 @@ See the Content section in our [documentation](../index.md). # Resources -- Issue-only repo to coordinate SIG business: https://pagure.io/centos-sig-hyperscale/sig -- ACL group on FAS/ACO: https://accounts.centos.org/group/view/sig-hyperscale -- Pagure group: https://pagure.io/group/centos-sig-hyperscale -- GPG key: https://www.centos.org/keys/#hyperscale-sig -- Matrix room: https://matrix.to/#/#centos-hyperscale:fedoraproject.org +- Issue-only repo to coordinate SIG business: [pagure.io/centos-sig-hyperscale/sig](https://pagure.io/centos-sig-hyperscale/sig) +- ACL group on FAS/ACO: [accounts.centos.org/group/sig-hyperscale](https://accounts.centos.org/group/sig-hyperscale/) +- GitLab group: [gitlab.com/CentOS/Hyperscale](https://gitlab.com/CentOS/Hyperscale) +- Pagure group: [pagure.io/group/centos-sig-hyperscale](https://pagure.io/group/centos-sig-hyperscale) +- GPG key: [centos.org/keys](https://www.centos.org/keys/#hyperscale-sig) +- Matrix room: [#centos-hyperscale:fedoraproject.org](https://matrix.to/#/#centos-hyperscale:fedoraproject.org) # Communication