diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 1052627..bf708ac 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,27 +13,21 @@ on: jobs: verify_exercises: - # TODO: replace with another image if required to run the tests (optional) + # apk has an old nu version, so alpine is used to ensure compatibility runs-on: ubuntu-24.04 steps: - name: Checkout repository uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - # TODO: setup any tooling that is required to run the tests (optional) - # E.g. install a specific version of a programming language - # E.g. install packages via apt/apk/yum/etc. - # Find GitHub Actions to setup tooling here: - # - https://github.com/actions/?q=setup&type=&language= - # - https://github.com/actions/starter-workflows/tree/main/ci - # - https://github.com/marketplace?type=actions&query=setup - # - name: Use - # uses: + - name: Use nushell + run: | + curl -L -o nu.tar.gz https://github.com/nushell/nushell/releases/download/0.104.1/nu-0.104.1-x86_64-unknown-linux-gnu.tar.gz && \ + tar -xzf nu.tar.gz && \ + sudo mv nu-0.104.1-x86_64-unknown-linux-gnu/* /usr/bin/ && \ + rm nu.tar.gz && \ + rm -r nu-0.104.1-x86_64-unknown-linux-gnu - # TODO: install any dependencies (optional) - # E.g. npm install, bundle install, etc. - # - name: Install project dependencies - # run: - name: Verify all exercises run: bin/verify-exercises diff --git a/bin/verify-exercises b/bin/verify-exercises index 269a608..57f18a8 100755 --- a/bin/verify-exercises +++ b/bin/verify-exercises @@ -42,7 +42,7 @@ unskip_tests() { } run_tests() { - noop # TODO: replace this with the command to run the tests for the exercise. + nu tests.nu # Note: this function runs from within an exercise directory. # Note: the exercise directory is a temporary directory, so feel # free to modify its files as needed. @@ -68,7 +68,7 @@ verify_exercise() { cd "${tmp_dir}" copy_example_or_examplar_to_solution - unskip_tests + # unskip_tests # Nushell currently does not support skipping tests run_tests ) } diff --git a/config.json b/config.json index 3d5eee0..da5b69d 100644 --- a/config.json +++ b/config.json @@ -8,17 +8,17 @@ "representer": false, "analyzer": false }, - "blurb": "TODO: add blurb", + "blurb": "Nushell is a modern shell oriented around structured data and pipelines.", "version": 3, "online_editor": { "indent_style": "space", "indent_size": 4 }, "files": { - "solution": [], - "test": [], - "example": [], - "exemplar": [] + "solution": ["%{kebab_slug}.nu"], + "test": ["tests.nu"], + "example": [".meta/example.nu"], + "exemplar": [".meta/exemplar.nu"] }, "exercises": { "concept": [], @@ -35,5 +35,14 @@ }, "concepts": [], "key_features": [], - "tags": [] + "tags": [ + "paradigm/functional", + "typing/static", + "platform/windows", + "platform/mac", + "platform/linux", + "platform/android", + "runtime/language_specific", + "used_for/scripts" + ] }