Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[enterprise-4.3] Edit suggested in file rest_api/index.adoc #19301

Open
alanconway opened this issue Jan 24, 2020 · 23 comments
Open

[enterprise-4.3] Edit suggested in file rest_api/index.adoc #19301

alanconway opened this issue Jan 24, 2020 · 23 comments
Assignees
Labels
branch/enterprise-4.7 lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.

Comments

@alanconway
Copy link

Which section(s) is the issue in?

REST API reference documentation

What needs fixing?

I can't find API reference docs for the openshift logging APIs (e.g. ClusterLogging)

Places I looked:

Suggestions:

  • Ensure all APIs are included in the reference section
  • Add a heading to each namespace group in the API list, to separate them visually.
  • Add a search box for APIs by simple name (find in all namespaces)
  • Link from all mentions of an API to its reference entry (should be automatable for mentionds in yaml samples)
@jboxman jboxman self-assigned this Jan 24, 2020
@jboxman
Copy link
Contributor

jboxman commented Jun 19, 2020

@alanconway, I've completely redesigned this, and expect to have the result merged by the end of July at the latest.

@alanconway
Copy link
Author

Cool! On a separate note - I'd like to generate some local docs in the logging repo to reflect the state of our current development - not intended for release, just our own convenience. I'm considering https://github.com/elastic/crd-ref-docs - any other suggestions?

@jboxman
Copy link
Contributor

jboxman commented Jun 22, 2020

@alanconway, you could look at what Prometheus Operator uses, but it might be the same tool. I'm not sure. Given the enormous size of the OpenAPI file, I rolled my own tool, so I'm not familiar with the available choices.

@jboxman
Copy link
Contributor

jboxman commented Jul 15, 2020

@alanconway, I've completed my latest iteration. I'm not familiar with a ClusterLogging API; What API group is that part of? The current APIs in an ordinary installation of OCP are here under API reference:

https://docs.openshift.com/container-platform/4.5/rest_api/objects/index.html

@alanconway
Copy link
Author

Group is logging.openshift.io, the YAML source is at https://github.com/openshift/cluster-logging-operator/tree/master/manifests/4.6
Let me know if you need more info.

@alanconway
Copy link
Author

FYI @mburke5678

@jboxman
Copy link
Contributor

jboxman commented Jul 22, 2020

@alanconway, if it isn't in the OpenAPI spec for the standard build of OCP, I can't generate docs for it. Is this only in 4.6? This is what is exposed in 4.5:

