Skip to content

Bump actions/checkout from 4.0.0 to 4.1.1 #2530

Bump actions/checkout from 4.0.0 to 4.1.1

Bump actions/checkout from 4.0.0 to 4.1.1 #2530

Workflow file for this run

# This is a basic workflow
name: ci
# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the main branch
on:
push:
branches: ["main", "devel/*"]
pull_request:
branches: ["main", "devel/*"]
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
env:
FORCE_COLOR: "1" # make mocha output colorful
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
build:
name: ${{ matrix.name }}
# ${{ matrix.name && matrix.name || format('{0} ({1})', matrix.task-name, matrix.os) }}
# The type of runner that the job will run on
runs-on: ${{ matrix.os }}
# see https://github.com/containers/podman/issues/13609
continue-on-error: ${{ contains(matrix.name, 'macos') && true || false }}
strategy:
fail-fast: false
matrix:
# Avoid letting github do the matrix multiplication and use manual
# includes for each job, this gives us fine control over job name.
continue-on-error:
- false
os:
- ubuntu-22.04
task-name:
- test
upload-artifact:
- false
name:
- test
include:
- name: lint
task-name: lint
os: ubuntu-22.04
upload-artifact: true
env:
SKIP_PODMAN: 1
SKIP_DOCKER: 1
- name: devel
# this job will install latest version of ansible-language-server
# instead of the one mentioned in lock file
task-name: devel
os: ubuntu-22.04
- name: test (macos)
task-name: test
os: macos-12
env:
SKIP_PODMAN: 1
SKIP_DOCKER: 1
# only until we fix some broken tests, as we need it to pass
# in order to enable the caching
continue-on-error: true
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Checkout vscode-ansible
uses: actions/[email protected]
- name: Install Task
uses: arduino/setup-task@v1
with:
version: 3.x
repo-token: ${{ secrets.GITHUB_TOKEN }}
- name: Setup yarn
run: yarn set version latest
- name: Setup python
uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Enable caching
uses: actions/cache@v3
with:
path: |
.vscode-test
.yarn/cache
out/ext
out/test-resources
out/test-resources-oldest
~/.cache/pip
~/.cache/yarn
key: ${{ runner.os }}-${{ matrix.task-name }}-${{ hashFiles('package.json', 'yarn.lock', '.config/requirements.txt', 'tools/*.*') }}
- name: Enable caching for podman-machine
if: "contains(matrix.os, 'macos')"
uses: actions/cache@v3
with:
path: |
~/.local/share/containers
~/.config/containers
key: ${{ runner.os }}-${{ matrix.task-name }}-${{ hashFiles('package.json', 'yarn.lock', '.config/requirements.txt', '**/Taskfile.yml', 'tools/*.*') }}
- name: Use NodeJS v18
uses: actions/setup-node@v3
with:
node-version: 18
- name: task setup
run: task setup
## uncomment to debug on GHA runner
# - name: Setup tmate session
# uses: mxschmitt/action-tmate@v3
- name: task package
run: task package --output=group --output-group-begin='::group::{{.TASK}}' --output-group-end='::endgroup::'
- name: task ${{ matrix.task-name }}
env:
TEST_LIGHTSPEED_ACCESS_TOKEN: ${{ secrets.TEST_LIGHTSPEED_ACCESS_TOKEN }}
TEST_LIGHTSPEED_URL: ${{ secrets.TEST_LIGHTSPEED_URL }}
# xvfb needed for chrome headless tests
uses: coactions/setup-xvfb@v1
with:
run: task ${{ matrix.task-name }} --output=group --output-group-begin='::group::{{.TASK}}' --output-group-end='::endgroup::'
continue-on-error: ${{ matrix.continue-on-error || false }}
- name: Upload vsix artifact
if: ${{ github.event.number && matrix.upload-artifact }}
uses: actions/upload-artifact@v3
with:
name: ansible-extension-from-pr-${{ github.event.number }}.vsix
path: ansible-*.vsix
retention-days: 15
- name: Upload test logs
if: ${{ always() }}
uses: actions/upload-artifact@v3
with:
name: logs-${{ matrix.os }}-${{ matrix.task-name }}.zip
path: |
out/e2eTestReport
out/log
out/test-resources/settings/logs
out/userdata/logs
if-no-files-found: ignore
retention-days: 15
- name: Stop services
if: "contains(matrix.os, 'macos')"
# Stopping podman machine is needed or caching it will fail
run: |
command -v podman && {
podman machine stop
while [[ "$(podman machine ls --format '{{.Running}}' \
--noheading || true)" != "false" ]]; do
sleep 1
echo -n .
done
echo .
}
continue-on-error: true
## commented out for future use to debug on the GHA node if required
# - name: Setup tmate session
# if: ${{ always() }}
# uses: mxschmitt/action-tmate@v3
check: # This job does nothing and is only used for the branch protection
if: always()
needs:
- build
runs-on: ubuntu-22.04
steps:
- name: Decide whether the needed jobs succeeded or failed
uses: re-actors/alls-green@release/v1
with:
jobs: ${{ toJSON(needs) }}