From 2c66ea2e8d2ab53ab59eab783af36e94e610d1ac Mon Sep 17 00:00:00 2001 From: Benjamin Lupton Date: Sun, 3 Sep 2023 02:17:06 +0800 Subject: [PATCH] ci: nu: debug its crash, and trim other tests --- .github/workflows/dorothy-workflow.yml | 157 +------------------------ 1 file changed, 4 insertions(+), 153 deletions(-) diff --git a/.github/workflows/dorothy-workflow.yml b/.github/workflows/dorothy-workflow.yml index 36c05b8d6..7425ebc4b 100755 --- a/.github/workflows/dorothy-workflow.yml +++ b/.github/workflows/dorothy-workflow.yml @@ -8,168 +8,19 @@ concurrency: jobs: homebrew-macos-checks: runs-on: macos-latest - env: - CI_COMMIT_MESSAGE: 'ci: adjustments' - CI_COMMIT_NAME: 'Continuous Integration' - CI_COMMIT_EMAIL: 'bot@bevry.me' steps: - - name: 'Dorothy Install' + - name: 'Nu + Dorothy Install' env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # prevent rate limiting shell: bash run: | + # install nu so is available to dorothy's install configuration + brew install nushell # ensure dorothy is cloned, and run command bash -c "$(curl -fsSL 'https://dorothy.bevry.me/install?branch=${{ github.ref_name }}&commit=${{ github.sha }}')" - - name: 'Dorothy Configure' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # prevent rate limiting - shell: bash -leo pipefail {0} - run: | - # prep linting - dorothy dev - # prep login shells - setup-util-bash - setup-util-zsh - setup-util-fish - setup-util-nu - dorothy install - - name: 'Dorothy Login Shell: bash' - shell: bash -leo pipefail {0} - run: | - command-exists dorothy - echo-style --success='ok' - - name: 'Dorothy Login Shell: zsh' - shell: zsh -l {0} - run: | - command-exists dorothy - echo-style --success='ok' - - name: 'Dorothy Login Shell: fish' - shell: fish -l {0} - run: | - command-exists dorothy - echo-style --success='ok' - name: 'Dorothy Login Shell: nu' - shell: nu -l -e {0} + shell: RUST_BACKTRACE=1 nu -l -e {0} run: | command-exists dorothy echo-style --success='ok' exit - - name: 'Trunk Format' - if: github.event_name == 'push' - shell: bash -leo pipefail {0} - run: | - dorothy format - # commit changes, if any - cd "$DOROTHY" - if git diff --quiet &>/dev/null; then - echo 'Already formatted.' - else - git config --global user.name "${{ env.CI_COMMIT_NAME }}" - git config --global user.email "${{ env.CI_COMMIT_EMAIL }}" - git commit -a -m "${{ env.CI_COMMIT_MESSAGE }}" - git push - fi - - name: 'Trunk Check' - shell: bash -leo pipefail {0} - run: dorothy check - homebrew-macos-test: - runs-on: macos-latest - steps: - - name: 'Dorothy Test' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # prevent rate limiting - shell: bash - run: | - # ensure dorothy is cloned, and run command - bash -c "$(curl -fsSL 'https://dorothy.bevry.me/run?branch=${{ github.ref_name }}&commit=${{ github.sha }}')" -- dorothy test - fresh-macos-test: - runs-on: macos-latest - steps: - - name: 'Uninstall Homebrew' - shell: bash - run: | - # run homebrew uninstaller - bash -c "$(curl -fsSL 'https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh')" - - name: 'Dorothy Test' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # prevent rate limiting - shell: bash - run: | - # ensure dorothy is cloned, and run command - bash -c "$(curl -fsSL 'https://dorothy.bevry.me/run?branch=${{ github.ref_name }}&commit=${{ github.sha }}')" -- dorothy test - distro-test: - continue-on-error: true - runs-on: ubuntu-latest - strategy: - matrix: - container: - - 'ubuntu:latest' # https://hub.docker.com/_/ubuntu - - 'fedora:latest' # https://hub.docker.com/_/fedora - - 'debian:latest' # https://hub.docker.com/_/debian - - 'alpine:latest' # https://hub.docker.com/_/alpine <-- script -qec workaround for TTY does not work on alpine - - 'manjarolinux/base' # https://hub.docker.com/r/manjarolinux/base - - 'opensuse/leap' # https://hub.docker.com/r/opensuse/leap <-- has outdated bash, so is good to test - - 'opensuse/tumbleweed' # https://hub.docker.com/r/opensuse/tumbleweed - - 'kalilinux/kali-rolling' # https://hub.docker.com/r/kalilinux/kali-rolling <-- apt based - - 'voidlinux/voidlinux' # https://hub.docker.com/r/voidlinux/voidlinux <-- locale failure - # - 'mageia:cauldron' # https://hub.docker.com/_/mageia <-- cauldron is were moreutils is, disabled as couldn't get working - # - 'nixos/nix' # https://hub.docker.com/r/nixos/nix <-- doesn't make bash available to env, also locale failure - # - 'gentoo/stage3' # https://hub.docker.com/r/gentoo/stage3 <-- couldn't get to work due to home misconfigure error - container: - image: ${{ matrix.container }} - steps: - - name: 'Dorothy Dependencies' - # don't use [shell: bash] here yet for linux distros, as may not exist yet - run: | - # this should somewhat coincide with [commands/dorothy:ensure_prereq_dependencies] - if command -v apt-get; then - # for ubuntu/debian/kali - apt-get update - apt-get install -y bash curl git - elif command -v zypper; then - # for opensuse - zypper --non-interactive --gpg-auto-import-keys refresh - zypper --non-interactive install bash curl - elif command -v apk; then - # for alpine - apk update - apk add bash curl git grep - elif command -v pamac; then - # for manjaro, prefer over arch as majaro also contains pacman - pamac install --no-confirm bash curl - elif command -v pacman; then - # for arch - pacman-key --init - pacman --refresh --sync --needed --noconfirm bash curl - elif command -v urpmi; then - # for mageia, prefer over fedora as mageia also contains dnf - # https://wiki.mageia.org/en/Cauldron - # --allowerasing needed due to: https://github.com/bevry/dorothy/actions/runs/6033044029/job/16369147940 - # urpmi --auto-update --auto - # dnf check-update --assumeyes - # dnf upgrade --assumeyes --refresh --best --allowerasing - # ^ disabled as always fails - urpmi.update -a - # ^ this fails too: https://github.com/bevry/dorothy/actions/runs/6033557632/job/16370418074 - urpmi --auto bash curl - elif command -v dnf; then - # for fedora - dnf --assumeyes --refresh --best --allowerasing install bash curl - elif command -v xbps-install; then - # for void linux - xbps-install --sync --update --yes xbps - xbps-install --sync --yes bash curl - elif command -v nix-env; then - # for nix - nix-env --install --attr nixpkgs.bash nixpkgs.curl - elif command -v emerge; then - # for gentoo - emerge app-shells/bash net-misc/curl - fi - - name: 'Dorothy Remote Tests' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # prevent rate limiting - shell: bash - run: | - # ensure dorothy is cloned, and run command - bash -c "$(curl -fsSL 'https://dorothy.bevry.me/run?branch=${{ github.ref_name }}&commit=${{ github.sha }}')" -- dorothy test