NAME                                  SHORTNAMES       APIGROUP                              NAMESPACED   KIND
bindings                                                                                     true         Binding
componentstatuses                     cs                                                     false        ComponentStatus
configmaps                            cm                                                     true         ConfigMap
endpoints                             ep                                                     true         Endpoints
events                                ev                                                     true         Event
limitranges                           limits                                                 true         LimitRange
namespaces                            ns                                                     false        Namespace
nodes                                 no                                                     false        Node
persistentvolumeclaims                pvc                                                    true         PersistentVolumeClaim
persistentvolumes                     pv                                                     false        PersistentVolume
pods                                  po                                                     true         Pod
podtemplates                                                                                 true         PodTemplate
replicationcontrollers                rc                                                     true         ReplicationController
resourcequotas                        quota                                                  true         ResourceQuota
secrets                                                                                      true         Secret
serviceaccounts                       sa                                                     true         ServiceAccount
services                              svc                                                    true         Service
mutatingwebhookconfigurations                          admissionregistration.k8s.io          false        MutatingWebhookConfiguration
validatingwebhookconfigurations                        admissionregistration.k8s.io          false        ValidatingWebhookConfiguration
customresourcedefinitions             crd,crds         apiextensions.k8s.io                  false        CustomResourceDefinition
apiservices                                            apiregistration.k8s.io                false        APIService
controllerrevisions                                    apps                                  true         ControllerRevision
daemonsets                            ds               apps                                  true         DaemonSet
deployments                           deploy           apps                                  true         Deployment
replicasets                           rs               apps                                  true         ReplicaSet
statefulsets                          sts              apps                                  true         StatefulSet
deploymentconfigs                     dc               apps.openshift.io                     true         DeploymentConfig
tokenreviews                                           authentication.k8s.io                 false        TokenReview
localsubjectaccessreviews                              authorization.k8s.io                  true         LocalSubjectAccessReview
selfsubjectaccessreviews                               authorization.k8s.io                  false        SelfSubjectAccessReview
selfsubjectrulesreviews                                authorization.k8s.io                  false        SelfSubjectRulesReview
subjectaccessreviews                                   authorization.k8s.io                  false        SubjectAccessReview
clusterrolebindings                                    authorization.openshift.io            false        ClusterRoleBinding
clusterroles                                           authorization.openshift.io            false        ClusterRole
localresourceaccessreviews                             authorization.openshift.io            true         LocalResourceAccessReview
localsubjectaccessreviews                              authorization.openshift.io            true         LocalSubjectAccessReview
resourceaccessreviews                                  authorization.openshift.io            false        ResourceAccessReview
rolebindingrestrictions                                authorization.openshift.io            true         RoleBindingRestriction
rolebindings                                           authorization.openshift.io            true         RoleBinding
roles                                                  authorization.openshift.io            true         Role
selfsubjectrulesreviews                                authorization.openshift.io            true         SelfSubjectRulesReview
subjectaccessreviews                                   authorization.openshift.io            false        SubjectAccessReview
subjectrulesreviews                                    authorization.openshift.io            true         SubjectRulesReview
horizontalpodautoscalers              hpa              autoscaling                           true         HorizontalPodAutoscaler
clusterautoscalers                    ca               autoscaling.openshift.io              false        ClusterAutoscaler
machineautoscalers                    ma               autoscaling.openshift.io              true         MachineAutoscaler
cronjobs                              cj               batch                                 true         CronJob
jobs                                                   batch                                 true         Job
buildconfigs                          bc               build.openshift.io                    true         BuildConfig
builds                                                 build.openshift.io                    true         Build
certificatesigningrequests            csr              certificates.k8s.io                   false        CertificateSigningRequest
credentialsrequests                                    cloudcredential.openshift.io          true         CredentialsRequest
apiservers                                             config.openshift.io                   false        APIServer
authentications                                        config.openshift.io                   false        Authentication
builds                                                 config.openshift.io                   false        Build
clusteroperators                      co               config.openshift.io                   false        ClusterOperator
clusterversions                                        config.openshift.io                   false        ClusterVersion
consoles                                               config.openshift.io                   false        Console
dnses                                                  config.openshift.io                   false        DNS
featuregates                                           config.openshift.io                   false        FeatureGate
images                                                 config.openshift.io                   false        Image
infrastructures                                        config.openshift.io                   false        Infrastructure
ingresses                                              config.openshift.io                   false        Ingress
networks                                               config.openshift.io                   false        Network
oauths                                                 config.openshift.io                   false        OAuth
operatorhubs                                           config.openshift.io                   false        OperatorHub
projects                                               config.openshift.io                   false        Project
proxies                                                config.openshift.io                   false        Proxy
schedulers                                             config.openshift.io                   false        Scheduler
consoleclidownloads                                    console.openshift.io                  false        ConsoleCLIDownload
consoleexternalloglinks                                console.openshift.io                  false        ConsoleExternalLogLink
consolelinks                                           console.openshift.io                  false        ConsoleLink
consolenotifications                                   console.openshift.io                  false        ConsoleNotification
consoleyamlsamples                                     console.openshift.io                  false        ConsoleYAMLSample
leases                                                 coordination.k8s.io                   true         Lease
endpointslices                                         discovery.k8s.io                      true         EndpointSlice
events                                ev               events.k8s.io                         true         Event
ingresses                             ing              extensions                            true         Ingress
flowschemas                                            flowcontrol.apiserver.k8s.io          false        FlowSchema
prioritylevelconfigurations                            flowcontrol.apiserver.k8s.io          false        PriorityLevelConfiguration
images                                                 image.openshift.io                    false        Image
imagesignatures                                        image.openshift.io                    false        ImageSignature
imagestreamimages                     isimage          image.openshift.io                    true         ImageStreamImage
imagestreamimports                                     image.openshift.io                    true         ImageStreamImport
imagestreammappings                                    image.openshift.io                    true         ImageStreamMapping
imagestreams                          is               image.openshift.io                    true         ImageStream
imagestreamtags                       istag            image.openshift.io                    true         ImageStreamTag
imagetags                             itag             image.openshift.io                    true         ImageTag
configs                                                imageregistry.operator.openshift.io   false        Config
imagepruners                                           imageregistry.operator.openshift.io   false        ImagePruner
dnsrecords                                             ingress.operator.openshift.io         true         DNSRecord
network-attachment-definitions        net-attach-def   k8s.cni.cncf.io                       true         NetworkAttachmentDefinition
machinehealthchecks                   mhc,mhcs         machine.openshift.io                  true         MachineHealthCheck
machines                                               machine.openshift.io                  true         Machine
machinesets                                            machine.openshift.io                  true         MachineSet
containerruntimeconfigs               ctrcfg           machineconfiguration.openshift.io     false        ContainerRuntimeConfig
controllerconfigs                                      machineconfiguration.openshift.io     false        ControllerConfig
kubeletconfigs                                         machineconfiguration.openshift.io     false        KubeletConfig
machineconfigpools                    mcp              machineconfiguration.openshift.io     false        MachineConfigPool
machineconfigs                        mc               machineconfiguration.openshift.io     false        MachineConfig
baremetalhosts                        bmh,bmhost       metal3.io                             true         BareMetalHost
provisionings                                          metal3.io                             false        Provisioning
nodes                                                  metrics.k8s.io                        false        NodeMetrics
pods                                                   metrics.k8s.io                        true         PodMetrics
storagestates                                          migration.k8s.io                      false        StorageState
storageversionmigrations                               migration.k8s.io                      false        StorageVersionMigration
alertmanagers                                          monitoring.coreos.com                 true         Alertmanager
podmonitors                                            monitoring.coreos.com                 true         PodMonitor
prometheuses                                           monitoring.coreos.com                 true         Prometheus
prometheusrules                                        monitoring.coreos.com                 true         PrometheusRule
servicemonitors                                        monitoring.coreos.com                 true         ServiceMonitor
thanosrulers                                           monitoring.coreos.com                 true         ThanosRuler
clusternetworks                                        network.openshift.io                  false        ClusterNetwork
egressnetworkpolicies                                  network.openshift.io                  true         EgressNetworkPolicy
hostsubnets                                            network.openshift.io                  false        HostSubnet
netnamespaces                                          network.openshift.io                  false        NetNamespace
operatorpkis                                           network.operator.openshift.io         true         OperatorPKI
ingressclasses                                         networking.k8s.io                     false        IngressClass
ingresses                             ing              networking.k8s.io                     true         Ingress
networkpolicies                       netpol           networking.k8s.io                     true         NetworkPolicy
runtimeclasses                                         node.k8s.io                           false        RuntimeClass
oauthaccesstokens                                      oauth.openshift.io                    false        OAuthAccessToken
oauthauthorizetokens                                   oauth.openshift.io                    false        OAuthAuthorizeToken
oauthclientauthorizations                              oauth.openshift.io                    false        OAuthClientAuthorization
oauthclients                                           oauth.openshift.io                    false        OAuthClient
authentications                                        operator.openshift.io                 false        Authentication
configs                                                operator.openshift.io                 false        Config
consoles                                               operator.openshift.io                 false        Console
csisnapshotcontrollers                                 operator.openshift.io                 false        CSISnapshotController
dnses                                                  operator.openshift.io                 false        DNS
etcds                                                  operator.openshift.io                 false        Etcd
imagecontentsourcepolicies                             operator.openshift.io                 false        ImageContentSourcePolicy
ingresscontrollers                                     operator.openshift.io                 true         IngressController
kubeapiservers                                         operator.openshift.io                 false        KubeAPIServer
kubecontrollermanagers                                 operator.openshift.io                 false        KubeControllerManager
kubeschedulers                                         operator.openshift.io                 false        KubeScheduler
kubestorageversionmigrators                            operator.openshift.io                 false        KubeStorageVersionMigrator
networks                                               operator.openshift.io                 false        Network
openshiftapiservers                                    operator.openshift.io                 false        OpenShiftAPIServer
openshiftcontrollermanagers                            operator.openshift.io                 false        OpenShiftControllerManager
servicecas                                             operator.openshift.io                 false        ServiceCA
catalogsources                        catsrc           operators.coreos.com                  true         CatalogSource
clusterserviceversions                csv,csvs         operators.coreos.com                  true         ClusterServiceVersion
installplans                          ip               operators.coreos.com                  true         InstallPlan
operatorgroups                        og               operators.coreos.com                  true         OperatorGroup
operatorsources                       opsrc            operators.coreos.com                  true         OperatorSource
subscriptions                         sub,subs         operators.coreos.com                  true         Subscription
packagemanifests                                       packages.operators.coreos.com         true         PackageManifest
poddisruptionbudgets                  pdb              policy                                true         PodDisruptionBudget
podsecuritypolicies                   psp              policy                                false        PodSecurityPolicy
projectrequests                                        project.openshift.io                  false        ProjectRequest
projects                                               project.openshift.io                  false        Project
appliedclusterresourcequotas                           quota.openshift.io                    true         AppliedClusterResourceQuota
clusterresourcequotas                 clusterquota     quota.openshift.io                    false        ClusterResourceQuota
clusterrolebindings                                    rbac.authorization.k8s.io             false        ClusterRoleBinding
clusterroles                                           rbac.authorization.k8s.io             false        ClusterRole
rolebindings                                           rbac.authorization.k8s.io             true         RoleBinding
roles                                                  rbac.authorization.k8s.io             true         Role
routes                                                 route.openshift.io                    true         Route
configs                                                samples.operator.openshift.io         false        Config
priorityclasses                       pc               scheduling.k8s.io                     false        PriorityClass
podsecuritypolicyreviews                               security.openshift.io                 true         PodSecurityPolicyReview
podsecuritypolicyselfsubjectreviews                    security.openshift.io                 true         PodSecurityPolicySelfSubjectReview
podsecuritypolicysubjectreviews                        security.openshift.io                 true         PodSecurityPolicySubjectReview
rangeallocations                                       security.openshift.io                 false        RangeAllocation
securitycontextconstraints            scc              security.openshift.io                 false        SecurityContextConstraints
volumesnapshotclasses                                  snapshot.storage.k8s.io               false        VolumeSnapshotClass
volumesnapshotcontents                                 snapshot.storage.k8s.io               false        VolumeSnapshotContent
volumesnapshots                                        snapshot.storage.k8s.io               true         VolumeSnapshot
csidrivers                                             storage.k8s.io                        false        CSIDriver
csinodes                                               storage.k8s.io                        false        CSINode
storageclasses                        sc               storage.k8s.io                        false        StorageClass
volumeattachments                                      storage.k8s.io                        false        VolumeAttachment
brokertemplateinstances                                template.openshift.io                 false        BrokerTemplateInstance
processedtemplates                                     template.openshift.io                 true         Template
templateinstances                                      template.openshift.io                 true         TemplateInstance
templates                                              template.openshift.io                 true         Template
profiles                                               tuned.openshift.io                    true         Profile
tuneds                                                 tuned.openshift.io                    true         Tuned
groups                                                 user.openshift.io                     false        Group
identities                                             user.openshift.io                     false        Identity
useridentitymappings                                   user.openshift.io                     false        UserIdentityMapping
users                                                  user.openshift.io                     false        User
ippools                                                whereabouts.cni.cncf.io               true         IPPool

