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

Process for auto-documenting OCIS_ (global scope) env vars #4916

Closed
mmattel opened this issue Oct 27, 2022 · 5 comments
Closed

Process for auto-documenting OCIS_ (global scope) env vars #4916

mmattel opened this issue Oct 27, 2022 · 5 comments
Assignees

Comments

@mmattel
Copy link
Contributor

mmattel commented Oct 27, 2022

Similar to have a documention process for env vars for services, we need a process documenting ALL OCIS_env vars as they have by design a global scope. One of the challenging issues is, that there are OCIS_ env vars which are not mentioned in any service and therefore not visible in any documentation. This documentation is necessary as else the purpose of those global envs gets lost and no overview is present.

There was already an intense discussion with @dragonchaser @wkloucek including a solution proposal that not only would work for the ocis and the docs-ocis repo, but also being future proof.

This issue is necessary to have the requirement documented and as a reference of the upcoming solution.

@micbar fyi

@dragonchaser
Copy link
Member

dragonchaser commented Oct 27, 2022

Proposal workflow:

Scan code (e.g. grep -R os.GetEnv) => Generate a yaml with the variables and its type but leave the description empty => Descriptions are manually filled by the docs team => generate adoc template for consumption

With every subsequent run, the generated yaml from the previous run is consumed beforehand, existing variables in that yaml are not updated, because they have already been edited by the docs team. With that approach it would also be possible to manually add variables that are either not present in the code directly or are consumed through os.GetEnv

Proposal yaml structure:

variables:
    - name: "OCIS_URL"
      type: "string"
      default: "some_default"
      description: "Base ocis URL"
      dependend_services:
        - name: "service_a"
          path: "filepath"
        - name: "service_b"
          path: "filepath"
      do_ignore: false
    - name: "OCIS_IDP_URL"
      type: "string"
      default: "some_default"
      description: ""
      do_ignore: false

@mmattel
Copy link
Contributor Author

mmattel commented Oct 27, 2022

#3917 (Harmonize env variable naming for those which are not bound to a particular service)

@dragonchaser
Copy link
Member

#3917 (Harmonize env variable naming for those which are not bound to a particular service)

IMHO It would make sense to tackle #3917 first.

@mmattel
Copy link
Contributor Author

mmattel commented Oct 27, 2022

Found a env var by chance where the description is missing,
see issue: #4922 (OCIS_GRPC_TLS_ENABLED has no description in Auth Basic)

@kobergj
Copy link
Collaborator

kobergj commented Jan 10, 2023

Global envvars handled here: #5369

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants