=  User guide Communishift

The Communishift is a community
link:https://www.redhat.com/en/technologies/cloud-computing/openshift[OpenShift] instance hosted
by Fedora. It is meant to host PoC or test deployments for Fedora related projects.

== Request new namespace

To request a new namespace in Communishift go to
link:https://pagure.io/fedora-infrastructure/issues[Fedora Infrastructure ticket tracker], open a
new issue and use `communishift` template (look at the `Types` field).

If you need any help with your OpenShift project, please refer to official
link:https://docs.openshift.com/dedicated/welcome/index.html[OpenShift documentation].

With the namespace provided you will get following default resources:

* 1 CPU
* 1 Gi Memory (2 Gi limit)
* 5 Gi persistent storage

[NOTE]
====
Default resources were taken from communishift
link:https://pagure.io/fedora-infra/ansible/blob/main/f/roles/communishift/tasks/create-resource-quota.yml[ansible playbook].
====

== Accessing and using OpenShift

Once your ticket for a new communishift namespace has been approved, you will be added to a FAS group for your new namespace. This will grant your FAS account the ability to sign into the https://console-openshift-console.apps.fedora.cj14.p1.openshiftapps.com/[OpenShift Portal] to access your new namespace.

https://docs.openshift.com/dedicated/web_console/web-console.html[OpenShift web console documentation] is available if you are new to using the openshift web console and would like to read more about the platform.

== Removal of the projects

All the projects on Communishift will be deleted every Fedora Linux release (6 months). If you need
more than 6 months for your project, please open a ticket on
link:https://pagure.io/fedora-infrastructure/issues[Fedora Infrastructure ticket tracker] and explain
why your project should not be deleted.

== Request for additional resources

There is a quota set per project. In case you need additional resources for your project please
open a ticket on
link:https://pagure.io/fedora-infrastructure/issues[Fedora Infrastructure ticket tracker] with
information about how much resources you need and why you need them.

== Service usage requirements

Following is the list of requirements you need to meet with your project to be allowed to have it
on Communishift. If the project violates any of those requirements it will rejected and in case it's already
running in Communishift it will be deleted.

. No malicious software
+
Don't use the namespace to host malicious service.
+
. Project needs to have some relation to Fedora project
+
Your project needs to be related to Fedora project. It could be either proof of concept for new Fedora
service, test deployment for new Fedora service or some service that could be useful for Fedora community.
+
. No violation of community policies or code of conduct
+
Your project needs to adhere to link:https://docs.fedoraproject.org/en-US/legal/[Fedora community policies]
and link:https://docs.fedoraproject.org/en-US/project/code-of-conduct/[Fedora Code of Conduct].
+
. Do not store or handle personal data on Communishift instance
+
We as Fedora are obligated to follow GDPR related requests and we don't have a way to do that in community
managed services. If your service demands to work with user data for any reason, please use FAS for authentication
and don't store anything on Communishift side.

Note that this list is not exhaustive, there may be other reasons we disable or delete your application,
but we will make every effort to communicate with you about any such actions.
