Difference between revisions of "Fedora-ARM,Dogfood - koji Hub"

From CDOT Wiki
Jump to: navigation, search
 
(141 intermediate revisions by the same user not shown)
Line 5: Line 5:
 
== Project Description ==
 
== Project Description ==
  
The Fedora-ARM koji system uese HongKong,an x86_64 system, as the Koji hub.
+
The Fedora-ARM koji system uese IRAQ,an x86_64 system, as the Koji hub.
  
 
The Fedora-ARM project to use ARM system as the Koji hub(this is called "Eating own dogfood" in the industry)
 
The Fedora-ARM project to use ARM system as the Koji hub(this is called "Eating own dogfood" in the industry)
Line 11: Line 11:
 
The project involves configuring the OpenRD-Client system as koji hub.
 
The project involves configuring the OpenRD-Client system as koji hub.
  
The [http://arm.koji.fedoraproject.org/koji/ Fedora ARM Koji system] is running. It is currently building F13 under the supervision of [http://paulfedora.wordpress.com/Paul Whalen] and [[User:Chris Tyler|Chris Tyler]]. Koji have 22 hardware ARM builders. I am in the progress of building Fedora 13 under IRAQ.
+
The [http://arm.koji.fedoraproject.org/koji/ Fedora ARM Koji system] is running. It is currently building F13 under the supervision of [http://paulfedora.wordpress.com/Paul Whalen] and [[User:Chris Tyler|Chris Tyler]]. Koji have 22 hardware ARM builders.
 +
I am in the progress of building Fedora 13 under IRAQ.
  
 
== Project Leader(s) ==
 
== Project Leader(s) ==
Line 22: Line 23:
  
 
== Project Details ==
 
== Project Details ==
Koji Authentication Selection
 
  
Koji primarily supports Kerberos and SSL Certificate authentication. For basic koji command line access, plain user/pass combinations are possible. However, kojiweb does '''not''' support plain user/pass authentication. Furthermore, once either Kerberos or SSL Certificate authentication is enabled so that kojiweb will work, the plain user/pass method will stop working entirely. As such plain user/pass authentication is a stop gap measure at best unless you intend to never setup a fully functional kojiweb instance. Deciding on how to authenticate users colors all the other actions you take in setting up koji so it's a decision best made up front.
+
Setting Up a Koji Build System
  
For Kerberos authentication, a working Kerberos environment (the user is assumed to either already have this or know how to set it up themselves, instructions for it are not included here) and the Kerberos credentials of the initial admin user will be necessary to bootstrap the user database.
+
The Koji components may live on separate resources as long as all resources are able to communicate.
 +
To understand koji configuration is an important in project.
  
 +
'''KOJI Configuration'''
  
 +
* SSL and authentication via certificates
 +
* Creating a database in PostgreSQL and importing a schema
 +
* Working with psql
 +
* Apache configuration
 +
* Koji web and Koji hub
  
  
  
 +
'''Packages'''
  
 +
On the server (koji-hub/koji-web)
 +
 +
* httpd
 +
* mod_ssl
 +
* postgresql-server
 +
* mod_python (>= 3.3.1 for Kerberos authentication)
 +
 +
On the builder (koji-builder)
 +
 +
* mock
 +
* rpm-build
 +
* createrepo
 +
 +
On the yum repository creation and maintenance (kojira)
 +
 +
On the Bootrapping the Koji build environment
 +
 +
* Importing packages and preparing Koji to run builds
 +
* External Repos and preparing Koji to run builds
  
 
== Project Plan ==
 
== Project Plan ==
  
 
Goals for each release:
 
Goals for each release:
* 0.1 - '''Koji Certificates'''
+
 
      Koji Hub setup - Certificates/security
+
'''release 0.1 - Koji Certificates '''  
* 0.2 - '''Koji Hub setup'''
+
 
      Koji Hub Setup- Configuration
+
'''setting up SSL Certificates for Authentication'''
* 0.3 - '''Koji Database'''
+
 
      Setting Up a Koji Build system with software.
+
* Certificate generation
 +
* Generate CA
 +
* Generate the koji component certificates and the admin certificate
 +
* Copy certificates into ~/.koji for kojiadmin
 +
 
 +
 
 +
 
 +
'''release 0.2 - PostgreSQL and koji hub'''
 +
 
 +
'''release 0.2-1'''
 +
 
 +
'''1.PostgreSQL Server'''
 +
 
 +
* Install PostgreSQL
 +
* Initialize PostgreSQL DB
 +
* Setup User Accounts
 +
* Setup PostgreSQL and populate schema
 +
* Authorize Koji-web and Koji-hub resources
 +
* Make auth changes live
 +
* SSL Certificate authentication
 +
* Give yourself admin permissions
 +
 
 +
 
 +
 
 +
'''release 0.2-2'''
 +
 
 +
'''2.Koji hub'''
 +
 
 +
* Install koji-hub
 +
* Required Configuration
 +
* Optional Configuration
 +
* SELinux Configuration
 +
* Koji filesystem skeleton
 +
 
 +
 
 +
* 0.3 - '''Koji Web'''
 +
 
 +
'''release 0.3-1'''
 +
 
 +
'''1. kojiweb '''
 +
 
 +
* Install Koji-Web
 +
* Required Configuration
 +
* Optional Configuration
 +
 
 +
'''2. Koji Builder'''
 +
 
 +
* Install kojid
 +
* Required Configuration
 +
* Optional Configuration (SSL certificates)
 +
* Add the host entry for the koji builder to the database
 +
* Add the host to the createrepo channel
 +
* A note on capacity
 +
* Start Kojid
 +
 
 +
'''3.kojira'''
 +
 
 +
* Install kojira
 +
* Required Configuration
 +
* Optional Configuration
 +
* Add the user entry for the kojira user
 +
* Start Kojira
 +
 
 +
 
 +
 
 +
'''release 0.3-2'''
 +
 
 +
'''2. Test kojiweb'''
 +
 
 +
* User account
 +
* Build packages
 +
 
 +
 
 +
 
 
== Project News ==
 
== Project News ==
  
1,November I will do Project Plan 0.1- I set up Koji Certificates.
+
1,November I will do Project Plan 0.1- I set up Koji Certificates
5.November I did build and create Koji Certifacation on IRAQ server.
 
  
 +
5,November I did build and create Koji Certifacation on IRAQ server.
 +
 +
19,November I set up Koji Database.
 +
 +
26,November Setting up Postgresql server for Koji part 1
 +
 +
6,Dec Setting up Postgresql server for Koji part two
 +
 +
16,Dev setting up Koji hub and Koji web,
 
== Resources ==
 
== Resources ==
  
 +
[http://zenit.senecac.on.ca/wiki/index.php/Fedora_Arm_Secondary_Architecture/Koji_Certificates How to get koji certificate?]
 +
 +
[http://zenit.senecac.on.ca/wiki/index.php/CDOT_Development_Systems Configuration of CDOT_Development system]
 +
 +
[http://fedoraproject.org/wiki/Koji How To Setting up and Using Koji on Fedora]
 +
 +
[http://developer.postgresql.org/pgdocs/postgres/index.html PostgreSQL9.1 devel Document]
  
[[Fedora Arm Secondary Architecture/Koji Certificates]]
+
[http://fedoraproject.org/wiki/Koji/ServerHowTo#PostgreSQL_Server PostgreSQL_Server]
  
[[CDOT Development Systems]]
+
[http://fedoraproject.org/wiki/Koji/ServerBootstrap importing packages and preparing Koji to run builds]
  
[http://fedoraproject.org/wiki/Koji HowTo Setting up and Using Koji on Fedora]
+
[http://fedoraproject.org/wiki/Koji/ExternalRepoServerBootstrap External Repos and preparing Koji to run builds]

Latest revision as of 08:17, 13 January 2011

Project Name

Fedora-ARM Dogfood -Koji Hub

Project Description

The Fedora-ARM koji system uese IRAQ,an x86_64 system, as the Koji hub.

The Fedora-ARM project to use ARM system as the Koji hub(this is called "Eating own dogfood" in the industry)

The project involves configuring the OpenRD-Client system as koji hub.

The Fedora ARM Koji system is running. It is currently building F13 under the supervision of Whalen and Chris Tyler. Koji have 22 hardware ARM builders. I am in the progress of building Fedora 13 under IRAQ.

Project Leader(s)

Young Chol Shon

Project Contributor(s)

No one contributed to this project

Project Details

Setting Up a Koji Build System

The Koji components may live on separate resources as long as all resources are able to communicate. To understand koji configuration is an important in project.

KOJI Configuration

  • SSL and authentication via certificates
  • Creating a database in PostgreSQL and importing a schema
  • Working with psql
  • Apache configuration
  • Koji web and Koji hub


Packages

On the server (koji-hub/koji-web)

  • httpd
  • mod_ssl
  • postgresql-server
  • mod_python (>= 3.3.1 for Kerberos authentication)

On the builder (koji-builder)

  • mock
  • rpm-build
  • createrepo

On the yum repository creation and maintenance (kojira)

On the Bootrapping the Koji build environment

  • Importing packages and preparing Koji to run builds
  • External Repos and preparing Koji to run builds

Project Plan

Goals for each release:

release 0.1 - Koji Certificates

setting up SSL Certificates for Authentication

  • Certificate generation
  • Generate CA
  • Generate the koji component certificates and the admin certificate
  • Copy certificates into ~/.koji for kojiadmin


release 0.2 - PostgreSQL and koji hub

release 0.2-1

1.PostgreSQL Server

  • Install PostgreSQL
  • Initialize PostgreSQL DB
  • Setup User Accounts
  • Setup PostgreSQL and populate schema
  • Authorize Koji-web and Koji-hub resources
  • Make auth changes live
  • SSL Certificate authentication
  • Give yourself admin permissions


release 0.2-2

2.Koji hub

  • Install koji-hub
  • Required Configuration
  • Optional Configuration
  • SELinux Configuration
  • Koji filesystem skeleton


  • 0.3 - Koji Web

release 0.3-1

1. kojiweb

  • Install Koji-Web
  • Required Configuration
  • Optional Configuration

2. Koji Builder

  • Install kojid
  • Required Configuration
  • Optional Configuration (SSL certificates)
  • Add the host entry for the koji builder to the database
  • Add the host to the createrepo channel
  • A note on capacity
  • Start Kojid

3.kojira

  • Install kojira
  • Required Configuration
  • Optional Configuration
  • Add the user entry for the kojira user
  • Start Kojira


release 0.3-2

2. Test kojiweb

  • User account
  • Build packages


Project News

1,November I will do Project Plan 0.1- I set up Koji Certificates

5,November I did build and create Koji Certifacation on IRAQ server.

19,November I set up Koji Database.

26,November Setting up Postgresql server for Koji part 1

6,Dec Setting up Postgresql server for Koji part two

16,Dev setting up Koji hub and Koji web,

Resources

How to get koji certificate?

Configuration of CDOT_Development system

How To Setting up and Using Koji on Fedora

PostgreSQL9.1 devel Document

PostgreSQL_Server

importing packages and preparing Koji to run builds

External Repos and preparing Koji to run builds