Devbox
isolatedなdevelopment shellを立ち上げることができる
内部的にはNixを使っているが、Nixのインストールなどは不要 長所
プロジェクトごとにJSONファイルで必要なツールを定義することでportableになる code:devbox.json
{
"packages": [
"python@3.10",
"poetry@latest"
],
"shell": {
"init_hook": [
"poetry install"
],
"scripts": {
"start": "poetry run python -m main.py",
"test": "poetry run pytest"
}
},
"include": [
"github:my-org/mongodb"
]
}
どこでも利用できるので、ローカルでもクラウドでも開発環境をつくれる
code:devbox-workflow.yml
name: Test with Devbox
on: push
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install devbox
uses: jetify-com/devbox-install-action@v0.9.0
with:
enable_cache: 'true'
- name: Run a Test Script
run: devbox run test