# No Fuss Computing - Kubernetes Manifest Tools

----
  
---
This repository is for a docker container that contains various tools for working with and manipulating Kubernetes Manifests.
## Using this Container
This container can be used from the console (requires docker be installed), as a Github Actions or as part of a Gitlab CI/CD Pipeline.
``` bash
docker run -ti \
-e "KUBECTL_SLICE_INPUT_FILE=k8s-manifest-file.yaml" \
-e "KUBECTL_SLICE_OUTPUT_DIR=/split" \
-v ${PWD}:/workdir \
--rm \
nofusscomputing/kubernetes-manifest-tools:latest
```
### Variables
The container has variables available for use that are only required if not using this container as part of a github action.
| ENV variable | Github Action Inputs | Description |
|:---:|:---:|:---|
| `KUBECTL_SLICE_INPUT_FILE` | _input-file_ | Kubernetes Manifest to process. must be relative path to file from root of repository. If a URL is supplied, the manifest will be downloaded. ||
| `KUBECTL_SLICE_OUTPUT_DIR` | _output-dir_ | The directory where the manifests will be saved to. |
| `NFC_FORMAT_YAML` | _format-yaml_ | If set, the YAML files will have the yaml header `---` added and have the indentation set to `2`. |
| `KUBECTL_SLICE_TEMPLATE` | _filename-format_ | Sets the format of the filename. defaults to `-.yaml` |
## Contributing
As this repository is intended to be a single location for deploying all of your kubernetes services. We encourage collaborataion and welcome All contributions.
For further details on contributing please refer to the [contribution guide](CONTRIBUTING.md).
## Other
This repo is release under this [licence](LICENCE)