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

Improve documentation about configuration (first draft by development team) #2254

Closed
merelcht opened this issue Jan 24, 2023 · 5 comments · Fixed by #2421
Closed

Improve documentation about configuration (first draft by development team) #2254

merelcht opened this issue Jan 24, 2023 · 5 comments · Fixed by #2421
Assignees
Labels
Component: Documentation 📄 Issue/PR for markdown and API documentation

Comments

@merelcht
Copy link
Member

Description

The chapter on configuration is very long and contains a lot of information: https://kedro.readthedocs.io/en/stable/kedro_project_setup/configuration.html

We should divide this up in a better way.

Possible Implementation

From Kedro 0.18.5 the sections in the configuration chapter are:
Configuration

  1. Configuration root
  2. Local and base configuration environments
  3. Additional configuration environments
  4. Template configuration
    • Globals
    • Jinja2 support
  5. Configuration with OmegaConf
    • Templating for parameters
  6. Parameters
    • Load parameters
    • Specify parameters at runtime
    • Use parameters
  7. Credentials
    • AWS credentials
  8. Configure kedro run arguments

Maybe we could divide so that we talk about the different types of config: catalog, parameters, credentials and logging and then separately about the specific loaders which go into templating and omegaconf.

@merelcht merelcht added the Component: Documentation 📄 Issue/PR for markdown and API documentation label Jan 24, 2023
@stichbury
Copy link
Contributor

When I read the page last week, the thing that struck me most was that we were saying how it worked rather than how to use it. I wonder if a set of pages of "recipes" for different configuration options may work? I don't feel like we have a good example of using config really, since spaceflights doesn't really modify/extend what is there.

@stichbury
Copy link
Contributor

Thinking more about this issue because I want to get some changes into the upcoming sprint starting w/c 6th March 2023.

I'm considering separating the page into a group as follows:

  • Configuration management with Kedro
    • "What Kedro does to help you" or "Why use Kedro for config" sort of thing -- not marketing, but clear explanation of how you benefit
  • Configuration basics
    • Config root
    • Configuration environments
  • Kedro configuration how-to guide
    • How to do various config tasks (from simple to more complex use cases)
  • Configuration FAQs

@stichbury
Copy link
Contributor

The above is not an exhaustive list nor is it in any way definite -- it's just the kind of information I'd probably look for.

What I'd particularly like to see is a few examples (in code) of how to work with configuration in Kedro, as I don't feel we have any right now.

@merelcht merelcht self-assigned this Mar 6, 2023
@stichbury stichbury changed the title Improve documentation about configuration Improve documentation about configuration (first draft by development team) Mar 6, 2023
@astrojuanlu
Copy link
Member

Maybe we could divide so that we talk about the different types of config: catalog, parameters, credentials and logging

In fact, I'm testing gh-2375 and I'm getting confused about the different places where we store "configuration":

  • Top-level pyproject.toml for [tool.kedro] config
  • conf/ (with base and local by default) for "config files"
  • src/{package_name}/settings.py for "project settings"

@merelcht
Copy link
Member Author

merelcht commented Mar 8, 2023

Yes I think we need to better define what "configuration" is exactly. I wouldn't consider pyproject.toml Kedro configuration, because it's more general python config, but I do get why someone might think it's also part of the "configuration" we talk about in the docs.

@merelcht merelcht linked a pull request Mar 16, 2023 that will close this issue
9 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: Documentation 📄 Issue/PR for markdown and API documentation
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants