= What Can I Do For Fedora SOP

== Contents

[arabic]
* <<_contact_information>>
* <<_introduction>>
* <<_deployment>>
* <<_initial_deployment>>
* <<_logs>>

== Contact Information

Owner::
  sysadmin-main
Contact::
  #fedora-admin, #fedora-noc or admin@fedoraproject.org
Location::
  Openshift
Public addresses::
  * whatcanidoforfedora.org
  * stg.whatcanidoforfedora.org
Server(s)::
  * os.fedoraproject.org
  * os.stg.fedoraproject.org
Purpose::
  To explain the overall function of the whatCanIDoForFedora webpage..
  including some back story, how to build your own, and site navigation.

== Introduction

The 'What Can I Do For Fedora' (https://whatcanidoforfedora.org) page was the
brainchild of Ralph Bean after getting inspiration from
'whatcanidoformozilla.org' created by Josh Matthews, Henri Koivuneva and
a few others. Ralph wanted to make the whatcanidoforfedora (wcidff) as
configurable as possible. The purpose of this site is to assist, in as
user friendly a way as possible, new and prospective community members
and help them realize what skills they may posess that can be helpful
for the Fedora Project.

== Deployment

The application deployment is managed from the github repository using
the 'staging' and 'production' branch to deploy a new version.

For example a new deployment to staging would look like that:

....
git clone git@github.com:fedora-infra/asknot-ng.git
cd asknot-ng
git checkout staging
git rebase develop
git push origin staging
....

The github repository has a webhook configured to send the push
informations to our Openshift instance. Once Openshift receives the
webhook requests it will trigger a new build of the using the
repository's
https://github.com/fedora-infra/asknot-ng/blob/develop/Dockerfile[Dockerfile].

The 'asknot-ng' container runs Apache HTTP web server and the
configuration is store in the
https://github.com/fedora-infra/asknot-ng/tree/develop/container[git
repository].

== Initial Deployment

The following playbook is used to create the initial Openshift project
with the correct configuration:

....
sudo rbac-playbook openshift-apps/asknot.yml
....

== Logs

Logs can be retrive by accessing the
https://os.fedoraproject.org[Openshift webconsole] or by using the
openshift command line:

....
$ oc login os-master01.iad2.fedoraproject.org
You must obtain an API token by visiting https://os.fedoraproject.org/oauth/token/request

$ oc login os-master01.iad2.fedoraproject.org --token=<Your token here>
$ oc -n asknot get pods
asknot-28-bfj52          1/1       Running     522        28d
$ oc logs asknot-28-bfj52
....
