2bc72c2
@@ -0,0 +1,23 @@
+ apiVersion: v1
+ kind: List
+ items:
+ - apiVersion: project.openshift.io/v1
+ kind: ProjectRequest
+ metadata:
+ name: fedora-documentation-build
+ creationTimestamp: null
+ displayName: Fedora Documentation - Build
+ name: fedora-documentation-stage
+ displayName: Fedora Documentation - Stage
+ name: fedora-documentation-prod
+ labels:
+ environment: production
+ displayName: Fedora Documentation - Prod
@@ -0,0 +1,35 @@
+ # CI/CD for Fedora Docs
+ Instructions on enabling continuous integration and development for the Fedora documentation website.
+
+ ### 1. Create Lifecycle Stages
+ There are three stages for the application to be promoted through:
+ * fedora-documentation-build
+ * fedora-documentation-stage
+ * fedora-documentation-prod
+ Use the YAML that defines project requests to quickly create application
+ ```
+ $ oc create -f .openshift/projects/projects.yml
+ project.project.openshift.io/fedora-documentation-build created
+ project.project.openshift.io/fedora-documentation-stage created
+ project.project.openshift.io/fedora-documentation-prod created
+ ### 2. Start up Jenkins master
+ $ oc process openshift//jenkins-persistent | oc apply -f- -n fedora-documentation-build
+ route.route.openshift.io/jenkins created
+ persistentvolumeclaim/jenkins created
+ deploymentconfig.apps.openshift.io/jenkins created
+ serviceaccount/jenkins created
+ rolebinding.authorization.openshift.io/jenkins_edit created
+ service/jenkins-jnlp created
+ service/jenkins created
+ ### Cleanup
+ `$ oc delete project fedora-documentation-build fedora-documentation-stage fedora-documetation-prod`
+ ### Reference
+ [Red Hat Communities of Practice](https://github.com/redhat-cop/container-pipelines/tree/master/basic-spring-boot)
@@ -0,0 +1,8 @@
+ # This is the Ansible Galaxy requirements file to pull in the correct roles
+ # to support the operation of CASL provisioning/runs.
+ # From 'openshift-applier'
+ - name: openshift-applier
+ scm: git
+ src: https://github.com/redhat-cop/openshift-applier
+ version: v2.1.1
Signed-off-by: Richard Gregory richardgrecoson@gmail.com
@pingou @sfinn @siddharthvipul1 @pbokoc
is this a good place to suggest CI test? (I'll move it to some other place if needed)
this python3 tool could be used to detect 404 links: https://github.com/linkchecker/linkchecker I ran it and here are the results: English: 26 links with error 404 French: 266 links with error 404
Main reason to these errors, hard codded links "https://docs.fedoraproject.org/*" instead of Antora links: https://docs.antora.org/antora/2.3/navigation/xrefs-and-link-text/ Secondary reason: moved/renamed pages
I'm unsure testing localized content is needed, a simple linter would probably do the job. Each localized content is 2200 pages to scan. It's costly.
Most likely not yet but @richardgreg will likely keep these ideas in mind ;-)
@richardgreg I'm going to confirm this first, but we'll likely want to run the CI jobs in the Fedora infrastructure's openshift where each project is deployed via ansible. You can find some examples of projects deployed there at: https://pagure.io/fedora-infra/ansible/blob/master/f/playbooks/openshift-apps (and their corresponding roles: https://pagure.io/fedora-infra/ansible/blob/master/f/roles/openshift-apps )
So we'll likely need to adjust this a bit before submitting it to the ansible repo. The idea is that everything is deployed by ansible, so there nothing to do manually if we ever need to migrate the project to another cluster or need to rebuild it from scratch. Does this make sense to you?
@richardgreg I'm going to confirm this first, but we'll likely want to run the CI jobs in the Fedora infrastructure's openshift where each project is deployed via ansible. You can find some examples of projects deployed there at: https://pagure.io/fedora-infra/ansible/blob/master/f/playbooks/openshift-apps (and their corresponding roles: https://pagure.io/fedora-infra/ansible/blob/master/f/roles/openshift-apps ) So we'll likely need to adjust this a bit before submitting it to the ansible repo. The idea is that everything is deployed by ansible, so there nothing to do manually if we ever need to migrate the project to another cluster or need to rebuild it from scratch. Does this make sense to you?
Alright. I'm looking into it.
Hi @pingou, do you have an idea which example in the ansible projects most likely resembles what we want to achieve?
Considering we're not deploying in the Openshift instance of the Fedora infrastructure, we can do things differently. The only requirement being to be able to re-deploy fully from scratch.
Oh right. We've moved to CentOS CI
Hi @pingou, do you have an idea which example in the ansible projects most likely resembles what we want to achieve? Considering we're not deploying in the Openshift instance of the Fedora infrastructure, we can do things differently. The only requirement being to be able to re-deploy fully from scratch.
I know we went through an overview of how to proceed from start to finish in the last meeting. I did not take notes quickly enough. Maybe go over it one more time or @siddharthvipul1 can chime in? Thanks :)
Does the location of the CI impacts the existing Openshift projects?
Docs build are through Openshift.
Not really, one is CI so temporary/throw-away for PRs while the links you're giving are about the official build of the doc
@pingou so I found out about VM templates and I wish to use it to build the docs. I'm going to need a PVC in the namespace to try it out. What are your thoughts?
@siddharthvipul1 any thought on this ^?
so I found out about VM templates and I wish to use it to build the docs
That part confuses me a little though, don't we want to use containers?
I have had a discussion with Richard. He can ping me anytime or open a ticket on centos-infra for pvc and I can issue one. Also, I agree with you about usage of containers for less load on infra but at this point let's see something working (if vm works, vm it is) :)
Turns out it's better that the configurations have its own repo at least for now https://pagure.io/fedora-docs-cicd
Le 2021-01-20 15:45, Richard Gregory a écrit :
Turns out it's better that the configurations have its own repo https://pagure.io/fedora-docs-cicd
Could you please move it to "fedora-docs" namespace so we can easily find it in https://pagure.io/projects/fedora-docs/%2A ?
Le 2021-01-20 15:45, Richard Gregory a écrit : Turns out it's better that the configurations have its own repo https://pagure.io/fedora-docs-cicd Could you please move it to "fedora-docs" namespace so we can easily find it in https://pagure.io/projects/fedora-docs/%2A ?
I take this can only be done during the creation of a new project, right?
Le 2021-01-21 15:31, Richard Gregory a écrit :
no idea
but if that's the case, just create a new project, add it as a remote and push, should work fine. then remove the old project
Okay. Here it is, https://pagure.io/fedora-docs/fedora-docs-ci
Signed-off-by: Richard Gregory richardgrecoson@gmail.com