# OSIA
OpenShift infra automation.
## Goal
The tool aims to unified installer of OpenShift to various clouds which is
easy to automate and use within CI.
To see necessary steps for OpenShift installation please see [OpenShift documentation](https://docs.openshift.com).
To see full documentation of `osia` please follow to [Official documentation](https://redhat-cop.github.io/osia).
## Installation
To get started with osia, just install available package from [pypi](pypi.org):
```bash
$ pip install osia
```
__Main features__
* Find empty region in aws to install opneshift on.
* Find feasible network in OpenStack and allocate FIPs before installation happens.
* Generate `install-config.yaml` from predefined defaults.
* Store generated files for deletion to git repository and push changes right after the cluster is installed.
* Manage DNS entries based on the installation properties and results.
* Clean everything once the cluster is not needed.
## Usage
The tool operates over directory which is expected to be git repository and where the service will
store generated configuration and push it to the upstream repository of currently working branch.
### Common configuration
The common configuraiton is done by yaml file called `settings.yaml` that should be located at
`CWD` (root of the repository in most cases).
The configuration has following structure:
```
default:
cloud:
openstack:
cloud_env: env1
environments:
- name: env1
base_domain: ''
certificate_bundle_file: ''
pull_secret_file: ''
ssh_key_file: ''
osp_cloud: ''
osp_base_flavor: ''
network_list: []
- name: env2
base_domain: ''
certificate_bundle_file: ''
pull_secret_file: ''
ssh_key_file: ''
osp_cloud: ''
osp_base_flavor: ''
network_list: []
aws:
cloud_env: default
environments:
- name: default
base_domain: ''
pull_secret_file: ''
certificate_bundle_file: ''
ssh_key_file: ''
worker_flavor: ''
list_of_regions: []
dns:
route53:
ttl: 0
nsupdate:
server: ''
zone: ''
key_file: ''
ttl: 0
use_ipv4: false
```
Every key here is overridible by the argument passed to the installer.
For explanation of any key, please check he documentation below.
Raw data
{
"_id": null,
"home_page": null,
"name": "osia",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.8",
"maintainer_email": null,
"keywords": "OpenShift, OpenStack, AWS, automation",
"author": "Miroslav Jaros",
"author_email": "mirek@mijaros.cz",
"download_url": "https://files.pythonhosted.org/packages/62/bf/5c81ad0c8a36812f162ef86000e390c5e03f4627f5a53cde83fdc2c9ad93/osia-0.2.0a12.tar.gz",
"platform": null,
"description": "# OSIA\n\nOpenShift infra automation.\n\n## Goal\n\nThe tool aims to unified installer of OpenShift to various clouds which is\neasy to automate and use within CI.\n\nTo see necessary steps for OpenShift installation please see [OpenShift documentation](https://docs.openshift.com).\n\nTo see full documentation of `osia` please follow to [Official documentation](https://redhat-cop.github.io/osia).\n\n## Installation\n\nTo get started with osia, just install available package from [pypi](pypi.org):\n\n```bash\n$ pip install osia\n```\n\n\n__Main features__\n\n* Find empty region in aws to install opneshift on.\n* Find feasible network in OpenStack and allocate FIPs before installation happens.\n* Generate `install-config.yaml` from predefined defaults.\n* Store generated files for deletion to git repository and push changes right after the cluster is installed.\n* Manage DNS entries based on the installation properties and results.\n* Clean everything once the cluster is not needed.\n\n\n\n\n## Usage\n\nThe tool operates over directory which is expected to be git repository and where the service will\nstore generated configuration and push it to the upstream repository of currently working branch.\n\n### Common configuration\n\nThe common configuraiton is done by yaml file called `settings.yaml` that should be located at\n`CWD` (root of the repository in most cases).\n\nThe configuration has following structure:\n\n```\ndefault:\n cloud:\n openstack:\n cloud_env: env1\n environments:\n - name: env1\n base_domain: ''\n certificate_bundle_file: ''\n pull_secret_file: ''\n ssh_key_file: ''\n osp_cloud: ''\n osp_base_flavor: ''\n network_list: []\n - name: env2\n base_domain: ''\n certificate_bundle_file: ''\n pull_secret_file: ''\n ssh_key_file: ''\n osp_cloud: ''\n osp_base_flavor: ''\n network_list: []\n aws:\n cloud_env: default\n environments:\n - name: default\n base_domain: ''\n pull_secret_file: ''\n certificate_bundle_file: ''\n ssh_key_file: ''\n worker_flavor: '' \n list_of_regions: []\n dns:\n route53:\n ttl: 0\n nsupdate:\n server: ''\n zone: ''\n key_file: ''\n ttl: 0 \n use_ipv4: false\n```\n\nEvery key here is overridible by the argument passed to the installer.\nFor explanation of any key, please check he documentation below.\n\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "OpenShift infra automation",
"version": "0.2.0a12",
"project_urls": null,
"split_keywords": [
"openshift",
" openstack",
" aws",
" automation"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7f8d74217fb5605d86b3811eccbde9c44da6f156d4896da2957c37e0e1d0dc9b",
"md5": "d96454fbc83fddaf8a792dc7a154699e",
"sha256": "a02e22fa1352af55289a8adad05b5d0d875471538dc24f401ea61397bd116537"
},
"downloads": -1,
"filename": "osia-0.2.0a12-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d96454fbc83fddaf8a792dc7a154699e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.8",
"size": 36267,
"upload_time": "2024-07-26T11:48:49",
"upload_time_iso_8601": "2024-07-26T11:48:49.854897Z",
"url": "https://files.pythonhosted.org/packages/7f/8d/74217fb5605d86b3811eccbde9c44da6f156d4896da2957c37e0e1d0dc9b/osia-0.2.0a12-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "62bf5c81ad0c8a36812f162ef86000e390c5e03f4627f5a53cde83fdc2c9ad93",
"md5": "9b52ab44384e4266739cf0d1158787c4",
"sha256": "e1661088dcb9b14b7132c2dc17278f42e8678e948c09711f63c6ebc7ee4af4ce"
},
"downloads": -1,
"filename": "osia-0.2.0a12.tar.gz",
"has_sig": false,
"md5_digest": "9b52ab44384e4266739cf0d1158787c4",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.8",
"size": 22690,
"upload_time": "2024-07-26T11:48:51",
"upload_time_iso_8601": "2024-07-26T11:48:51.035689Z",
"url": "https://files.pythonhosted.org/packages/62/bf/5c81ad0c8a36812f162ef86000e390c5e03f4627f5a53cde83fdc2c9ad93/osia-0.2.0a12.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-07-26 11:48:51",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "osia"
}