2017-08-21 31 views
0

githubリポジトリに依存するRPMパッケージを作成したいと思います。GitHubリポジトリを使用してRPMパッケージを作成する方法

私は、このコマンドをスタンドアロンで実行する場合:

yum localinstall https://github.com/matthewmueller/giftbox/blob/master/rpm/monit.rpm 

それはうまく動作するでしょう。私はそれ(FPMを使用して)RPMパッケージの依存関係を作ってみる場合は、それにエラーアウト:

--> Processing Dependency: https://github.com/matthewmueller/giftbox/raw/release-2017-08-21-08-33/rpm/monit.rpm for package: giftbox-2017_08_21_08_33-1.x86_64 
--> Finished Dependency Resolution 
Error: Package: giftbox-2017_08_21_08_33-1.x86_64 (/giftbox) 
      Requires: https://github.com/matthewmueller/giftbox/raw/release-2017-08-21-08-33/rpm/monit.rpm 
You could try using --skip-broken to work around the problem 
You could try running: rpm -Va --nofiles --nodigest 

は、ここで私はRPMパッケージを生成するために実行しているコマンドです:

@fpm \ 
     --input-type=dir \ 
     --output-type=rpm \ 
     --name $(NAME) \ 
     --version $(VERSION) \ 
     --architecture x86_64 \ 
     --package "$(DIR)/rpm/$(NAME)-$(VERSION).rpm" \ 
     --rpm-os linux \ 
     --template-scripts \ 
     --after-install "$(DIR)/postinstall.sh" \ 
     --after-upgrade "$(DIR)/postupgrade.sh" \ 
     --before-remove "$(DIR)/preremove.sh" \ 
     --depends "procps" \ 
     --depends "util-linux" \ 
     --depends "initscripts" \ 
     --depends "$(GHBASE)/monit.rpm" \ 
     --force \ 
      "$(DIR)/init.sh"="/etc/init.d/giftbox" 

どんな助けでも大歓迎です。ありがとう!

+0

--skip-brokenでパッケージをインストールしてみてください。破損しているパッケージは除外されます。私は確かではないが、一度チェックする。 – Shrenik

+0

私はこれを知っています: '依存関係の問題のためにスキップされたパッケージ:giftbox-2017_08_21_08_33-1.x86_64 from/giftbox'これはパッケージをインストールしなかったことを示唆しています。 FWIW、パッケージが壊れていない、それはyum localinstallでうまくインストールされます。それはlocalinstallがいくつかの追加の解決を行っているようです。 – Matt

+0

このパッケージの依存関係は、グーグルで見つからないことがありますか?天気をインストールしようとしているバージョンが他のパッケージでクラッシュしていることを確認してください。 – Shrenik

答えて

1

これはできません。 Requires: some_package には、パッケージ名のみを含めることができます。

yum install http://some.url/some.package.rpmは、ファイルをダウンロードしてインストールするyumの機能です。あなたは必須のURLを使用することはできません。

できること: * rpmの作成など。 my-repo.rpmには、monit.rpmがあるリポジトリを有効にするrepoファイル(/etc/yum.repos.d)が含まれます *次にギフトボックスにRequires: monitを入れます。 * yum install my-repo.rpm 2番目の手順では、「yum install giftbox」を実行できるはずです

+0

ありがとう@msuchy。これは私の前提を確認し、あなたが提案したアプローチは私がやったことです。その他:http://blog.celingest.com/en/2014/09/17/create-your-own-yum-rpm-repository-using-amazon-s3/&http://tylerpower.io/post/ hosting-yum-repo-on-s3 /は私には役に立ちました。 – Matt

関連する問題