[go: up one dir, main page]

Skip to content

Cookiecutter template for creating a package for the Apache Beam Python I/O Connectors project

License

Notifications You must be signed in to change notification settings

beam-pyio/pyio-cookiecutter

Repository files navigation

Apache Beam Python I/O Cookiecutter

doc test release python os

pyio-cookiecutter logo


pyio-cookiecutter is a cookiecutter template for creating a package for the Apache Beam Python I/O Connectors project using poetry.

Usage

Please see the documentation for more detail on using pyio-cookiecutter. We provide the fundamental steps below:

  1. Install cookiecutter:

    pip install cookiecutter
  2. Generate a Python package structure using pyio-cookiecutter:

    cookiecutter https://github.com/beam-pyio/pyio-cookiecutter.git
  3. After responding to the prompts you should have a directory structure similar to that shown below. To learn more about the contents of this directory structure, please see the pyio-cookiecutter documentation.

    pkg
    ├── .github                    ┐
    │   └── workflows              │
    │       ├── doc.yml            │ GitHub Actions workflow
    │       ├── release.yml        │
    │       └── test.yml           ┘
    ├── .gitignore                 ┐
    ├── CHANGELOG.md               │
    ├── CONDUCT.md                 │
    ├── CONTRIBUTING.md            │
    ├── LICENSE                    │
    ├── README.md                  ┘
    ├── docs                       ┐
    │   ├── Makefile               │
    │   ├── changelog.md           │
    │   ├── conduct.md             │ Package documentation
    │   ├── conf.py                │
    │   ├── contributing.md        │
    │   ├── index.md               │
    │   └── requirements.txt       ┘
    ├── pyproject.toml             ┐ 
    ├── src                        │
    │   └── pkg                    │ Package source code, metadata,
    │       ├── __init__.py        │ and build instructions 
    │       └── pkg.py             ┘
    └── tests                      ┐
        └── test_pkg.py            ┘ Package tests
    

Contributing

Interested in contributing? Check out the Contributing Guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.

License

pyio-cookiecutter is licensed under the terms of the BSD license.

Acknowledgements

pyio-cookiecutter was originally developed for use in the Apache Beam Python I/O Connectors project. It was inspired by the Py-Pkgs-Cookiecutter template.