OpenShift Gogs: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
(12 intermediate revisions by the same user not shown)
Line 5: Line 5:
=Installation=
=Installation=


The installation assumes that a Postgres instance was deployed already following the procedure specified here [[OpenShift Postgres#Installation|OpenShift Postgresql Installation]] and it is functional.


* Use the template https://github.com/NovaOrdis/playground/blob/master/openshift/auxiliary-tools/gogs/gogs.yaml. It is based on https://github.com/OpenShiftDemos/openshift-cd-demo/blob/ocp-3.6/cicd-template.yaml
The following command line should have been used:
[[oc process]] -f ./generic-postgresql.yaml \
  --param APPLICATION_NAME=gogs \
  --param POSTGRESQL_USER=gogs \
  --param POSTGRESQL_PASSWORD=... \
  --param POSTGRESQL_DATABASE=gogs \
| [[oc create]] -f -


The template will create the OpenShift objects required by a Gogs repository and the Postgres dependency pod.
Use the template available at https://github.com/NovaOrdis/playground/blob/master/openshift/auxiliary-tools/gogs.yaml. It is based on https://github.com/OpenShiftDemos/openshift-cd-demo/blob/ocp-3.6/cicd-template.yaml.


* Replace the conventional password value in the template with something safer:
Execute it as follows:


  ...
  [[oc process]] -f ./gogs.yaml \
parameters:
  --param GOGS_PASSWORD=... \
  - description: Password for the Gogs user.
  --param GOGS_ADMIN_EMAIL=... \
  displayName: Gogs Password
  | [[oc create]] -f -
  value: <font color=DarkOrange>password</font>
 
  name: GOGS_PASSWORD
 
  required: true
Update the readiness probe, now that the Gogs database has been created. In the 'gogs-postgresql' deployment configuration, under the liveness probe, add:
  ...
 
<pre>
        readinessProbe:
          exec:
            command:
            - /bin/sh
            - -i
            - -c
            - psql -h 127.0.0.1 -U gogs -q -d gogs -c 'SELECT 1'
          failureThreshold: 3
          initialDelaySeconds: 5
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 1
</pre>
 
=Uninstallation=
 
Delete the config maps: 'gogs-config', 'gogs-install'.
 
Delete the persistent volume claims 'gogs-config' and 'gogs-config', and [[OpenShift_PersistentVolume_Operations#Unbind_a_Pod_from_the_Volume|re-make the persistent volumes available]].
 
Delete:
 
is/gogs
dc/gogs
  rc/gogs-1
routes/gogs
svc/gogs
po/gogs-1-*

Revision as of 05:34, 25 November 2017

Internal

Installation

The installation assumes that a Postgres instance was deployed already following the procedure specified here OpenShift Postgresql Installation and it is functional.

The following command line should have been used:

oc process -f ./generic-postgresql.yaml \
 --param APPLICATION_NAME=gogs \
 --param POSTGRESQL_USER=gogs \
 --param POSTGRESQL_PASSWORD=... \
 --param POSTGRESQL_DATABASE=gogs \
| oc create -f -

Use the template available at https://github.com/NovaOrdis/playground/blob/master/openshift/auxiliary-tools/gogs.yaml. It is based on https://github.com/OpenShiftDemos/openshift-cd-demo/blob/ocp-3.6/cicd-template.yaml.

Execute it as follows:

oc process -f ./gogs.yaml \
 --param GOGS_PASSWORD=... \
 --param GOGS_ADMIN_EMAIL=... \
| oc create -f -


Update the readiness probe, now that the Gogs database has been created. In the 'gogs-postgresql' deployment configuration, under the liveness probe, add:

        readinessProbe:
          exec:
            command:
            - /bin/sh
            - -i
            - -c
            - psql -h 127.0.0.1 -U gogs -q -d gogs -c 'SELECT 1'
          failureThreshold: 3
          initialDelaySeconds: 5
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 1

Uninstallation

Delete the config maps: 'gogs-config', 'gogs-install'.

Delete the persistent volume claims 'gogs-config' and 'gogs-config', and re-make the persistent volumes available.

Delete:

is/gogs
dc/gogs
rc/gogs-1
routes/gogs
svc/gogs
po/gogs-1-*