fix: nu
This commit is contained in:
50
.github/actions/setup-shell-tools/action.yml
vendored
Normal file
50
.github/actions/setup-shell-tools/action.yml
vendored
Normal file
@@ -0,0 +1,50 @@
|
||||
name: 'Setup Shell Tools'
|
||||
description: 'Sets up Nushell and Just for cross-platform development'
|
||||
branding:
|
||||
icon: 'terminal'
|
||||
color: 'purple'
|
||||
|
||||
outputs:
|
||||
nu-version:
|
||||
description: 'Installed Nushell version'
|
||||
value: ${{ steps.nu-info.outputs.version }}
|
||||
just-version:
|
||||
description: 'Installed Just version'
|
||||
value: ${{ steps.just-info.outputs.version }}
|
||||
|
||||
runs:
|
||||
using: 'composite'
|
||||
steps:
|
||||
- name: Setup Nushell
|
||||
run: |
|
||||
# Install Nushell following official docs
|
||||
curl -s https://api.github.com/repos/nushell/nushell/releases/latest \
|
||||
| grep "browser_download_url.*x86_64-unknown-linux-gnu" \
|
||||
| cut -d : -f 2,3 \
|
||||
| tr -d \" \
|
||||
| wget -qi -
|
||||
tar xf nu-*-x86_64-unknown-linux-gnu.tar.gz
|
||||
sudo mkdir -p /usr/local/bin
|
||||
sudo cp nu-*/nu /usr/local/bin/
|
||||
sudo chmod +x /usr/local/bin/nu
|
||||
echo "/usr/local/bin" >> $GITHUB_PATH
|
||||
# Add to current PATH for immediate use
|
||||
export PATH="/usr/local/bin:$PATH"
|
||||
# Verify installation and set as default shell
|
||||
nu --version
|
||||
echo "SHELL=/usr/local/bin/nu" >> $GITHUB_ENV
|
||||
shell: bash
|
||||
|
||||
- name: Get Nushell version
|
||||
id: nu-info
|
||||
run: echo "version=$(/usr/local/bin/nu --version | head -n1)" >> $GITHUB_OUTPUT
|
||||
shell: bash
|
||||
|
||||
- name: Setup Just
|
||||
uses: extractions/setup-just@v2
|
||||
shell: bash
|
||||
|
||||
- name: Get Just version
|
||||
id: just-info
|
||||
run: echo "version=$(just --version)" >> $GITHUB_OUTPUT
|
||||
shell: bash
|
||||
54
.github/workflows/ci.yml
vendored
54
.github/workflows/ci.yml
vendored
@@ -17,30 +17,23 @@ jobs:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Shell Tools
|
||||
uses: ./.github/actions/setup-shell-tools
|
||||
|
||||
- name: Setup Bun
|
||||
uses: oven-sh/setup-bun@v2
|
||||
with:
|
||||
bun-version: '1.2.20'
|
||||
|
||||
- name: Setup Nushell
|
||||
run: |
|
||||
# Install Nushell following official docs
|
||||
curl -s https://api.github.com/repos/nushell/nushell/releases/latest \
|
||||
| grep "browser_download_url.*x86_64-unknown-linux-gnu" \
|
||||
| cut -d : -f 2,3 \
|
||||
| tr -d \" \
|
||||
| wget -qi -
|
||||
tar xf nu-*-x86_64-unknown-linux-gnu.tar.gz
|
||||
sudo mkdir -p /usr/local/bin
|
||||
sudo cp nu-*/nu /usr/local/bin/
|
||||
sudo chmod +x /usr/local/bin/nu
|
||||
echo "/usr/local/bin" >> $GITHUB_PATH
|
||||
# Verify installation and set as default shell
|
||||
/usr/local/bin/nu --version
|
||||
echo "SHELL=/usr/local/bin/nu" >> $GITHUB_ENV
|
||||
|
||||
- name: Setup Just
|
||||
uses: extractions/setup-just@v2
|
||||
- name: Cache dependencies
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
~/.bun/install/cache
|
||||
node_modules
|
||||
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-bun-
|
||||
|
||||
- name: Install dependencies
|
||||
run: just install
|
||||
@@ -61,31 +54,14 @@ jobs:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Shell Tools
|
||||
uses: ./.github/actions/setup-shell-tools
|
||||
|
||||
- name: Setup Bun
|
||||
uses: oven-sh/setup-bun@v2
|
||||
with:
|
||||
bun-version: '1.2.20'
|
||||
|
||||
- name: Setup Nushell
|
||||
run: |
|
||||
# Install Nushell following official docs
|
||||
curl -s https://api.github.com/repos/nushell/nushell/releases/latest \
|
||||
| grep "browser_download_url.*x86_64-unknown-linux-gnu" \
|
||||
| cut -d : -f 2,3 \
|
||||
| tr -d \" \
|
||||
| wget -qi -
|
||||
tar xf nu-*-x86_64-unknown-linux-gnu.tar.gz
|
||||
sudo mkdir -p /usr/local/bin
|
||||
sudo cp nu-*/nu /usr/local/bin/
|
||||
sudo chmod +x /usr/local/bin/nu
|
||||
echo "/usr/local/bin" >> $GITHUB_PATH
|
||||
# Verify installation and set as default shell
|
||||
/usr/local/bin/nu --version
|
||||
echo "SHELL=/usr/local/bin/nu" >> $GITHUB_ENV
|
||||
|
||||
- name: Setup Just
|
||||
uses: extractions/setup-just@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: just install
|
||||
|
||||
|
||||
Reference in New Issue
Block a user