Skip to content

Commit

Permalink
Doc on gh.io: try again to enable the cayman theme
Browse files Browse the repository at this point in the history
Change-Id: Ie0ee97de2ce9277fd17faac69354bc5ebdfd8d92
  • Loading branch information
mhuin committed Oct 6, 2023
1 parent f5158db commit b0a6aca
Show file tree
Hide file tree
Showing 5 changed files with 130 additions and 128 deletions.
37 changes: 0 additions & 37 deletions CONTRIBUTING.md

This file was deleted.

1 change: 1 addition & 0 deletions CONTRIBUTING.md
88 changes: 0 additions & 88 deletions README.md

This file was deleted.

1 change: 1 addition & 0 deletions README.md
1 change: 0 additions & 1 deletion doc/README.md

This file was deleted.

88 changes: 88 additions & 0 deletions doc/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
# SF-Operator: a Zuul-based CI infrastructure for OpenShift

<a href="https://zuul-ci.org" ><img src ="https://zuul-ci.org/gated.svg" /></a>
<a href="https://softwarefactory-project.io/zuul/t/local/buildsets?project=software-factory%2Fsf-operator&pipeline=post&skip=0" ><img src="https://softwarefactory-project.io/zuul/api/tenant/local/badge?project=software-factory/sf-operator&pipeline=post" /></a>
<a href="https://matrix.to/#/#softwarefactory-project:matrix.org"><img src="https://img.shields.io/badge/matrix-%23softwarefactory--project-8A2BE2" alt="Matrix Channel" /></a>
<a href="https://github.com/softwarefactory-project/sf-operator/tags" ><img src="https://img.shields.io/github/v/tag/softwarefactory-project/sf-operator" /></a>
<img src="https://img.shields.io/badge/project%20status-ALPHA-FF2060" alt="Testing only; use in production at your own risks" />

## About

