# https://help.github.com/en/actions # https://github.com/actions # https://github.com/actions/checkout # https://github.com/actions/setup-node # TODO: add windows-latest after fixing CMake. # https://github.com/micro-os-plus/build-helper-xpack/actions/workflows/ci.yml name: CI on Push on: push: paths-ignore: - '.vscode/**' - 'LICENSE' - '**.md' - '.clang-format' - '.gitignore' - '.npmignore' # This should disable running the workflow on tags, according to the # on.<push|pull_request>.<branches|tags> GitHub Actions docs. # https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#onpushbranchestagsbranches-ignoretags-ignore branches: - '*' pull_request: jobs: ci-test: name: 'CI build-helper tests' runs-on: ${{ matrix.os }} strategy: matrix: # https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources os: [ubuntu-22.04, macos-12] # https://nodejs.org/en - use LTS node-version: [18] # https://www.npmjs.com/package/xpm xpm-version: ['0.16.2'] steps: - name: Checkout # https://github.com/actions/checkout uses: actions/checkout@v3 with: fetch-depth: 3 - name: Setup Node.js ${{ matrix.node-version }} on ${{ matrix.os }} # https://github.com/actions/setup-node uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} - name: Install xpm@${{ matrix.xpm-version }} on Unix if: runner.os != 'Windows' run: sudo npm install -g xpm@${{ matrix.xpm-version }} - name: Install xpm@${{ matrix.xpm-version }} on Windows if: runner.os == 'Windows' run: npm install -g xpm@${{ matrix.xpm-version }} - name: Show node & npm versions, environment run: | node --version npm --version xpm --version env | sort - name: Run test run: | xpm install xpm run test