Skip to main content

Genesis Core services

Project description

Tests workflow Build workflow

genesis core svg logo

Welcome to Genesis Core!

The Genesis Core is an open source software that offers a one turnkey solution to deal with infrastructure at all levels - from bare metal and virtual machines to applications and services.

Refer to the wiki for more detailed information.

📦 Installation

There are several ways to install Genesis Core and depend on your purpose you can choose one of them.

Try it out

If you want to try Genesis Core in a few minutes, download the all-in-one stand. It's a ready-to-go virtual machine image with preinstalled Genesis Core and ability to get full functionality such as creating inner(nested) virtual machines, installation elements and many others. This stand may be used for development purposes as well if you are focusing on a new element development.

Basic usage

In a case you would like to run Genesis Core on your own infrastructure, you can use the basic guide for more details.

🚀 Development

Ubuntu:

sudo apt-get install build-essential python3.12-dev python3.12-venv \
    libev-dev libvirt-dev curl
curl -LsSf https://astral.sh/uv/install.sh | sh
source "$HOME"/.local/bin/env
uv tool install tox --with tox-uv

Fedora:

sudo dnf install gcc libev-devel libvirt-devel curl
curl -LsSf https://astral.sh/uv/install.sh | sh
source "$HOME"/.local/bin/env
uv tool install tox --with tox-uv 

Initialize virtual environment:

tox -e develop
source .tox/develop/bin/activate

Follow the development guide here for more details.

⚙️ Tests

NOTE: Python version 3.12 is supposed to be used, but you can use other versions

# Unit tests
tox -e py312

# Functional tests
tox -e py312-functional

Functional tests environment

To run functional tests, export the following environment variables:

export DATABASE_URI="postgresql://genesis_core:genesis_core@127.0.0.1:5432/genesis_core"
export ADMIN_PASSWORD="admin"
export DEFAULT_CLIENT_SECRET="GenesisCoreSecret"
export GLOBAL_SALT="FOy/2kwwdn0ig1QOq7cestqe"
export HS256_KEY="secret"

🔗 Related projects

  • Genesis SDK is a set of tools for developing Genesis elements. You can find it here.
  • Genesis DevTools it's a set oftools to manager life cycle of genesis projects. You can find it here.

💡 Contributing

Contributing to the project is highly appreciated! However, some rules should be followed for successful inclusion of new changes in the project:

  • All changes should be done in a separate branch.
  • Changes should include not only new functionality or bug fixes, but also tests for the new code.
  • After the changes are completed and tested, a Pull Request should be created with a clear description of the new functionality. And add one of the project maintainers as a reviewer.
  • Changes can be merged only after receiving an approve from one of the project maintainers.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

genesis_core-0.0.3.tar.gz (500.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

genesis_core-0.0.3-py3-none-any.whl (504.8 kB view details)

Uploaded Python 3

File details

Details for the file genesis_core-0.0.3.tar.gz.

File metadata

  • Download URL: genesis_core-0.0.3.tar.gz
  • Upload date:
  • Size: 500.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for genesis_core-0.0.3.tar.gz
Algorithm Hash digest
SHA256 eb8e5281b02d5c931354640c6565c1b11484c159cbce0c3955e1772a627db312
MD5 8355f40e95fb6a745d64c9208c207ee5
BLAKE2b-256 b2b50da7ebda387b81b2e575adf09688c140894a31799e6af6d24fdf705c2a15

See more details on using hashes here.

Provenance

The following attestation bundles were made for genesis_core-0.0.3.tar.gz:

Publisher: publish-to-pypi.yml on infraguys/genesis_core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file genesis_core-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: genesis_core-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 504.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for genesis_core-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 04d5de3cf83c8614c3c3630c08f397df5da1f6feaeeb1fa062dadf95324cf038
MD5 7684ff8ac95569f67fde7d98dc9cca2d
BLAKE2b-256 c0a19175b2835c23ef2e99adb466c18401654bb43b51ae6f8b9db86ede7c53c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for genesis_core-0.0.3-py3-none-any.whl:

Publisher: publish-to-pypi.yml on infraguys/genesis_core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page