Hashing out the scope of work
Konstantin Ryabitsev <[email protected]> Wed, 24 Apr 2024 12:45:14 -0400
| Newsgroups | org.linuxfoundation.lists.cti-tac |
|---|---|
| Message-ID | <20240424-viridian-peccary-of-honor-4eaeed@meerkat> |
Hello, all:
This is the Scope of Work section of the larger Statement of Work document.
Please send any comments, adjustments, additions, or clarifications you would
like to see.
This SOW focuses on the migration primarily, and the tentative time frame is
through mid-2025.
Regards,
Konstantin
---
When choosing solutions and deploying services, the guiding principle is to
remain compliant with the [GNU Ethical Repository Criteria][1], Grade B. This
mandates exclusive use of Free Software and promotes open platforms over
proprietary hosting environments.
1. Mailing lists for decentralized patch-based development
a. LF will set up mailing list hosting under the lists.coretoolcain.dev
domain, using the following technology stack:
- postfix
- mlmmj
- public-inbox
b. For scalability and IP reputation reasons, LF will reuse its current
mailing list platform already deployed for Linux kernel development
(subspace.kernel.org).
c. Individual glibc mailing lists will be created on request and do not
require to be enumerated in this SOW.
d. Mailing list archives will be available either via lore.kernel.org, or a
dedicated coretoolchain.dev domain name, depending on project preferences.
2. Bug tracking software (Bugzilla)
a. LF will set up a bug tracking system using [Bugzilla Harmony][2]. This
will be a new, dedicated installation in the bugzilla.coretoolchain.dev
domain.
b. LF will work with the CTI leadership to properly configure the software
for use with the glibc project.
c. LF will work with the glibc community to offer the tooling to integrate
git repositories, mailing lists, and the bugtracker (e.g. using the
[bugspray][3] project).
3. Git repository hosting (Gitolite)
a. LF will set up the necessary glibc repositories reusing the existing
gitolite.coretoolchain.dev service.
b. LF will work with the CTI leadership to migrate existing repositories and
grant the necessary permissions.
c. LF will work with the glibc project community to analyze, port, and adapt
the existing set of [AdaCore][4] post-commit hooks to ensure that they
are functioning after the migration, or are replaced with suitable
alternatives if existing implementations cannot be used directly due to
security considerations or duplicating functionality provided in
Gitolite.
d. LF will set up mirroring and replication using [grokmirror][5] to offer
multiple redundant sites for git repository access.
4. Documentation repository and website (Sphinx)
a. LF will work with the glibc community to help migrate the wiki site from
[MoinMoin Wiki][6] to a set of restructured-text documents (e.g. using
[pandoc][7]).
b. LF will provide a publishing framework to automatically build and deploy
documentation to the dedicated docs website (exact domain name to be
established).
5. Static website (Sphinx)
a. LF will provide hosting for a separate static website for glibc (exact
domain name to be established).
b. LF will provide a mechanism to publish release tarballs and offer
downloads via the mirrors.kernel.org system of worldwide mirrors (already
provided via mirrors.kernel.org/gnu/glibc/).
6. Patch tracking services (Patchwork)
a. LF will deploy the latest version of Patchwork patch tracking software
under patchwork.coretoolchain.dev.
b. LF will set up automation and integration services between mailing lists,
patchwork, and git repositories (using [git-patchwork-bot][8]).
c. LF will work with the glibc community to set up projects and access as
appropriate.
7. Video conferencing (BigBlueButton)
a. LF will provide video conferencing to the project using [BigBlueButton][9]
(BBB), either with a 3rd-party provider or as a fully self-hosted service.
b. LF will work with the glibc project to set up conference rooms and access
as required.
[1]: https://www.gnu.org/software/repo-criteria.en.html
[2]: https://github.com/bugzilla/harmony
[3]: https://git.kernel.org/pub/scm/utils/bugspray/bugspray.git
[4]: https://github.com/AdaCore/git-hooks
[5]: https://git.kernel.org/pub/scm/utils/grokmirror/grokmirror.git
[6]: https://sourceware.org/glibc/wiki/HomePage
[7]: https://pandoc.org/
[8]: https://git.kernel.org/pub/scm/linux/kernel/git/mricon/korg-helpers.git/tree/git-patchwork-bot.py