CentOS CI Front end

The CentOS Project runs a public CI resource that is available to all infra and
infra related open source projects to come and consume. The problem is that the
signup process is very manual, both for the incoming user and the CICO admins.
We would like to have a web application that handles the login, account request,
Admin approval, and OKD project creation (from a template) steps and also
displays links to active CICO namespaces. Below is the detail of expectations
from a student.

  1. Perspective - contributor
    • Login page - ACO Authentication (Similar to FAS)
    • Dashboard (Displays active CICO namespace Read note [0])
    • Account request tab (has forms to input values)
      • Your Name
      • The project you are working with
      • Your Desired Username
      • Your Email Address
      • Your gpg pubkey

read more here to know about how CI SIG works

  1. Perspective - admin Read note [1]

    • Dashboard
      • View account requests with options to approve/reject
      • Option to download template generated from user's data to add new
        projects
  2. Access control

    • A simple way to sponsor/unsponsor admin who can approve/reject projects.

Notes

[0] Add in duffy view to have an API call that returns all the projects an
user is a part of. On GitHub, check centos/duffy

[1] When the admin approves a project, a link to download the yml file with
template to be used to create a new project Here is an example of template
file

[extra] Saving us the trouble of designing things from scratch && making the
code difficult to maintain, I would suggest usage of patternfly (with
framework of your choice).

---
# What namespace should we create for this group?
cico_project_name: testgroup

# Who gets project admin?
cico_project_members:
    - bstinson
    - siddharthvipul

# The original project request bug in bugs.centos.org
cico_bug_request: 12345

# Does this group self-manage their apps, or do we?
cico_self_managed: false

# Where do this group's pods run?
cico_node_selector: oci_kvm_hook=allowed
...

/ Vipul
/ [Fedora CI - CentOS CI] Infrastructure Team