Skip to content

Commit eb0beff

Browse files
authored
Merge pull request #1 from oinopion/add-mise
Initial mise feature
2 parents dfff4b4 + d88d62e commit eb0beff

21 files changed

+111
-358
lines changed

.github/workflows/test.yaml

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,10 @@ jobs:
1313
strategy:
1414
matrix:
1515
features:
16-
- color
17-
- hello
16+
- mise
1817
baseImage:
19-
- debian:latest
20-
- ubuntu:latest
2118
- mcr.microsoft.com/devcontainers/base:ubuntu
19+
- mcr.microsoft.com/devcontainers/base:debian
2220
steps:
2321
- uses: actions/checkout@v3
2422

@@ -34,8 +32,7 @@ jobs:
3432
strategy:
3533
matrix:
3634
features:
37-
- color
38-
- hello
35+
- mise
3936
steps:
4037
- uses: actions/checkout@v3
4138

@@ -45,14 +42,14 @@ jobs:
4542
- name: "Generating tests for '${{ matrix.features }}' scenarios"
4643
run: devcontainer features test -f ${{ matrix.features }} --skip-autogenerated --skip-duplicated .
4744

48-
test-global:
49-
runs-on: ubuntu-latest
50-
continue-on-error: true
51-
steps:
52-
- uses: actions/checkout@v3
45+
# test-global:
46+
# runs-on: ubuntu-latest
47+
# continue-on-error: true
48+
# steps:
49+
# - uses: actions/checkout@v3
5350

54-
- name: "Install latest devcontainer CLI"
55-
run: npm install -g @devcontainers/cli
51+
# - name: "Install latest devcontainer CLI"
52+
# run: npm install -g @devcontainers/cli
5653

57-
- name: "Testing global scenarios"
58-
run: devcontainer features test --global-scenarios-only .
54+
# - name: "Testing global scenarios"
55+
# run: devcontainer features test --global-scenarios-only .

src/color/README.md

Lines changed: 0 additions & 26 deletions
This file was deleted.

src/color/devcontainer-feature.json

Lines changed: 0 additions & 21 deletions
This file was deleted.

src/color/install.sh

Lines changed: 0 additions & 26 deletions
This file was deleted.

src/hello/README.md

Lines changed: 0 additions & 26 deletions
This file was deleted.

src/hello/devcontainer-feature.json

Lines changed: 0 additions & 22 deletions
This file was deleted.

src/hello/install.sh

Lines changed: 0 additions & 29 deletions
This file was deleted.

src/mise/README.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
2+
# Mise (mise)
3+
4+
Mise is a polyglot tool version manager. It replaces tools like asdf, nvm, pyenv, rbenv, etc.
5+
6+
## Example Usage
7+
8+
```json
9+
"features": {
10+
"ghcr.io/oinopion/devcontainer-features/mise:0": {}
11+
}
12+
```
13+
14+
## Options
15+
16+
| Options Id | Description | Type | Default Value |
17+
|-----|-----|-----|-----|
18+
19+
20+
21+
22+
---
23+
24+
_Note: This file was auto-generated from the [devcontainer-feature.json](devcontainer-feature.json). Add additional notes to a `NOTES.md`._

src/mise/devcontainer-feature.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"name": "Mise",
3+
"id": "mise",
4+
"version": "0.1.0",
5+
"description": "Mise is a polyglot tool version manager. It replaces tools like asdf, nvm, pyenv, rbenv, etc.",
6+
"options": {},
7+
"installsAfter": [
8+
"ghcr.io/devcontainers/features/common-utils"
9+
]
10+
}

src/mise/install.sh

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
#!/bin/sh
2+
set -e
3+
4+
echo "Activating feature 'mise'"
5+
6+
7+
# The 'install.sh' entrypoint script is always executed as the root user.
8+
#
9+
# These following environment variables are passed in by the dev container CLI.
10+
# These may be useful in instances where the context of the final
11+
# remoteUser or containerUser is useful.
12+
# For more details, see https://containers.dev/implementors/features#user-env-var
13+
# echo "The effective dev container remoteUser is '$_REMOTE_USER'"
14+
# echo "The effective dev container remoteUser's home directory is '$_REMOTE_USER_HOME'"
15+
16+
# echo "The effective dev container containerUser is '$_CONTAINER_USER'"
17+
# echo "The effective dev container containerUser's home directory is '$_CONTAINER_USER_HOME'"
18+
19+
20+
INSTALL_SCRIPT_URL="https://mise.run"
21+
INSTALL_PATH="/usr/local/bin"
22+
23+
curl $INSTALL_SCRIPT_URL | MISE_INSTALL_PATH="/usr/local/bin/mise" sh
24+
25+
echo 'eval "$(mise activate bash)"' >> "${_REMOTE_USER_HOME}/.bashrc"
26+
echo 'eval "$(mise activate zsh)"' >> "${_REMOTE_USER_HOME}/.zshrc"
27+
mkdir -p /etc/fish/conf.d/
28+
echo 'mise activate fish | source' >> /etc/fish/conf.d/mise.fish
29+
30+
# TODO: add shell completions
31+
# USAGE_VERSION="latest" # But for mise tool spec we need string "latest"
32+
# mise install "usage@${USAGE_VERSION}"
33+
# usage_binary=(mise which usage --tool="usage@${USAGE_VERSION}")
34+
# cp "${usage_binary}" ${INSTALL_PATH}
35+
# mise completion fish > /etc/fish/completions/mise.fish

test/_global/color_and_hello.sh

Lines changed: 0 additions & 33 deletions
This file was deleted.

test/_global/scenarios.json

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1 @@
1-
{
2-
"color_and_hello": {
3-
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
4-
"features": {
5-
"color": {
6-
"favorite": "purple"
7-
},
8-
"hello": {
9-
"greeting": "Greetings"
10-
}
11-
}
12-
}
13-
}
1+
{}

test/color/green.sh

Lines changed: 0 additions & 17 deletions
This file was deleted.

test/color/my_favorite_color_is_green.sh

Lines changed: 0 additions & 31 deletions
This file was deleted.

0 commit comments

Comments
 (0)