name: PR Checks on: - pull_request jobs: testing_matrix: strategy: matrix: os: [ubuntu-latest] folder: [cli, api, cmd, internal, provisioner] name: Running Go Tests runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v3 - name: Setup Go Cache uses: actions/cache@v3 with: path: | ~/.cache/go-build ~/go/pkg/mod key: porter-go-${{ hashFiles('**/go.sum') }} - name: Download Go Modules run: go mod download - uses: actions/setup-go@v4 with: go-version-file: go.mod cache: false go-version: '1.20.5' - name: Run Go vet run: go vet ./${{ matrix.folder }}/... - name: Run Go tests run: go test ./${{ matrix.folder }}/... build-npm: name: Running smoke test npm build runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Setup Node uses: actions/setup-node@v3 with: node-version: 16 - name: Setup NPM working-directory: dashboard run: | # installing updated npm # Verify npm works before capturing and ensure its stderr is inspectable later version="$(jq -r '.engines.npm' package.json)" npm --version 2>&1 1>/dev/null npm_version="$(npm --version)" echo "Bootstrapping npm $version (replacing $npm_version)..." npm install --unsafe-perm -g --quiet "npm@$version" # Verify npm works before capturing and ensure its stderr is inspectable later npm --version 2>&1 1>/dev/null echo "npm $(npm --version) installed" - name: Install NPM Dependencies working-directory: dashboard run: | npm i --legacy-peer-deps - name: Run NPM Build working-directory: dashboard run: | npm run build