2017-03-06 22 views
0

私たちのオフィスでは、従業員はプロジェクト開発活動にyoctoを使用します&すべてがソースリポジトリからダウンロードされます。Yoctoローカルリポジトリ

すべてのクライアントマシンがローカルリポジトリ&を必要に応じてダウンロードして接続するように、サーバーのリポジトリを設定します(apt-cacherのように)。これは可能ですか?

私は何か間違ったことを聞いているか間違っていると訂正してください。

答えて

0

1つのアイデアは、ローカルクラウドドライブを作成し、そのファイルをコンピュータにフォルダとして添付することです。 /conf/local.conf

SSTATE_DIR = "/path/to/your/sstate-repository" 
DL_DIR ?= "/path/to/your/download/repository" 

を変更することsstateはそう、このコマンドを使用して、そこにファイルを削除するcronジョブを作成した時点からの時間までに構築されますのでご注意ください。

find ${sstate_dir} -name 'sstate*' -atime +3 -delete; fi

詳細については、27ページを参照してください。HERE

0

唯一のことはhあなたはおそらくPREMIRRORS variableを見てみるべきです(ビルドされたパッケージではありません)。私があなたの質問で明らかにならないことの1つは「ソースリポジトリ」(gitラベルを伴う)です。プロジェクトは通常、多くのコンポーネントから構築されています。そのうちの約95%は外部ソースから来ていますが、 Git/SVN /何でも)。内部リポジトリは通常大きな問題ではなく、近くにいると働きやすく、関係者全員がアクセスできるようにする必要があります。ほとんどの問題は外部フェッチで実際に発生します。ミラーリングが便利な部分です。

私は通常、次のようにWRTソースファイルの管理がある物事を設定する方法:

  • は、いくつかの内部FTPサーバをセットアップし、(匿名の読み取り専用アクセス権を持つ)「ftp://oe-src.example.com/
  • 使用DL_DIR ?= "${HOME}/sources"で言いますlocal.conf(これはOEクラシックの時代に戻っていた方法ですが)、厳密には必要ではありません。ダウンロードしたソースファイルを一度に消去することなくビルドディレクトリをクリーンアップすることが好きなだけです。
  • PREMIRRORSを設定します。 FTP/SCP/rsyncを経由

    PREMIRRORS = "\ 
         git://.*/.* ftp://oe-src.example.com/ \n \ 
         ftp://.*/.* ftp://oe-src.example.com/ \n \ 
         http://.*/.* ftp://oe-src.example.com/ \n \ 
         https://.*/.* ftp://oe-src.example.com/ \n \ 
    " 
    
  • ビルド後にFTPで~/sources(古いソースを削除しないで、モード「に追加」で)を同期させるために、あなたのCIツールにアクションを追加します(このようなlocal.confでariableそれはやや内部VCSの負荷を軽減できますので、あなたは常に、またあなたの内部ソフトウェアのためのVCSのチェックアウトのtarボールを含め、BTW(ソースファイルの素敵なセットを持っている/何でも)

こう)FTPと最も上ソースファイルリクエストのうち、このFTPに満足しているので、ソースの欠落/チェックサムの破損/ダウンロードの遅れなどの問題はなくなりました。

このFTPは全員に公開されており、セキュリティポリシーに応じて問題が発生する場合もありません。これは、プロジェクトごとのSFTPミラーを使用することで軽減できます。これにより、ユーザーキー管理のオーバーヘッドが増加しますが、実際にはそのような設定も行っているため、必要なときに実行できます。