์ด ํ๋ฅญํ ์ก์ ์ ๋ง๋ค๊ณ ์ ์งํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค!
conda
๋ง ์ค์ ํ๋ฉด ํ์๋ณด๋ค ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฌ๋ ๊ฒ ๊ฐ์ต๋๋ค. ์๋ฅผ ๋ค์ด "Conda ์ค์ " ๋จ๊ณ์ธ ์ด ๋ก๊ทธ๋ฅผ ์ดํด๋ณด์ธ์. conda๋ฅผ ์ค์ ํ๋ ๋ฐ 3๋ถ 30๋ถ์ด ์์๋ฉ๋๋ค(์ข
์์ฑ ์ค์น ์ ์ธ). ์์ํ ๊ฒ์
๋๊น ์๋๋ฉด ์ ๊ฐ ์๋ชปํ๊ณ ์๋ ๊ฒ์
๋๊น?
๋ค์ ํ๋ฒ ๊ฐ์ฌ๋๋ฆฝ๋๋ค!
@ma-sadeghi ์๋ ํ์ธ์. ์ข์ ๋ง์๊ณผ ์ก์ ์ ์ด์ฉํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค :)
conda๋ง ์ค์ ํ๋ฉด ํ์๋ณด๋ค ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฌ๋ ๊ฒ ๊ฐ์ต๋๋ค.
์ต์ ๋ฒ์ ์์ ๋ณ๊ฒฝ๋์์ต๋๊น? ์ธ์ ๋ถํฐ ์ด๊ฒ์ ๋์น์ฑ๊ธฐ ์์ํ์ต๋๊น?
์ ์ฌ์ ์ธ ๋ฌธ์ ๋ฅผ ์ ํํ ์ฐพ์๋ผ ์ ์๋์ง ๊ถ๊ธํฉ๋๋ค.
@conda-incubator/setup-miniconda-team ์ค๋ช ๋ ๊ฒ๊ณผ ์ ์ฌํ ๊ฒ์ ๋ฐ๊ฒฌํ์ จ์ต๋๊น?
(์์ ์ค์ ๋ด deps๋ฅผ ์ค์นํ์ง ์๊ณ ) mamba๋ฅผ ์ฌ์ฉํ๊ณ ์ต์ v2 ๋ฒ์ ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์๋ ๋์ผํ ๋ฌธ์ ์ ๋๋ค.
@bollwyvl ๋๋ ์ด๊ฒ์ ์์ผ๋ก ๋๋ฒ๊น ํ ์ ์์ต๋๋ค.
๋์์ด ๋๋ ๊ฒฝ์ฐ(๋ก๊ทธ๋ฅผ ๊ณต์ ํ ์ ์์):
steps:
- name: Checkout the code
uses: actions/checkout<strong i="6">@v2</strong>
- name: Cache conda
uses: actions/cache<strong i="7">@v1</strong>
env:
CACHE_NUMBER: 2
with:
path: ~/conda_pkgs_dir
key: conda-${{ runner.os }}-${{ env.CACHE_NUMBER }}-${{ hashFiles('env.yml') }}
- name: Setup conda
uses: conda-incubator/setup-miniconda<strong i="8">@v2</strong>
with:
mamba-version: "*"
channels: conda-forge,defaults
channel-priority: true
use-only-tar-bz2: true
์๋ฅผ ๋ค์ด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค @hadim . ํ๊ท๋ฅผ ๋์ ํ ๋ณ๊ฒฝ ์ฌํญ์ ํ์ธํ๊ธฐ ์ํด PR์ ์ถ๊ฐํฉ๋๋ค.
@ma-sadeghi ์๋ ํ์ธ์. ์ข์ ๋ง์๊ณผ ์ก์ ์ ์ด์ฉํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค :)
conda๋ง ์ค์ ํ๋ฉด ํ์๋ณด๋ค ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฌ๋ ๊ฒ ๊ฐ์ต๋๋ค.
์ต์ ๋ฒ์ ์์ ๋ณ๊ฒฝ๋์์ต๋๊น? ์ธ์ ๋ถํฐ ์ด๊ฒ์ ๋์น์ฑ๊ธฐ ์์ํ์ต๋๊น?
์ ์ฌ์ ์ธ ๋ฌธ์ ๋ฅผ ์ ํํ ์ฐพ์๋ผ ์ ์๋์ง ๊ถ๊ธํฉ๋๋ค.
@conda-incubator/setup-miniconda-team ์ค๋ช ๋ ๊ฒ๊ณผ ์ ์ฌํ ๊ฒ์ ๋ฐ๊ฒฌํ์ จ์ต๋๊น?
์ด ์์ ์ ์ฒ์ ์ฌ์ฉํ์ ๋ ํจ์ฌ ๋ ๋นจ๋๋ค๊ณ ๊ฑฐ์ ํ์ ํฉ๋๋ค. ๋จธ๋ฆฌ ์๋ก, ์๋ง๋ conda๋ฅผ ์ค์ ํ๋ ๋ฐ 1๋ถ ์ ๋ ๊ฑธ๋ ธ์ ๊ฒ์ ๋๋ค. ์ง๊ธ์ 3:30๋ถ์ ๋๋ค. ์ฐ๋ฆฌ ํ๋ก์ ํธ๋ ๊ณต๊ฐ๋์ด ์๊ณ ์ด ์์ ์ ์ฌ์ฉํ์ง ์ค๋๋์์ผ๋ฏ๋ก ๋ฌธ์ ๋ฅผ ๋๋ฒ๊น ํ๋ ๋ฐ ๋์์ด ๋๋ ๊ฒฝ์ฐ ๋ก๊ทธ๋ฅผ ํ์ธ ํ์ธ์ .
์ฐ๊ฒฐ๋ ๋ก๊ทธ์์:
Tue, 10 Nov 2020 21:09:23 GMT /usr/share/miniconda/condabin/conda update conda
Tue, 10 Nov 2020 21:09:54 GMT Collecting package metadata (repodata.json): ...working... done
Tue, 10 Nov 2020 21:10:07 GMT Solving environment: ...working... done
Tue, 10 Nov 2020 21:11:56 GMT
Tue, 10 Nov 2020 21:11:56 GMT ## Package Plan ##
๊ทธ๋์ ์ฐ๋ฆฌ๋ ๋ค์ ๋น๊ณผํ์ ์ผ๋ก:
๋ด๊ฐ ์๊ฐํ ์ ์๋ ์ ์ผํ ๊ฒ์ ์ถ๊ฐ๋๋ conda-forge
์ด๋ฉฐ, ์ด๋ ์๋ฒ๋ฅผ ์ถ๊ฐ 10,000๊ฐ ์ด์์ ํจํค์ง(๋ฐ ๋ชจ๋ ํด๋น ๋ฒ์ )์ ํจ๊ป ์ค๋ฒ๋๋ผ์ด๋ธ์ ๋ฃ์ต๋๋ค.
๋ด ๋จธ๋ฆฌ ๊ผญ๋๊ธฐ์์ ๋ช ๊ฐ์ง ์ต์ :
auto-update-conda
๋ฅผ false
conda-lock
ํ์ฌ ๋ช
์์ ์ฌ์ ์์ฑ/์ฒดํฌ์ธconda-update-channels: defaults
์์๋ง ๊ฐ์ ธ์ค๋ ์ ์์
์ต์
์ ์ถ๊ฐํฉ๋๋ค.::group::Boring stuff
::endgroup::
๋ก๊ทธ ์ถ๋ ฅ์ ์ถ๊ฐํ์ฌ ์ด ์์
์ด ์คํ๋๋ ๋ช
๋ น์ ์ต์์ ์๋ช
์ฃผ๊ธฐ๋ฅผ ๋ ์ฝ๊ฒ ์ถ์ ํ ์ ์๋๋ก ํฉ๋๋ค(์ผ๋ถ ํ์ด๋ฐ ์์
์ ์ํํ๊ธฐ ์ํด ํฌ๋์ ๋จผ์ง๋ฅผ ํธ์ด๋ด์ผ ํ์ต๋๋ค)micromaba
์ค์ ์ ๊ณต(๋ค์, ๋ช ๊ฐ์ง๋ฅผ ์ ์ฅํ๋ฉด ํด๊ฒฐ๋จ) https://github.com/conda-incubator/setup-miniconda/issues/75#issuecomment -698024879๋๋ถ๋ถ์ ์๊ฐ์ด mamba๋ฅผ ์ค์นํ๋ ๋ฐ ์๋น๋ฉ๋๋ค.
๊ด๋ จ ๊ตฌ์ฑ:
- name: Cache conda
uses: actions/cache<strong i="9">@v2</strong>
env:
CACHE_NUMBER: 3
with:
path: ~/conda_pkgs_dir
key: conda-${{ runner.os }}-${{ env.CACHE_NUMBER }}-${{ hashFiles('env.yml') }}
- name: Setup conda
uses: conda-incubator/setup-miniconda<strong i="10">@v2</strong>
with:
python-version: 3.7
mamba-version: "*"
channels: conda-forge,defaults
channel-priority: true
use-only-tar-bz2: true
activate-environment: nova
miniconda ๋๋ miniforge ๋์ micromamba์ ๊ฐ์ ๊ฒ์ ์ฌ์ฉํ ์ ์์ต๋๊น?
์ธ๋ถ ์ฌํญ์ ๋ณด๋ฉด ํด๊ฒฐ ๋จ๊ณ๋ ์๊ฐ์ 99%๊ฐ ์์๋ฉ๋๋ค.
์ด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋๋ฉด miniforge ๊ฒฝ๋ก๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ด๊ฒ์ ์ ๊ณตํฉ๋๋ค :D
์ต๊ทผ์ ์ถ์๋ MambaForge ์ค์น ํ๋ก๊ทธ๋จ์ด CI๋ฅผ ๋ ๋น ๋ฅด๊ฒ ๋ง๋ ๋ค๋ ๊ฒ์ ํ์ธํ์ต๋๋ค.
- name: Setup conda
uses: conda-incubator/setup-miniconda<strong i="6">@v2</strong>
with:
installer-url: https://github.com/conda-forge/miniforge/releases/download/4.9.2-2/Mambaforge-Linux-x86_64.sh
channel-priority: true
use-only-tar-bz2: true
activate-environment: my-env
- name: Anaconda Login
run: |
# Bypass the installation of anaconda-client
TOKEN_DIR="$HOME/.config/binstar"
TOKEN_PATH="$TOKEN_DIR/https%3A%2F%2Fapi.anaconda.org.token"
mkdir -p $TOKEN_DIR
echo -e "${ANACONDA_USER_TOKEN}\c" > $TOKEN_PATH
- name: Install Dependencies
run: mamba env update -f env.yml
(์ค๋ํซ์๋ anaconda-client
๋ฅผ ์ค์นํ ํ์ ์์ด ์๋์ฝ๋ค์ ๋ก๊ทธ์ธํ๋ ๋ฐฉ๋ฒ๋ ํฌํจ๋์ด ์์ต๋๋ค. ์ฌ๊ธฐ์์ ๋์์ด ๋ ์ ์์ต๋๋ค.)
mamba-version
๋ ์ด๋ป๊ฒ ์๋ํฉ๋๊น? ํ์ํ๊ฐ? ๊ธฐ์กด mamba
๊ฐ ์ด๋ฏธ ์๋์ง ์ฌ๋ถ๋ฅผ ํ์ธํด์ผ ํฉ๋๊น?
์ข์ ์ง๋ฌธ์ด๊ณ ์ฌ์ค ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ์ ์ค์น ํ๋ก๊ทธ๋จ์ ๊ธฐ๋ณธ์ ์ผ๋ก mamba
๋ฐฐ์ก๋๋ฉฐ mamba-version
์์ด ์ง์ ์ฌ์ฉํฉ๋๋ค.
๋ด ํ๊ฒฝ์ ์ค์นํ๊ธฐ ์ํด setup-conda
์ ์์กดํ์ง ์๋๋ก ๋จผ์ anaconda์ ๋ก๊ทธ์ธํด์ผ ํฉ๋๋ค(์ค๋ํซ ์ฐธ์กฐ).
setup-conda
๋ฅผ ์ฌ์ฉํ์ฌ env ํ์ผ์ ์ค์นํ๋ ค๋ฉด setup-conda
๋ฅผ ์์ ํ์ฌ ์ค์ ๋ก mamba๋ฅผ ํ์ธํ๊ณ ์กด์ฌํ๋ ๊ฒฝ์ฐ ์ค์น๋ฅผ ์ฐํํด์ผ ํฉ๋๋ค.
@conda-incubator/setup-miniconda-team์ ๋๊ตฐ๊ฐ๊ฐ ํ์ธํ ์ ์์ต๋๊น?
_๋์คํฌ์ ์๋ ๊ฒ์ ์ฌ์ฉ_ vs _์ฐ๋ฆฌ๊ฐ 50๋
๋์ ์์ธกํ ์ ์์๋ ์ฒด๊ณ๋ก URL์์ ์ค์น ํ๋ก๊ทธ๋จ์ ๊ฐ์ ธ์ค๊ณ _ ํ์ฌ ์ฝ๋์ ๋์ w/r/t to mamba
๋ณด๋ค _๋ง์_ ๊ฐ๋์ ์ธ ๋ถ๋ถ์ด ๋ ๋ง์ด ์์ต๋๋ค.
๋๋๊ฑฐ์ผ ๋ด๊ธฐ, ๋น์ ์ ์ ๊ณตํ๋ ๊ฒฝ์ฐ mamba-version
, ๊ทธ๊ฒ์ _still_ ์ค์นํ๋ ค๊ณ ํ๋ ๊ฒ์
๋๋ค mamba
์์ conda-forge
๊ฐ ์ด๋ฏธ, ๊ทธ๋ฆฌ๊ณ _still_ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์๋ conda
ํ๊ฒฝ ๋ฌธ์ ๋ฅผ _์ ์ธํ_ ๋ชจ๋ ๊ฒ์ ๋ํด conda config
). ์ด๋ ์ค์น ํ ๋์คํฌ์ ์ด๋ฏธ ์๋ ๋๋ถ๋ถ์ ์ด์ ์ ๋ฌดํจํํฉ๋๋ค. mamba
๊ฐ ์๋ ์ด๋ฌํ ์ค์น ํ๋ก๊ทธ๋จ์ 13์๊ฐ ์ ๊น์ง ์กด์ฌํ์ง ์์๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๊ฐ ๋์ง ์์์ต๋๋ค... ์ ์๊ฐ์๋ conda-exe: mamba
์ ๊ฐ์ ๊ฒ์ด ํ์ํ ๊ฒ์
๋๋ค. ์ฌ์ฉ ๊ฐ๋ฅํ๋๋ผ๋ ์ฌ์ฉํ๊ณ ์ถ์ง ์์ ์ ์์ผ๋ฉฐ ๋ด์ผ The Next Installer์ The Next Tool( lambada
, tarantala
)์ด ์์ ์ ์์ต๋๋ค.
์ฌํํผ, ์ด๋ฌํ ๋ฌธ์ ์ค ์ผ๋ถ๋ฅผ ์์ ํ๋ ค๋ฉด ์๋นํ ๊ณผ๊ฐํ ๊ตฌ์กฐ ์กฐ์ ์ด ํ์ํ๋ค๊ณ ๋๊ผ์ต๋๋ค... #107(์ด๋ #108, #109, ... ๊ฒํ ๋๊ธฐ ์ค)์ ๋ํด ๋ค์์ ์ํด ์ต์ ์ ๋คํ์ต๋๋ค. X, ์ฌ๊ธฐ์ X๋ 1/2 ํ์ผ PR์ผ ์ ์์ต๋๋ค. ๋ฐ๋ผ๊ฑด๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ณ ์ฑ๋ฅ์ ํด๊ฒฐํ ์ ์๋ ๋จ๊ณ์ ๋๋ฌํ ์ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ํ์ง๋ง ํ์ฌ ๊ธฐ์ ์ ์ธ ๋ถ์ฑ๋ฅผ ๋จผ์ ํด๊ฒฐํ์ง ์์ผ๋ฉด ์ํฉ์ด ๋ ์ ํ๋ ๊น ๋๋ ต์ต๋๋ค.
conda-incubator/setup-miniconda@master
๋ ์ด์ (์ ์ ๋์) ๋ค์ ์กฐํฉ์ ์ง์ํ์ต๋๋ค.
miniforge-variable: Mambaforge
use-mamba: true
์ ์ฒด conda+python+mamba ์ค์น๊ฐ ํ ์ ์๋ ๋ฒ์ ๋ด์์ ๋ฉ์ผ์ ๋๋ถ๋ถ ์๋ตํด์ผ ํฉ๋๋ค. Micromamba๋ ์ต๊ทผ์ ๋ง์ ์ ๋ฐ์ดํธ๋ฅผ ๋ฐ์์ง๋ง ๋ค๋ฅธ ๊ณต๊ธ์์ ๋์ผํ ์์ค์ผ๋ก ์ง์/ํ ์คํธํ๊ณ ์ถ์์ง ์ฌ๋ถ๋ฅผ ์์ง ํ๊ฐํ ์ ์์์ต๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
_๋์คํฌ์ ์๋ ๊ฒ์ ์ฌ์ฉ_ vs _์ฐ๋ฆฌ๊ฐ 50๋ ๋์ ์์ธกํ ์ ์์๋ ์ฒด๊ณ๋ก URL์์ ์ค์น ํ๋ก๊ทธ๋จ์ ๊ฐ์ ธ์ค๊ณ _ ํ์ฌ ์ฝ๋์ ๋์ w/r/t to
mamba
๋ณด๋ค _๋ง์_ ๊ฐ๋์ ์ธ ๋ถ๋ถ์ด ๋ ๋ง์ด ์์ต๋๋ค.๋๋๊ฑฐ์ผ ๋ด๊ธฐ, ๋น์ ์ ์ ๊ณตํ๋ ๊ฒฝ์ฐ
mamba-version
, ๊ทธ๊ฒ์ _still_ ์ค์นํ๋ ค๊ณ ํ๋ ๊ฒ์ ๋๋คmamba
์์conda-forge
๊ฐ ์ด๋ฏธ, ๊ทธ๋ฆฌ๊ณ _still_ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์๋conda
ํ๊ฒฝ ๋ฌธ์ ๋ฅผ _์ ์ธํ_ ๋ชจ๋ ๊ฒ์ ๋ํดconda config
). ์ด๋ ์ค์น ํ ๋์คํฌ์ ์ด๋ฏธ ์๋ ๋๋ถ๋ถ์ ์ด์ ์ ๋ฌดํจํํฉ๋๋ค.mamba
๊ฐ ์๋ ์ด๋ฌํ ์ค์น ํ๋ก๊ทธ๋จ์ 13์๊ฐ ์ ๊น์ง ์กด์ฌํ์ง ์์๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๊ฐ ๋์ง ์์์ต๋๋ค... ์ ์๊ฐ์๋conda-exe: mamba
์ ๊ฐ์ ๊ฒ์ด ํ์ํ ๊ฒ์ ๋๋ค. ์ฌ์ฉ ๊ฐ๋ฅํ๋๋ผ๋ ์ฌ์ฉํ๊ณ ์ถ์ง ์์ ์ ์์ผ๋ฉฐ ๋ด์ผ The Next Installer์ The Next Tool(lambada
,tarantala
)์ด ์์ ์ ์์ต๋๋ค.์ฌํํผ, ์ด๋ฌํ ๋ฌธ์ ์ค ์ผ๋ถ๋ฅผ ์์ ํ๋ ค๋ฉด ์๋นํ ๊ณผ๊ฐํ ๊ตฌ์กฐ ์กฐ์ ์ด ํ์ํ๋ค๊ณ ๋๊ผ์ต๋๋ค... #107(์ด๋ #108, #109, ... ๊ฒํ ๋๊ธฐ ์ค)์ ๋ํด ๋ค์์ ์ํด ์ต์ ์ ๋คํ์ต๋๋ค. X, ์ฌ๊ธฐ์ X๋ 1/2 ํ์ผ PR์ผ ์ ์์ต๋๋ค. ๋ฐ๋ผ๊ฑด๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ณ ์ฑ๋ฅ์ ํด๊ฒฐํ ์ ์๋ ๋จ๊ณ์ ๋๋ฌํ ์ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ํ์ง๋ง ํ์ฌ ๊ธฐ์ ์ ์ธ ๋ถ์ฑ๋ฅผ ๋จผ์ ํด๊ฒฐํ์ง ์์ผ๋ฉด ์ํฉ์ด ๋ ์ ํ๋ ๊น ๋๋ ต์ต๋๋ค.