semvec/pypi-packages huggingface dataset:
tplbuild 0.1.3
Templated container build tool
Requires Python: >=3.8

# tplbuild - Templated reproducible container build tool

*tplbuild* is a wrapper around 
[Dockerfiles](https://docs.docker.com/engine/reference/builder/#format)
to make buildilng container images better. The two main features that inspired
the creaton of *tplbuild* were

- Templating build instructions through [Jinja](https://jinja.palletsprojects.com/)
- Enabling fast and reproducible builds among developers

## Installation

*tplbuild* can be installed through *pip*. This installs both the `tplbuild`
CLI utility and the *tplbuild* Python library.

```sh
pip install tplbuild
```

*tplbuild* is supported and tested on Python 3.8-3.10


## Documentation

Documentation for *tplbuild* can be found
[here](https://tplbuild.readthedocs.io/)

### Examples

Check out the [examples](examples/) folder in this repo for some example of
what can be done with `tplbuild`.

### Demo Video

Additionally, you can find a quick tutorial highlighting key features
[here](https://youtu.be/HDiyABr8Adw)

[![Tplbuild Demo
Video](https://img.youtube.com/vi/HDiyABr8Adw/0.jpg)](https://www.youtube.com/watch?v=HDiyABr8Adw "Tplbuild Demo")
aioregistry 0.7.2
Python library for interacting with container image registries
Requires Python: >=3.8

# AIORegistry

`aioregistry` is a Python library and CLI tool for inspecting and copying container image data
from and between registries.

This library primarily focuses on being a useful tool for dealing with container image
registries. It has very limited support for interpretation of the objects stored within.

# Library usage

## Find sub-manifest based on platform.
```python
async with AsyncRegistryClient() as client:
    manifest_ref = parse_image_name("alpine")
    manifest = await client.manifest_download(manifest_ref)

    if isinstance(manifest, ManifestListV2S2):
        for sub_manifest in manifest.manifests:
            if sub_manifest.platform.architecture == "amd64":
                manifest_ref.ref = sub_manifest.digest
                manifest = await client.manifest_download(manifest_ref)
                break
        else:
            raise Exception("Found no matching platform")
    else:
        print("Not a manifest list")
```

## Download layers of an image

```python
for layer in manifest.layers:
    assert layer.media_type == "application/vnd.docker.image.rootfs.diff.tar.gzip"
    blob_ref = RegistryBlobRef(manifest_ref.registry, manifest_ref.repo, layer.digest)

    # For example we just download into memory. In practice don't do this.
    blob_data = io.BytesIO(
        b"".join([chunk async for chunk in client.ref_content_stream(blob_ref)])
    )
    with tarfile.open(mode="r|*", fileobj=blob_data) as tar:
        for tarinfo in tar.getmembers():
            print(tarinfo.name)
```

# CLI copy tool

```sh
# By default it will pull credentials based on ~/.docker/config.json 
python -m aioregistry ubuntu:18.04 my.private.registry/my-repo:my-tag
```

```sh
# Copy all tags matching regex
python -m aioregistry ubuntu my.private.registry/my-repo --tag-pattern '18\..*'
checkifvalid 0.1.1
Syntax validator for email, hostname, url, uri and ip address, compliant to RFC specifications
Keywords: ipv6 ipv4 syntax validator regex

# What is this?

Syntax validator compliant to RFC specifications for
- Email
- Hostname
- URL
- URI
- IPv4 and IPv6
- Mac address 

## Installation

This module can be installed from [pypi](https://pypi.org/project/checkifvalid/) website

```bash
pip install checkifvalid
```

## Checking IPv4 or IPv6 syntax

```python
import checkifvalid

checkifvalid.ipv6_address("::1")
True

checkifvalid.ipv4_address("127.0.0.1")
True

checkifvalid.ipv4_address("127.0.0.257")
False
```

## Checking URL syntax

```python
import checkifvalid

checkifvalid.url("https://www.google.com")
True
```

## Other syntax validator

```python
import checkifvalid

checkifvalid.email("john.doe@example.com")
True

checkifvalid.uri("sip:support@john.doe:443",)
True

checkifvalid.mac_address("00:11:22:33:44:55")
True

checkifvalid.hostname("john@doe")
False
```

## For developpers

Run test units

```bash
python3 -m unittest discover tests/ -v
```