Skip to content
Merged
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
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 5 additions & 5 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:

env:
ARTIFACTS_PATH: artifacts
PROJECT_NAME: genesis_core
PROJECT_NAME: exordos_core
REPO_ENDPOINT_PUT: http://10.20.0.1:8082

jobs:
Expand All @@ -16,7 +16,7 @@ jobs:
fail-fast: true
steps:
- uses: actions/checkout@v6
- name: Build Genesis Core
- name: Build Exordos Core
env:
PUSH_CFG: ${{ secrets.PUSH_CFG }}
run: |
Expand All @@ -26,16 +26,16 @@ jobs:
source ~/.profile
VERSION="$(genesis get-version .)"

# Build Genesis Core
# Build Exordos Core
genesis build $(pwd) --inventory

# Decode and write the push configuration
echo "$PUSH_CFG" | base64 -d > genesis/genesis.push.yaml
genesis push -c genesis/genesis.push.yaml -t local -f --latest

# Upload the VM image
gzip -k output/genesis-core.raw -c | \
curl -X PUT -T - "$REPO_ENDPOINT_PUT/${PROJECT_NAME}/${VERSION}/genesis-core.raw.gz"
gzip -k output/exordos-core.raw -c | \
curl -X PUT -T - "$REPO_ENDPOINT_PUT/${PROJECT_NAME}/${VERSION}/exordos-core.raw.gz"

# Temporary upload step is done in the build script
echo "${VERSION}" > "${ARTIFACTS_PATH}/version.txt"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/inventory.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,4 @@ jobs:
with:
fetch-depth: 30
- name: Build elements inventory
run: python3 genesis_core/cmd/elements_inventory.py
run: python3 exordos_core/cmd/elements_inventory.py
2 changes: 1 addition & 1 deletion .github/workflows/publish-to-pypi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
runs-on: ubuntu-latest
environment:
name: pypi
url: https://pypi.org/p/genesis-core
url: https://pypi.org/p/exordos-core
permissions:
id-token: write # IMPORTANT: mandatory for trusted publishing

Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,10 +45,10 @@ jobs:
image: postgres:latest
# Provide the password for postgres
env:
POSTGRES_DB: genesis_core
POSTGRES_DB: exordos_core
POSTGRES_HOST_AUTH_METHOD: trust
POSTGRES_USER: genesis_core
POSTGRES_PASSWORD: genesis_core
POSTGRES_USER: exordos_core
POSTGRES_PASSWORD: exordos_core
POSTGRES_INITDB_ARGS: "-c max_connections=100"
# Set health checks to wait until postgres has started
options: >-
Expand Down Expand Up @@ -76,7 +76,7 @@ jobs:
tox -e ${{ matrix.python-version }}
- name: Functional tests
env:
DATABASE_URI: "postgresql://genesis_core:genesis_core@localhost:5432/genesis_core"
DATABASE_URI: "postgresql://exordos_core:exordos_core@localhost:5432/exordos_core"
run: |
tox -e ${{ matrix.python-version }}-functional
Coverage:
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ AUTHORS
ChangeLog
cover/
version.txt
etc/genesis_core/genesis_core.d/*.conf
etc/exordos_core/exordos_core.d/*.conf
etc/*/*.local

