Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
79 changes: 34 additions & 45 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,17 @@
## Garden Linux Python Library

![poetry build](https://github.com/gardenlinux/parse_features_lib/actions/workflows/build.yml/badge.svg)
![Black Lint](https://github.com/gardenlinux/parse_features_lib/actions/workflows/black.yml/badge.svg)
![Test](https://github.com/gardenlinux/parse_features_lib/actions/workflows/pytests.yml/badge.svg)
![security check](https://github.com/gardenlinux/parse_features_lib/actions/workflows/bandit.yml/badge.svg)

## Garden Linux Python Library

Python tooling to work with [Garden Linux](https://github.com/gardenlinux/gardenlinux) features, flavors, OCI artifacts, repositories, and releases.
It is primarily targeted at Garden Linux developers and CI pipelines rather than end users.
Python tooling to work with
[Garden Linux](https://github.com/gardenlinux/gardenlinux) features, flavors,
OCI artifacts, repositories, and releases. It is primarily targeted at Garden
Linux developers and CI pipelines rather than end users.

The library follows the intent of [Semantic Versioning](https://semver.org) for its public APIs.
The library follows the intent of [Semantic Versioning](https://semver.org) for
its public APIs.

### Features

Expand All @@ -21,59 +24,45 @@ The library follows the intent of [Semantic Versioning](https://semver.org) for

## Documentation

Full documentation is available at the **Garden Linux Python Library Documentation** site:
[https://gardenlinux.github.io/python-gardenlinux-lib/](https://gardenlinux.github.io/python-gardenlinux-lib/)

The docs include:

- **Command-Line Interface**: `gl-features-*`, `gl-flavors-*`, `gl-oci`, `gl-s3`, `gl-gh-release`
- **API Reference**: modules, classes, and functions (e.g. `Parser`, `CName`, `Container`, `Repository`)
- **Release documentation**: versioning and release process

## Installation
You can find a full documentation about how to
[install this python library](https://gardenlinux-docs.netlify.app/reference/supporting_tools/python-gardenlinux-lib.html#installation)
and
[use its CLI interface](https://gardenlinux-docs.netlify.app/reference/python-gardenlinux-lib-cli.html)
this on our [documentation hub](https://gardenlinux-docs.netlify.app/).

### Using `poetry` (from Git)
For a detailed API documentation, check
[gardenlinux.github.io/python-gardenlinux-lib/api.html](https://gardenlinux.github.io/python-gardenlinux-lib/)

Add the library as a dependency in your `pyproject.toml`:
# Community

```toml
[tool.poetry.dependencies]
gardenlinux = { git = "https://github.com/gardenlinux/python-gardenlinux-lib", rev = "0.10.5" }
```
To stay up-to-date with recent news about Gardenlinux, subscribe to our mailing
list:

Then install:
https://lists.neonephos.org/g/gardenlinux-discussion

```bash
poetry install
```
For updates and statements regarding security issues, we have a security mailing
list for you:

### Local development setup
https://lists.neonephos.org/g/gardenlinux-security

```bash
git clone https://github.com/gardenlinux/python-gardenlinux-lib.git
cd python-gardenlinux-lib
python -m venv venv
source venv/bin/activate
poetry install
```
For embargoed security related topics, this list is for you:

## Quickstart
https://lists.neonephos.org/g/gardenlinux-security-embargo

### Example: list features for a given `cname`
# Contributing

```python
from gardenlinux.features import Parser
We welcome your contributions to Gardenlinux or any supporting projects.

cname = "aws-gardener_prod"
feature_list = Parser().filter_as_list(cname)
To find our more, visit our
[Contributor Documentation](https://gardenlinux-docs.netlify.app/contributing).

print(f"features of {cname}:")
for feature in feature_list:
print(feature)
```
## Licensing

For more examples and for all CLI tools, see the **Command-Line Interface** and **API Reference** sections in the docs:
[https://gardenlinux.github.io/python-gardenlinux-lib/](https://gardenlinux.github.io/python-gardenlinux-lib/)
Copyright 2025 SAP SE or an SAP affiliate company and GardenLinux contributors.
Please see our [LICENSE](LICENSE.md) for copyright and license information.
Detailed information including third-party components and their
licensing/copyright information is available
[via the REUSE tool](https://reuse.software).

<p align="center">
<img alt="Bundesministerium für Wirtschaft und Energie (BMWE)-EU funding logo" src="https://apeirora.eu/assets/img/BMWK-EU.png" width="400"/>
Expand Down
50 changes: 48 additions & 2 deletions docs/overview/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,13 +32,59 @@ interacting with Garden Linux components. It includes:
- **S3 Integration**: Upload and download artifacts from S3 buckets
- **GitHub Integration**: Create and manage GitHub releases with release notes

## Installation

### Using `poetry` (from Git)

Add the library as a dependency in your `pyproject.toml`:

```toml
[tool.poetry.dependencies]
gardenlinux = { git = "https://github.com/gardenlinux/python-gardenlinux-lib", rev = "0.10.5" }
```

Then install:

```bash
poetry install
```

### Local development setup

```bash
git clone https://github.com/gardenlinux/python-gardenlinux-lib.git
cd python-gardenlinux-lib
python -m venv venv
source venv/bin/activate
poetry install
```

## Quickstart

### Example: list features for a given `cname`

```python
from gardenlinux.features import Parser

cname = "aws-gardener_prod"
feature_list = Parser().filter_as_list(cname)

print(f"features of {cname}:")
for feature in feature_list:
print(feature)
```

For more examples and for all CLI tools, see the **Command-Line Interface** and
**API Reference** sections in the docs:
[https://gardenlinux.github.io/python-gardenlinux-lib/](https://gardenlinux.github.io/python-gardenlinux-lib/)

## Quick Start

### Command-Line Interface

The library provides several command-line tools for common operations. See the
[Command-Line Interface documentation](/reference/python-gardenlinux-lib-cli.md) for detailed
information about all available commands.
[Command-Line Interface documentation](/reference/python-gardenlinux-lib-cli.md)
for detailed information about all available commands.

### Release Management

Expand Down
Loading