SF-Operator is an Operator that simplifies the deployment and operation of [Zuul](https://zuul-ci.org) and its dependencies (NodePool, Zookeeper, MariaDB, Log Server) on the OpenShift Container Platform.

It is the natural evolution of the [Software Factory project](https://softwarefactory-project.io): the 3.8.x release of Software Factory saw the containerization of every major service, but was still delivered as RPM packages, in the form of a custom CentOS 7 distribution.
SF-Operator builds upon this containerization effort to move from a distro-centric approach to a cloud-native deployment.
This is also an opportunity to focus on the leanest service suite needed to provide a working gated CI infrastructure; hence a scope reduced to Zuul and its dependencies only.

SF-Operator is built mostly in Go upon the [Operator Framework](https://operatorframework.io), with the aim of reaching the highest capability level that can be achieved, in order to bring a modern, scalable gated CI alternative to OpenShift users, with the least friction from operation as possible.

Furthermore, SF-Operator takes advantage of some of the specificities of OpenShift as a container orchestration platform:

* Improved routes API
* Integration with OLM for streamlined operator and operands' lifecycle management
* If [enabled in OpenShift](https://docs.openshift.com/container-platform/4.13/monitoring/enabling-monitoring-for-user-defined-projects.html#enabling-monitoring-for-user-defined-projects), SF-Operator comes with default monitoring and alerting configurations that can be used out of the box. The default alerting rules are honed from years of maintaining and running several large Zuul deployments at scale for [Fedora](https://fedora.softwarefactory-project.io/zuul/status), [Ansible](https://ansible.softwarefactory-project.io/zuul/status) and [RDO](https://review.rdoproject.org/zuul/status).
* If [enabled](https://docs.openshift.com/container-platform/4.13/logging/cluster-logging.html), OpenShift provides application logs aggregation with its logging subsystem out of the box.

Finally, we also provide a Command Line Interface (CLI) called sfconfig to simplify common tasks related to the operator, management of the operands, development and testing.

## Status

The current project status is: **Alpha - NOT PRODUCTION READY**

## Capability Levels

* Level 1 - Basic Install - **8/10**
- Zuul Scheduler: ✅
- Zuul Executor: ✅
- Zuul Web: ✅
- Zuul Merger: ❌
- Nodepool Launcher: ✅
- Nodepool Builder: ❌
- Zookeeper: ✅
- MariaDB: ✅
- Log Server: ✅
- Internal Config Repository, bootstrapped pipelines and default jobs: ✅
* Level 2 - Seamless upgrades - **2/2**
- Operator: ✅
- Operands: ✅
* Level 3 - Full Lifecycle - **1/5**
- SF 3.8.x migration ❌
- Backup: ❌
- Restore: ❌
- Rolling deployments: ❌
- Reconfiguration: ✅
* Level 4 - Deep Insights - **1/3**
- Operator metrics: ❌
- Operand metrics: ✅
- Alerts: ❌ (WIP)
* Level 5 - Auto pilot - **0/3**
- Auto-scaling : ❌
- Auto-healing: ❌
- Auto-tuning: ❌

## Getting Started

* [Installing the Operator ](https://softwarefactory-project.github.io/sf-operator/operator/getting_started.html)
* [Deploying Zuul and dependencies with SF-Operator](https://softwarefactory-project.github.io/sf-operator/deployment/getting_started.html)

## Documentation

* [Operator documentation](https://softwarefactory-project.github.io/sf-operator/operator/): for OpenShift cluster administrators, this documentation covers installing SF-Operator and managing the operator's lifecycle.
* [Deployment documentation](https://softwarefactory-project.github.io/sf-operator/deployment/): this documentation covers the essentials for people or teams who intend to deploy and manage Zuul and its dependencies through the SF-Operator.
* [Developer documentation](https://softwarefactory-project.github.io/sf-operator/developer/): this documentation describes how to set up a development and testing environment to develop the SF-Operator.
* [CLI refererence](https://softwarefactory-project.github.io/sf-operator/cli/)
## Getting Help

Should you have any questions or feedback concerning the SF-Operator, you can:

* [Join our Matrix channel](https://matrix.to/#/#softwarefactory-project:matrix.org)
* Send an email to [softwarefactory-dev@redhat.com](softwarefactory-dev@redhat.com)
* [File an issue](https://github.com/softwarefactory-project/sf-operator/issues/new) for bugs and feature suggestions

## Contributing

Refer to [CONTRIBUTING.md](https://github.com/softwarefactory-project/sf-operator/blob/master/CONTRIBUTING.md).

## Licence

Sf-operator is distributed under the [Apache License](https://www.apache.org/licenses/LICENSE-2.0.txt).
4 changes: 3 additions & 1 deletion doc/_config.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# theme: cayman
remote_theme: pages-themes/cayman@v0.2.0
plugins:
- jekyll-remote-theme
source: doc/
exclude:
- adr/adr-template.md
1 change: 0 additions & 1 deletion doc/developer/CONTRIBUTING.md

This file was deleted.

37 changes: 37 additions & 0 deletions doc/developer/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# Contributing

We welcome all contributions to the project!

General guidelines about contributing to the SF-Operator can be found in this document.
For further details about the code base, testing and hacking the project, please see
the [Developer documentation](doc/developer/index.md).

## Project repositories

The main repository of the project is hosted at [softwarefactory-project.io](https://softwarefactory-project.io/r/software-factory/sf-operator).

The custom container images used by the SF-Operator are defined in the [container-pipeline project](https://softwarefactory-project.io/r/containers) and
published on [quay.io](https://quay.io/organization/software-factory).

Use the [git-review workflow](https://softwarefactory-project.io/docs/user/contribute.html#create-a-new-code-review) to interact with these projects.

Repositories with the same name on GitHub are mirrors from **softwarefactory-project.io**, no pull request will be accepted there.

The MicroShift deployment Ansible role is hosted on [GitHub](https://github.com/openstack-k8s-operators/ansible-microshift-role). Pull Requests are welcome there.

## Architectural Decision Records (ADRs)

Any large contribution aiming to modify or implement a functionality must be first validated by the community with
an *[Architectural Decision Record](https://adr.github.io/) (ADR)*.

ADRs can be created following the [template found in the docs/adr](doc/adr/adr-template.md) directory of
the sf-operator repository.

## Review Checklist

Before submitting a change or a patch chain for review, please consider the following checklist:

1. Are the commit messages clear and explanatory?
1. Do the changes need to be documented in the changelog?
1. Do the changes cover any required modification of the existing documentation?
1. Are the changes tested? We do not require unit testing but do expect functional testing coverage.

0 comments on commit b0a6aca

Please sign in to comment.