Skip to content

📖 add public api docs - #1331

Merged
everettraven merged 4 commits into
operator-framework:mainfrom
everettraven:docs/public-api
Oct 4, 2024
Merged

📖 add public api docs#1331
everettraven merged 4 commits into
operator-framework:mainfrom
everettraven:docs/public-api

Conversation

@everettraven

Copy link
Copy Markdown
Contributor

Description

  • Adds documentation on the catalogd webserver that is considered as part of the public API
  • Adds documentation that explicitly calls out what our public API is
  • resolvesWhat is our public API? #1239

Reviewer Checklist

  • API Go Documentation
  • Tests: Unit Tests (and E2E Tests, if appropriate)
  • Comprehensive Commit Messages
  • Links to related GitHub Issue(s)

@everettraven
everettraven requested a review from a team as a code ownerOctober 3, 2024 14:02
@netlify

netlifyBot commented Oct 3, 2024

Copy link
Copy Markdown

Deploy Preview for olmv1 ready!

NameLink
🔨 Latest commitc4e30d7
🔍 Latest deploy loghttps://app.netlify.com/sites/olmv1/deploys/6700535763043f000892b90f
😎 Deploy Previewhttps://deploy-preview-1331--olmv1.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@codecov

codecovBot commented Oct 3, 2024

Copy link
Copy Markdown

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 76.37%. Comparing base (814bf63) to head (c4e30d7).
Report is 5 commits behind head on main.

Additional details and impacted files
@@ Coverage Diff @@## main #1331 +/- ##
=======================================
Coverage 76.37% 76.37% =======================================
Files 41 41 Lines 2438 2438 =======================================
Hits 1862 1862 Misses 402 402 Partials 174 174 
FlagCoverage Δ
e2e58.44% <ø> (ø)
unit53.60% <ø> (-0.05%)⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@LalatenduMohantyLalatenduMohanty left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As per the last discussion HEAD https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/HEAD is also a supported method for catalog webserver

@LalatenduMohanty

LalatenduMohanty commented Oct 3, 2024

Copy link
Copy Markdown
Member

Apart from my above comment i.e. #1331 (review) everything else looks good.

@everettraven

Copy link
Copy Markdown
ContributorAuthor

@LalatenduMohanty addressed

Comment threaddocs/refs/api/catalogd-webserver.md Outdated

@michaelryanpetermichaelryanpeter left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small nits. I am going to look into getting some linting in the repo to address some of the consistency issues around terminology.

Comment threaddocs/refs/api/catalogd-webserver.md Outdated
Comment threaddocs/refs/api/catalogd-webserver.md Outdated
Comment threaddocs/refs/api/catalogd-webserver.md Outdated
Comment threaddocs/refs/api/catalogd-webserver.md Outdated
Comment threaddocs/refs/public-api.md Outdated
Comment on lines +5 to +7
- [operator-controller API reference](./api/operator-controller-api-reference.md)
- [catalogd API reference](./api/catalogd-api-reference.md)
- `catalogd` webserver. For more information on what this includes, see the [catalogd webserver documentation](./api/catalogd-webserver.md)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this section is pretty short, I think you could create an Additional resources section at the end of the page for the links. Maybe after line 12?

## Additional resources
- Operator Controller API reference
- Catalogd API reference
- Catalogd web server

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would you mind elaborating on what value this would bring to a reader over the current setup?

@michaelryanpetermichaelryanpeterOct 3, 2024

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To me, the links are a little distracting where they are. The point you are trying to get across is to define the scope of the public API. I think that if you break out the links to the API references at the end of the page, it is a little tidier and your intended meaning is more direct.

That said, this is 100% a nit. Feel free to ignore it doesn't feel relevant to you.

@michaelryanpetermichaelryanpeterOct 3, 2024

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As a heuristic for determining whether something should be an inline link vs an additional resource, I ask myself if the reader needs to stop and read the link before continuing.

If the answer is yes, then I use an inline link. Typically, this would be in the case of a prerequisite or context information that is vital to understanding a concept or completing a task.

If the reader can follow up on the information later or if the link is provided for helpful context, then I break out the link in an additional resources section.

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As long as the content is OK - i'd like to get this merged in so we at least have it and can keep progressing towards our v1.0.0 release. We can always tweak this in the future!

@openshift-merge-robotopenshift-merge-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Oct 3, 2024
Signed-off-by: everettraven <everettraven@gmail.com>
Signed-off-by: everettraven <everettraven@gmail.com>
@openshift-merge-robotopenshift-merge-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Oct 3, 2024
# Catalogd web server

[Catalogd](https://github.com/operator-framework/catalogd), the OLM v1 component for making catalog contents available on cluster, includes
a web server that serves catalog contents to clients via a HTTP(S) endpoint.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This would be "an HTTP(s)" since HTTP is pronounced with a starting vowel sound. You determine the article via the acronym pronunciation.

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be taken care of in 647a9f7


### Compression Support

The `catalogd` web server supports gzip compression of responses, which can significantly reduce associated network traffic. In order to signal to that the client handles compressed responses, the client must include `Accept-Encoding: gzip` as a header in the HTTP request.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"to signal that the client"

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be taken care of in 647a9f7

@michaelryanpeter

Copy link
Copy Markdown
Contributor

+1 to Tayler's comments. Otherwise, lgtm.

Signed-off-by: everettraven <everettraven@gmail.com>
Comment threaddocs/api-reference/catalogd-webserver.md Outdated
Co-authored-by: Joe Lanford <joe.lanford@gmail.com>
@everettraven
everettraven added this pull request to the merge queue Oct 4, 2024
Merged via the queue into operator-framework:main with commit eb64d98Oct 4, 2024
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

What is our public API?

7 participants

@everettraven@LalatenduMohanty@michaelryanpeter@joelanford@trgeiger@grokspawn@openshift-merge-robot