diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml new file mode 100644 index 0000000..db653f0 --- /dev/null +++ b/.github/workflows/tests.yml @@ -0,0 +1,57 @@ +name: urchin tests + +on: [push] + +jobs: + tests: + permissions: + contents: write + + name: "tests" + runs-on: ubuntu-latest + defaults: + run: + shell: 'script -q -e -c "${{ matrix.shell }} {0}"' + + strategy: + fail-fast: false + matrix: + include: + - shell: bash + suite: install_script + # shell: + # - bash + # suite: + # - install_script + + steps: + - name: Harden Runner + uses: step-security/harden-runner@v1 + with: + allowed-endpoints: + github.com:443 + registry.npmjs.org:443 + raw.githubusercontent.com:443 + nodejs.org:443 + iojs.org:443 + - uses: actions/checkout@v3 + - run: sudo ${{ matrix.shell }} --version 2> /dev/null || dpkg -s ${{ matrix.shell }} 2> /dev/null || which ${{ matrix.shell }} + - run: curl --version + - run: wget --version + - uses: ljharb/actions/node/run@main + name: 'npm install && version checks' + with: + node-version: 'lts/*' + skip-ls-check: true + shell-command: echo installed + - run: npm ls urchin + - run: npm bin + - run: env + - run: make TERM=xterm-256color TEST_SUITE="${{ matrix.suite }}" SHELL="${{ matrix.shell }}" URCHIN="$(npm bin)/urchin" test-${{ matrix.shell }} + + nvm: + name: 'all test suites, all shells' + needs: [tests] + runs-on: ubuntu-latest + steps: + - run: 'echo tests completed' diff --git a/.travis.yml b/.travis.yml index 92de344..35348d8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -70,7 +70,6 @@ env: - PATH="/usr/lib/ccache/:$PATH" - NVM_DIR="${TRAVIS_BUILD_DIR}" matrix: - - SHELL=bash TEST_SUITE=install_script - SHELL=sh TEST_SUITE=fast - SHELL=dash TEST_SUITE=fast - SHELL=bash TEST_SUITE=fast