Как привязать пакет python к пакетам плагинов? - PullRequest
0 голосов
/ 01 мая 2020

Я бы хотел связать пакет Python kedro, который предоставляет интерфейс командной строки (kedro). Кроме того, я бы хотел добавить в комплект Python пакет kedro-docker. Этот второй пакет расширяет интерфейс командной строки первого пакета (kedro docker). Но когда я создаю оснастку с snapcraft.yaml ниже, я получаю только интерфейс командной строки первого пакета:

name: kedro
base: core18
version: latest
description: |
    Kedro is a development workflow framework that implements software
    engineering best-practice for data pipelines with an eye towards
    productionising machine learning models.

grade: devel
confinement: devmode

architectures:
  - build-on: [amd64]

apps:
  kedro:
    command: kedro
    plugs:
      - home
      - network
      - network-bind
      - docker
    environment: {
      LANG: C.UTF-8,
      LC_ALL: C.UTF-8
    }

parts:
  kedro:
    plugin: python
    python-version: python3
    python-packages:
      - kedro==0.15.9
      - kedro-docker==0.1.1

Как я могу получить расширенный интерфейс командной строки (kedro docker) в оснастке

1 Ответ

1 голос
/ 01 мая 2020

Я не эксперт и никогда не использовал snapcraft, поэтому просто гипотеза здесь. Kedro- Docker предоставляет только специфичные для проекта c команды, которые не будут отображаться, если вы не находитесь в root проекта. Поэтому, если вы запустите kedro new, а затем cd <project-dir> && kedro, вы должны (в идеале) увидеть группу команд docker:

Global commands from Kedro
Commands:
  docs  See the kedro API docs and introductory tutorial.
  info  Get more information about kedro.
  new   Create a new kedro project.

Project specific commands from Docker
Commands:
  docker  Dockerize your Kedro project.

Project specific commands from <project-dir>/kedro_cli.py
Commands:
  activate-nbstripout  Install the nbstripout git hook to automatically...
  build-docs           Build the project documentation.
  build-reqs           Build the project dependency requirements.
  install              Install project dependencies from both...
  ipython              Open IPython with project specific variables loaded.
  jupyter              Open Jupyter Notebook / Lab with project specific...
  lint                 Run flake8, isort and (on Python >=3.6) black.
  package              Package the project as a Python egg and wheel.
  run                  Run the pipeline.
  test                 Run the test suite.
...