Как я могу настроить spark-submit (или DataPro c) для загрузки maven-зависимостей (jars) из пакетов GitHub? - PullRequest
1 голос
/ 26 февраля 2020

Я пытаюсь получить spark-submit (через GCP DataPro c) для загрузки зависимостей maven из репозитория пакетов GitHub.

Добавление spark.jars.repositories=https://myuser:mytoken@maven.pkg.github.com/myorg/my-maven-packages-repo/ в команду spark-submit не помогает. ..

Доступ к правильным URL-адресам, но файлы не загружаются (https://maven.pkg.github.com/myorg/my-maven-packages.repo/myorg/mylibrary/1.0.0/library-1.0.0.jar).

Как я могу заставить это работать? (Без использования супер-банок!)

1 Ответ

0 голосов
/ 26 февраля 2020

Вместо добавления:

spark.jars.repositories=https://myuser:mytoken@maven.pkg.github.com/myorg/my-maven-packages-repo/ к команде spark-submit

добавьте:

--files=gs://my-bucket/github-ivysettings.xml

и

spark.jars.ivySettings=github-ivysettings.xml

загрузить следующий файл (github-ivysettings.xml) в корзину:

<ivysettings>  

  <settings defaultResolver="default"/>

  <include url="${ivy.default.settings.dir}/ivysettings-public.xml"/>
  <include url="${ivy.default.settings.dir}/ivysettings-shared.xml"/>
  <include url="${ivy.default.settings.dir}/ivysettings-local.xml"/>
  <include url="${ivy.default.settings.dir}/ivysettings-main-chain.xml"/>
  <include url="${ivy.default.settings.dir}/ivysettings-default-chain.xml"/>

  <credentials
      host="maven.pkg.github.com" realm="GitHub Package Registry"
      username="myuser" passwd="mytoken"
      />
  <resolvers>
      <ibiblio
          name="private-github"
          m2compatible="true" useMavenMetadata="true" usepoms="true"
          root="https://maven.pkg.github.com/myorg/my-maven-packages-repo/"
          pattern="[organisation]/[module]/[revision]/[artifact]-[revision](-[classifier]).[ext]"
      />
    <chain name="default" returnFirst="true" checkmodified="true">
      <resolver ref="local" />
      <resolver ref="shared" />
      <resolver ref="public" />
      <resolver ref="private-github" />
    </chain>
  </resolvers>
</ivysettings>

Это сохранит текущий порядок поиска (локальный, общий, опубликованный c) и затем выполните поиск в своем личном репозитории.

Обратите внимание, что область важна, поэтому, если вы используете ее для другого частного репозитория, измените хост, root и область.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...