# OS
Expand Down
22 changes: 11 additions & 11 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
"type": "debugpy",
"request": "launch",
"program": ".tox/develop/bin/gc-user-api",
"args": ["--config-file", "etc/genesis_core/genesis_core.conf.local", "--config-dir", "etc/genesis_core/genesis_core.d/"],
"args": ["--config-file", "etc/exordos_core/exordos_core.conf.local", "--config-dir", "etc/exordos_core/exordos_core.d/"],
"console": "integratedTerminal",
"justMyCode": false,
"subProcess": true
Expand All @@ -18,15 +18,15 @@
"type": "debugpy",
"request": "launch",
"program": ".tox/develop/bin/gc-orch-api",
"args": ["--config-file", "etc/genesis_core/genesis_core.conf.local", "--config-dir", "etc/genesis_core/genesis_core.d/"],
"args": ["--config-file", "etc/exordos_core/exordos_core.conf.local", "--config-dir", "etc/exordos_core/exordos_core.d/"],
"console": "integratedTerminal",
"justMyCode": false
}, {
"name": "Python Debugger: GService",
"type": "debugpy",
"request": "launch",
"program": ".tox/develop/bin/gc-gservice",
"args": ["--config-file", "etc/genesis_core/genesis_core.conf.local", "--config-dir", "etc/genesis_core/genesis_core.d/"],
"args": ["--config-file", "etc/exordos_core/exordos_core.conf.local", "--config-dir", "etc/exordos_core/exordos_core.d/"],
"console": "integratedTerminal",
"justMyCode": false
}, {
Expand All @@ -35,8 +35,8 @@
"request": "launch",
"program": ".tox/develop/bin/gc-manifest-parser",
"args": [
"--config-file", "etc/genesis_core/genesis_core.conf.local",
"--config-dir", "etc/genesis_core/genesis_core.d/",
"--config-file", "etc/exordos_core/exordos_core.conf.local",
"--config-dir", "etc/exordos_core/exordos_core.d/",
"--manifest-path", "genesis/manifests/core.element.yaml"
],
"console": "integratedTerminal",
Expand All @@ -47,8 +47,8 @@
"request": "launch",
"program": ".tox/develop/bin/genesis-universal-agent",
"args": [
"--config-file", "etc/genesis_core/genesis_core.conf.local",
"--config-dir", "etc/genesis_core/genesis_core.d/",
"--config-file", "etc/exordos_core/exordos_core.conf.local",
"--config-dir", "etc/exordos_core/exordos_core.d/",
],
"console": "integratedTerminal",
"justMyCode": false
Expand All @@ -58,8 +58,8 @@
"request": "launch",
"program": ".tox/develop/bin/ra-apply-migration",
"args": [
"--config-file", "etc/genesis_core/genesis_core.conf.local",
"--config-dir", "etc/genesis_core/genesis_core.d/",
"--config-file", "etc/exordos_core/exordos_core.conf.local",
"--config-dir", "etc/exordos_core/exordos_core.d/",
"-p", "migrations"
],
"console": "integratedTerminal",
Expand All @@ -70,8 +70,8 @@
"request": "launch",
"program": ".tox/develop/bin/ra-rollback-migration",
"args": [
"--config-file", "etc/genesis_core/genesis_core.conf.local",
"--config-dir", "etc/genesis_core/genesis_core.d/",
"--config-file", "etc/exordos_core/exordos_core.conf.local",
"--config-dir", "etc/exordos_core/exordos_core.d/",
"-p", "migrations",
"-m", "root"
],
Expand Down
2 changes: 1 addition & 1 deletion CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# CODEOWNERS file for genesis_core repository
# CODEOWNERS file for exordos_core repository
# Each line is a pattern followed by one or more owners

# Default owners for the entire repository
Expand Down
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ endif
all: help

help:
@echo "build_core - build genesis core"
@echo "bootstrap - bootstrap genesis core"
@echo "build_core - build exordos core"
@echo "bootstrap - bootstrap exordos core"

build_core:
genesis build -i $(SSH_KEY) -f . --inventory --manifest-var repository=https://repository.genesis-core.tech
Expand Down
26 changes: 13 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,28 @@
![Tests workflow](https://github.com/infraguys/genesis_core/actions/workflows/tests.yml/badge.svg)
![Build workflow](https://github.com/infraguys/genesis_core/actions/workflows/build.yml/badge.svg)
![Tests workflow](https://github.com/infraguys/exordos_core/actions/workflows/tests.yml/badge.svg)
![Build workflow](https://github.com/infraguys/exordos_core/actions/workflows/build.yml/badge.svg)
Comment on lines +1 to +2

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

There's an inconsistency in URL updates. While GitHub repository links have been updated from genesis_core to exordos_core, several other URLs pointing to domains like repository.genesis-core.tech and genesis-core.tech have not been changed throughout the project. For a complete rename, these should also be updated if new domains are available.

References
  1. Ensure code examples and comments in documentation accurately reflect the actual implementation, such as API endpoint URLs.


<p align="center">
<img height="256" src="logo.svg" alt="genesis core svg logo">
<img height="256" src="logo.svg" alt="exordos core svg logo">
</p>

Welcome to Genesis Core!
Welcome to Exordos 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.
The Exordos 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](https://github.com/infraguys/genesis_core/wiki) for more detailed information.
Refer to the [wiki](https://github.com/infraguys/exordos_core/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.
There are several ways to install Exordos 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](https://github.com/infraguys/gci_dev_all_in_one). 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.
If you want to try Exordos Core in a few minutes, download the `all-in-one` [stand](https://github.com/infraguys/gci_dev_all_in_one). It's a ready-to-go virtual machine image with preinstalled Exordos 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](https://github.com/infraguys/genesis_core/wiki/BasicUsage) for more details.
In a case you would like to run Exordos Core on your own infrastructure, you can use the [basic guide](https://github.com/infraguys/exordos_core/wiki/BasicUsage) for more details.

# 🚀 Development

Expand Down Expand Up @@ -52,7 +52,7 @@ tox -e develop
source .tox/develop/bin/activate
```

Follow the development guide [here](https://github.com/infraguys/genesis_core/wiki/DevelopmentGuide) for more details.
Follow the development guide [here](https://github.com/infraguys/exordos_core/wiki/DevelopmentGuide) for more details.

# ⚙️ Tests

Expand All @@ -71,7 +71,7 @@ tox -e py312-functional
To run functional tests, export the following environment variables:

```bash
export DATABASE_URI="postgresql://genesis_core:genesis_core@127.0.0.1:5432/genesis_core"
export DATABASE_URI="postgresql://exordos_core:exordos_core@127.0.0.1:5432/exordos_core"
export ADMIN_PASSWORD="admin"
export DEFAULT_CLIENT_SECRET="GenesisCoreSecret"
export GLOBAL_SALT="FOy/2kwwdn0ig1QOq7cestqe"
Expand All @@ -80,8 +80,8 @@ export HS256_KEY="secret"

# 🔗 Related projects

- Genesis SDK is a set of tools for developing Genesis elements. You can find it [here](https://github.com/infraguys/gcl_sdk).
- Genesis DevTools it's a set oftools to manager life cycle of genesis projects. You can find it [here](https://github.com/infraguys/genesis_devtools).
- Exordos SDK is a set of tools for developing Exordos elements. You can find it [here](https://github.com/infraguys/gcl_sdk).
- Exordos DevTools it's a set oftools to manager life cycle of genesis projects. You can find it [here](https://github.com/infraguys/genesis_devtools).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

This line has a couple of inconsistencies from the rename:

  • The phrase 'genesis projects' should be 'exordos projects'.
  • The URL points to a repository named genesis_devtools, which is inconsistent with the Exordos DevTools name.
References
  1. Ensure code examples and comments in documentation accurately reflect the actual implementation, such as API endpoint URLs.


# 💡 Contributing

Expand Down
6 changes: 3 additions & 3 deletions docker-compose-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ services:
image: postgres:latest
command: -c 'max_connections=100'
environment:
POSTGRES_USER: genesis_core
POSTGRES_PASSWORD: genesis_core
POSTGRES_DB: genesis_core
POSTGRES_USER: exordos_core
POSTGRES_PASSWORD: exordos_core
POSTGRES_DB: exordos_core
PGDATA: /var/lib/postgresql/data/pgdata
ports:
- "5432:5432"
Expand Down
14 changes: 7 additions & 7 deletions docs/app-developer-guide/build.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ title: genesis build

## Overview

`genesis build` **compiles and packages** your Genesis element into distributable artifacts — images, manifests, and any other resources required for deployment.
`genesis build` **compiles and packages** your Exordos element into distributable artifacts — images, manifests, and any other resources required for deployment.

The command reads the **`genesis/genesis.yaml`** file — the main configuration file that transforms your application into a platform element. This file contains the `build` section describing:

Expand Down Expand Up @@ -100,7 +100,7 @@ genesis build --inventory .

## Build Process

The build process creates **VM disk images** that run on the Genesis Core platform. Packer starts a virtual machine from a base OS image, copies all resolved dependencies into it, and executes the provisioning script specified in `genesis.yaml`. This script is typically a Bash script that installs packages, configures services, and prepares the image. Once provisioning completes, the VM shuts down and the resulting disk image is packaged for deployment. This process is configured through the `elements` section in `genesis.yaml` where you define the base profile, provisioning script, output format, and any build overrides.
The build process creates **VM disk images** that run on the Exordos Core platform. Packer starts a virtual machine from a base OS image, copies all resolved dependencies into it, and executes the provisioning script specified in `genesis.yaml`. This script is typically a Bash script that installs packages, configures services, and prepares the image. Once provisioning completes, the VM shuts down and the resulting disk image is packaged for deployment. This process is configured through the `elements` section in `genesis.yaml` where you define the base profile, provisioning script, output format, and any build overrides.

---

Expand All @@ -114,25 +114,25 @@ Include another local project or directory into your build. The source path is r

```yaml
deps:
- dst: /opt/genesis_core
- dst: /opt/exordos_core
path:
src: ../../genesis_core
src: ../../exordos_core
exclude:
- .venv
- .tox
- build
- output
```

This copies the `genesis_core` project into `/opt/genesis_core` during the build, excluding development directories.
This copies the `exordos_core` project into `/opt/exordos_core` during the build, excluding development directories.

#### External Binary Artifacts

Fetch remote resources via HTTP/HTTPS. This is useful for kernel images, boot loaders, or pre-compiled binaries.

```yaml
deps:
- dst: /opt/genesis_core/artifacts/vmlinuz
- dst: /opt/exordos_core/artifacts/vmlinuz
http:
src: https://repository.genesis-core.tech/seed_os/1.1.0/vmlinuz
```
Expand Down Expand Up @@ -261,7 +261,7 @@ The exact contents depend on your project type and `genesis.yaml` configuration.
After a successful build, your elements are ready for:

- [`genesis push`](push.md) — publish to the ecosystem registry
- [`genesis deploy`](deploy.md) — deploy to a Genesis installation
- [`genesis deploy`](deploy.md) — deploy to a Exordos installation

---

Expand Down
14 changes: 7 additions & 7 deletions docs/app-developer-guide/build.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ title: genesis build

## Обзор

`genesis build` **компилирует и упаковывает** ваш Genesis элемент в распространяемые артефакты — образы, манифесты и любые другие ресурсы, необходимые для развёртывания.
`genesis build` **компилирует и упаковывает** ваш Exordos элемент в распространяемые артефакты — образы, манифесты и любые другие ресурсы, необходимые для развёртывания.

Команда читает файл **`genesis/genesis.yaml`** — основной конфигурационный файл, который превращает ваше приложение в элемент платформы. Этот файл содержит секцию `build`, описывающую:

Expand Down Expand Up @@ -100,7 +100,7 @@ genesis build --inventory .

## Процесс сборки

Процесс сборки создаёт **образы VM дисков**, которые запускаются на платформе Genesis Core. Packer запускает виртуальную машину из базового образа ОС, копирует все разрешённые зависимости в неё и выполняет скрипт подготовки, указанный в `genesis.yaml`. Этот скрипт обычно является Bash-скриптом, который устанавливает пакеты, настраивает сервисы и подготавливает образ. После завершения подготовки VM выключается, и полученный образ диска упаковывается для развёртывания. Этот процесс настраивается через секцию `elements` в `genesis.yaml`, где вы определяете базовый профиль, скрипт подготовки, формат вывода и любые переопределения сборки.
Процесс сборки создаёт **образы VM дисков**, которые запускаются на платформе Exordos Core. Packer запускает виртуальную машину из базового образа ОС, копирует все разрешённые зависимости в неё и выполняет скрипт подготовки, указанный в `genesis.yaml`. Этот скрипт обычно является Bash-скриптом, который устанавливает пакеты, настраивает сервисы и подготавливает образ. После завершения подготовки VM выключается, и полученный образ диска упаковывается для развёртывания. Этот процесс настраивается через секцию `elements` в `genesis.yaml`, где вы определяете базовый профиль, скрипт подготовки, формат вывода и любые переопределения сборки.

---

Expand All @@ -114,25 +114,25 @@ genesis build --inventory .

```yaml
deps:
- dst: /opt/genesis_core
- dst: /opt/exordos_core
path:
src: ../../genesis_core
src: ../../exordos_core
exclude:
- .venv
- .tox
- build
- output
```

Это копирует проект `genesis_core` в `/opt/genesis_core` во время сборки, исключая директории разработки.
Это копирует проект `exordos_core` в `/opt/exordos_core` во время сборки, исключая директории разработки.

#### Внешние бинарные артефакты

Получите удалённые ресурсы через HTTP/HTTPS. Это полезно для образов ядра, загрузчиков или предварительно скомпилированных бинарных файлов.

```yaml
deps:
- dst: /opt/genesis_core/artifacts/vmlinuz
- dst: /opt/exordos_core/artifacts/vmlinuz
http:
src: https://repository.genesis-core.tech/seed_os/1.1.0/vmlinuz
```
Expand Down Expand Up @@ -261,7 +261,7 @@ output/
После успешной сборки ваши элементы готовы для:

- [`genesis push`](push.ru.md) — публикация в реестр экосистемы
- [`genesis deploy`](deploy.ru.md) — развёртывание в установку Genesis
- [`genesis deploy`](deploy.ru.md) — развёртывание в установку Exordos

---

Expand Down
Loading
Loading