Skip to content

Предложение — добавить «профили» #12

Description

@HMRDevil

Предложение — добавить «профили».
Пример команды:

project init --dir --domain --profile

Команда создаёт папку проекта, внутри создаётся подпапка .osp и файл project.ini.

Параметры:

  • --dir — директория проекта, обязательный параметр.
    Если переменная projects_search_path не содержит путь к папке проекта, то путь добавляется в эту переменную.
    Пример:
    --dir = path_to_project_directory\my_project
    Если path_to_project_directory отсутствует в projects_search_path, он автоматически добавляется.

  • --domain — доменное имя для project.ini. Необязательный параметр.
    Если не указано, доменное имя формируется автоматически на основе имени папки и добавления .local.
    Пример:
    my_project.local

  • --profile — предопределённые профили для проектов с определёнными модулями.

Пример профиля:

default_profile.ini
nginx_engine=NGINX157
node_engine=20.20.1
php_engine=8.1
ssl=on

Обновление

Опишу подробнее: профили — это отдельные подготовленные сущности программы.

Пример профиля:

example_name_wordpress.ini
php_engine = PHP-8.1
node_engine = 20.20.1
ssl = on

При использовании команды вывода, мы получаем директорию проекта по указанному пути с уже вложенной папкой .osp и сгенерированным файлом project.ini.

Пример команды:

project init C:\domains\my_project my_domain.local example_name_wordpress

Результат:
Папка домена my_project с подпапкой .osp и сгенерированным project.ini:

[my_domain.local]
php_engine = PHP-8.1
node_engine = 20.20.1
ssl = on

В идеале, после этого указанные модули для домена активируются автоматически.


Это почти то, что нужно, чтобы можно было указывать последующие команды прямо в профиле.
Пример профиля с командами:

example_name_wordpress.ini
php_engine = PHP-8.1
node_engine = 20.20.1
ssl = on

[commands]
RU unzip wordpress.zip

И после создания домена, активации модулей, архив автоматически распаковывается в папку проекта.

Мини-деплой.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions