Skip to main content

Utility for downloading and updating NSI fixtures

Project description

Utility for downloading and updating NSI fixtures

Project Status
CI/CD Latest Release
Quality Coverage
Package PyPI - Version PyPI - Support Python Versions Project PyPI - Downloads
Meta types - Mypy License - MIT code style - Ruff

Команда loadnsi позволяет загружать и обновлять фикстуры НСИ в которых записи имеют стабильный pk вашей внутренней системы бд.

Подготовка к запуску

  1. Установка пакета

    pip install loadnsi
    
  2. Создание файла переменных среды .env файл с содержимым:

    PATH_TO_LOADNSI_CONFIG=path/to/your/config/file.py
    # Требуется только если вы собираетесь использовать официальный API НСИ (Запуск команды без флага `--use_pirate_api`)
    NSI_API_USER_KEY=some-key
    
  3. Создание файла конфигурации loadnsi_config.py

    NSI_FIXTURES_FOLDER = 'path/to/your/nsi/folder'
    NSI_PASSPORTS = {
        'file': 'Локальное название файла с паспортами справочников',
        'model': 'Локальное название модели с паспортами справочников',
        # Опциональные параметры (fields):
        'fields': <Iterable объект состоящий из полей паспорта (str) которые необходимо оставить в объекте паспорта>,
    }
    DICT_INTERNAL_PK = 'your pk field name *not alias*'
    PASSPORTS_REL = 'your fieldname for ForeignKey to PARENT_DICT_CLS'
    PARENT_DICT_CLS = 'your base cls modelname for dicts'
    NSI_DICTIONARIES = {
        'Локальное название файла справочника 1': {
            'model': 'Приложение.МодельСправочника1',
            'oid': 'OID Справочника 1',
            # Опциональные параметры (filter и fields):
            'filter': <Callable объект принимает справочник (dict) должен вернуть (bool) оставлять ли этот объект в списке>,
            'fields': <Iterable объект состоящий из полей справочника (str) которые необходимо оставить в объекте справочника>,
            'create_sql': <Boolean объект (bool), если True будет создан дублирующий файл справочника в SQL формате>,
        },
        'Локальное название файла справочника 2': {
            'model': 'Приложение.МодельСправочника2',
            'oid': 'OID Справочника 2',
        },
    }
    

About command

Подробности про каждую опцию команды можно узнать вызвав команду с флагом --help

Contributing

We would love you to contribute to loadnsi, pull requests are very welcome! Please see CONTRIBUTING.md for more information.

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

loadnsi-0.0.1.tar.gz (35.5 kB view details)

Uploaded Source

Built Distribution

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

loadnsi-0.0.1-py3-none-any.whl (28.2 kB view details)

Uploaded Python 3

File details

Details for the file loadnsi-0.0.1.tar.gz.

File metadata

  • Download URL: loadnsi-0.0.1.tar.gz
  • Upload date:
  • Size: 35.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for loadnsi-0.0.1.tar.gz
Algorithm Hash digest
SHA256 2ca7ed19649ac2383e77e5799f99ac900241740d979198e35f358029f7865830
MD5 f44824cf877b62ae48a80a79e4298eb2
BLAKE2b-256 f2e6219c58721c4a539c393cb18dadf9a7c9277120f3337637ddd6385463dc79

See more details on using hashes here.

Provenance

The following attestation bundles were made for loadnsi-0.0.1.tar.gz:

Publisher: publish-to-pypi.yml on Friskes/loadnsi

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

File details

Details for the file loadnsi-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: loadnsi-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 28.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for loadnsi-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 00a437930634f0ef4940d088ba515658cf2f3f22261c935269f65078bca02faf
MD5 3e75115d77e433b7093cd208b2504e38
BLAKE2b-256 9599912618db506ec31b30303ea6d9020daae23e5e733eb63270889683bcfa6a

See more details on using hashes here.

Provenance

The following attestation bundles were made for loadnsi-0.0.1-py3-none-any.whl:

Publisher: publish-to-pypi.yml on Friskes/loadnsi

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