@jboxman
Copy link
Contributor

jboxman commented Jul 22, 2020

@alanconway, this also probably means it isn't visible with oc explain; Can you run oc explain for this custom resource and get output for it?

@jboxman
Copy link
Contributor

jboxman commented Sep 20, 2020

@alanconway, I don't see a logging.openshift.io in 4.6 either? Does it come from a day 2 operator?

@openshift-bot
Copy link

Issues go stale after 90d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle stale

@openshift-ci-robot openshift-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Dec 19, 2020
@openshift-bot
Copy link

Stale issues rot after 30d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle rotten
/remove-lifecycle stale

@openshift-ci-robot openshift-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Jan 18, 2021
@jboxman
Copy link
Contributor

jboxman commented Jan 29, 2021

@alanconway, so, installing the Operator provides the missing APIs:

oc api-resources | grep -i log
consoleexternalloglinks                                console.openshift.io                  false        ConsoleExternalLogLink
clusterlogforwarders                  clf              logging.openshift.io                  true         ClusterLogForwarder
clusterloggings                       cl               logging.openshift.io                  true         ClusterLogging
catalogsources                        catsrc           operators.coreos.com                  true         CatalogSource

So with that extra step, I could start including the logging APIs in the official API docs.

@vikram-redhat fyi

@jboxman jboxman added branch/enterprise-4.7 and removed lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. labels Jan 29, 2021
@rolfedh
Copy link
Contributor

rolfedh commented Mar 7, 2021

@rolfedh FYI

@rolfedh
Copy link
Contributor

rolfedh commented Mar 7, 2021

@jboxman
Copy link
Contributor

jboxman commented Mar 7, 2021

@rolfedh, so it is possible to include these APIs in the API reference docs, but as of this moment, they are not included.

Because logging is an add-on, I'm not sure how to proceed.

@rolfedh
Copy link
Contributor

rolfedh commented Mar 11, 2021

Thanks, @jboxman. I'll look into it and get back to you.

@openshift-bot
Copy link

Issues go stale after 90d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle stale

@openshift-ci openshift-ci bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jun 9, 2021
@rolfedh
Copy link
Contributor

rolfedh commented Jun 9, 2021

/remove-lifecycle stale

@openshift-ci openshift-ci bot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jun 9, 2021
@rolfedh
Copy link
Contributor

rolfedh commented Jun 9, 2021

/lifecycle frozen

@openshift-ci openshift-ci bot added the lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. label Jun 9, 2021
@mburke5678 mburke5678 assigned rolfedh and unassigned rolfedh Nov 10, 2021
@rolfedh
Copy link
Contributor

rolfedh commented Nov 10, 2021

@mburke5678 Please assign @libander instead. Thanks.

@mburke5678
Copy link
Contributor

@libander @rolfedh @jboxman Any progress on this one?

@jboxman-rh
Copy link

If the Operator isn't part of the OpenShift payload and needs to be installed day-2, it won't show up in the API docs.

@rolfedh
Copy link
Contributor

rolfedh commented Jan 30, 2023

Nevertheless, our customers require this information. How might we provide it to them?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
branch/enterprise-4.7 lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.
Projects
None yet
Development

No branches or pull requests

8 participants