Skip to content

Commit

Permalink
fixup! CI: Add cheshire CI
Browse files Browse the repository at this point in the history
Signed-off-by: Nils Wistoff <[email protected]>
  • Loading branch information
niwis committed Feb 20, 2024
1 parent dc18e2f commit 17b9da2
Show file tree
Hide file tree
Showing 2 changed files with 52 additions and 11 deletions.
56 changes: 46 additions & 10 deletions .github/workflows/cheshire.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,58 @@
# SPDX-License-Identifier: Apache-2.0

name: cheshire
on: [push, pull_request]
on: [push, pull_request_target]

jobs:
init:
name: init
trigger_cheshire_ci:
name: Trigger Cheshire CI
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Checkout Cheshire
uses: actions/checkout@v4
with:
repository: pulp-platform/cheshire
path: cheshire
ref: cva6/pulp-v1.0.0
run-cheshire-ci:
name: run-cheshire-ci
needs: init-cheshire
uses: pulp-platform/cheshire/.github/workflows/lint.yml@cva6/pulp-v1.0.0
token: ${{ secrets.CHESHIRE_TOKEN }}
- name: Install Python
uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Install Python requirements
shell: bash
# PIP has very noisy, uncollapsible output, making following script output hard to read
run: pip install --disable-pip-version-check --quiet --progress-bar off requests urllib3
- name: Patch Bender.lock
run: "sed -i \"/ cva6:/{n;s/.*/ revision: $GITHUB_SHA/;}\" Bender.lock"
- name: Commit ref
run: |
git checkout -b cva6-ci/$(git rev-parse --short "$GITHUB_SHA")
git add Bender.lock
git -c user.name='CVA6 CI Bot' -c user.email='[email protected]' commit -m "CVA6 regression test"
- name: Push ref
run: git push --set-upstream origin cva6-ci/$(git rev-parse --short "$GITHUB_SHA")
- name: Wait for Cheshire CI
run: |
python3 -c "import requests; \
poll_count = 720; \
poll_period = 10; \
api_version = '2022-11-28'; \
check_runs_url = 'https://api.github.com/repos/pulp-platform/cheshire/commits/cva6-ci/' + '$(git rev-parse --short $GITHUB_SHA)' + '/check-runs'; \
headers = {'Accept': 'application/vnd.github+json', \
'Authorization': 'Bearer ${{ secrets.CHESHIRE_TOKEN }}', \
'X-GitHub-Api-Version': api_version}; \
for i in range(1, poll_count + 1): \
response = requests.get(check_runs_url, headers=headers).json(); \
pending = sum(1 for r in response['check_runs'] if r['status'] == 'in_progress'); \
failed = sum(1 for r in response['check_runs'] if r.get('conclusion') == 'failure'); \
if failed: \
print(f'[{i * poll_period}s] Pipeline failure!'); \
exit(1); \
if not pending: \
print(f'[{i * poll_period}s] Pipeline success!'); \
exit(0); \
print(f'[{i * poll_period}s] Pipelines still in progress...'); \
import time; time.sleep(poll_period); \
else: \
print(f'[{poll_count * poll_period}s] Pipeline completion timeout!'); \
exit(3);"
7 changes: 6 additions & 1 deletion .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,14 @@
stages:
- cheshire

default:
before_script:
- cd cheshire

init:
stage: cheshire
before_script:
- echo $PWD
script:
- git clone https://github.com/pulp-platform/cheshire
- cd cheshire
Expand All @@ -22,7 +28,6 @@ init:
cheshire-pipeline:
stage: cheshire
needs: [ init ]
before_script: cd cheshire
trigger:
include:
- artifact: cheshire/.gitlab-ci.yml
Expand Down

0 comments on commit 17b9da2

Please sign in to comment.