Anaconda Team Editionでチャネル作成とミラーリング設定をする

Anaconda Team Editionでチャネル作成とミラーリング設定をします。

導入構成の全体像は以下になります。この記事は以下の4番目に当たる作業について書いています。
他の記事は[こちら](https://qiita.com/kawada2017/items/00050724428d40049946)にまとめています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/a47d2068-e288-45e1-e13a-bf70bd0ffae1.png)

■環境

* RHEL 7.9
* Aanaconda Team Edition 6.1.3(OEM版のIBM Anaconda Repository for IBM Cloud Pak for Dataを導入しました。)


#チャネル作成
以下のマニュアルを参考にチャネルを作成します。

https://team-docs.anaconda.com/en/latest/user/channel.html#create-chan

クリックしてユーザーメニューを開き（右側のヘッダーにあるユーザーアイコンを左クリック）、Channelsを開きます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/72aa3cee-e8f9-c9ad-adc4-d68384d04960.png)

Create Channelをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/57f38ae0-ee8f-0561-a973-416cb7f2efc0.png)

AnacondaのPublicRepositoryのrepo.anaconda.comのチャネルにどんなものがあるかは以下に情報があります。

https://repo.anaconda.com/pkgs/

ここでは以下のmainとmsys2のチャネルのミラーレポジトリを作りたいと思います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/4bb47b3e-5fe6-b61a-b896-8049c370e943.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/b4ac702d-634f-b877-c33a-336fa6944535.png)
それぞれのチャネルを作ります。

名前と詳細を書き、Privacyはここではユーザー認証を行わないPublicを選択し、Createします。

まず、mainのチャネルを作ります。
例
Name: anacondaprivatemain
Description: anaconda private main
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/fdf1c22d-3853-6c27-f2dd-a6533283402b.png)

同様の手順でmsys2のチャネルを作ります。
例
Name: anacondaprivatemsys2
Description: anaconda private msys2
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/1fe700f8-56be-7dd2-aa71-1097c62e0901.png)

以下のように二つのチャネルが作成されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/707f02ea-1c80-cc87-eda8-21efb97f4118.png)

#ミラーリング設定作成

以下のマニュアルを参考にミラーリングの設定を作成します。

https://team-docs.anaconda.com/en/latest/admin/mirrors.html

mainのチャネルとmsys2のチャネルでそれぞれミラーリングの設定をします。

まず、mainのチャネルからMirrorをクリックします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/9a34bd55-3b60-eef3-e049-39f479749e03.png)


以下の設定をします。

* ミラーリングの名前を指定します。ここではチャネルと同じ名前を指定しました
    * main: anacondaprivatemain
    * msys2: anacondaprivatemsys2
* ミラーリングは、アクティブなものとパッシブなものがあります。ここではパッシブなミラーを選びます。パッシブなミラーは、チャンネル・アーティファクトのメタデータのみをクローンし、実際のファイルは要求に応じて (最初の要求に応じて) 取得します。
* 外部ソースチャネルに一致するミラータイプを選択します。ここではCondaを選びます。Conda、PyPI、またはCRANをミラーすることができます。
* condaタイプの外部ソースチャンネルとしてmainとmsys2のチャネルのURLを設定します。
    * main: https://repo.anaconda.com/pkgs/main/
    * msys2 https://repo.anaconda.com/pkgs/msys2/
* Subdirectoryでミラーを特定のアーキテクチャに限定することができます。ここでは、以下を選択しています。
    * main: linux-64, win-64, noarch
    * msys2 win-64
* Frequencyでチャンネルのミラーリング頻度を変更することができます。また、「Run Now」の横のボックスをチェックすることで、すぐにミラーを実行することもできます。

なお、ここでは設定していませんが、CVEスコアによるフィルターやPackage名、ライセンスタイプ、日付などによるフィルタリングも可能です。

main: anacondaprivatemainの設定をします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/61a7e8f6-3294-821e-3677-71ca44fff9d2.png)

Submitをするとミラーリングが始まります。パッシブであっても数時間かかります。

同様にmsys2: anacondaprivatemsys2の設定をします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/22fe07eb-01d5-74cf-c8e5-77c5a7cb80fe.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/2b592be6-b75e-1577-063b-a831a73ef6bc.png)



完了したことは各チャネルのMirrorsタブでcompletedになったかどうかで確認できます。
main: anacondaprivatemain
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/dfd1841f-947c-fb47-6132-8d04d7b37563.png)

msys2: anacondaprivatemsys2
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/521436eb-c11c-e8fd-4b56-f1073bced32a.png)

またHistoryにもmirroring completedのイベントが記録されます。
main: anacondaprivatemain
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/eada6eb5-c196-44e3-c28c-a8627629e91d.png)

msys2: anacondaprivatemsys2
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/677a51a1-cf46-2b72-ba42-69769095990d.png)


Packagesタブでミラーされたパッケージを確認できます。
main: anacondaprivatemain
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/246ec04c-3ec9-beff-d759-4eca8cb061a0.png)
msys2: anacondaprivatemsys2
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/223763/a4840b0f-87aa-e0ab-0080-110891e35e67.png)