Move check requirements to lint stage #339
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: Test bootstrapping a plugin | |
on: | |
pull_request: | |
branches: | |
- '*' | |
concurrency: | |
group: ${{ github.ref_name }}-${{ github.workflow }} | |
cancel-in-progress: true | |
defaults: | |
run: | |
working-directory: "pulp_catdog" | |
jobs: | |
check-commits: | |
runs-on: "ubuntu-latest" | |
steps: | |
- uses: "actions/checkout@v4" | |
with: | |
fetch-depth: 0 | |
path: "plugin_template" | |
- uses: "actions/setup-python@v5" | |
with: | |
python-version: "3.11" | |
- name: "Bootstrap catdog plugin" | |
working-directory: "plugin_template" | |
run: | | |
.ci/bootstrap_catdog.sh | |
# Below this line we include the steps of the ci workflow of the generated plugin | |
- name: "Install python dependencies" | |
run: | | |
echo ::group::PYDEPS | |
pip install requests pygithub | |
echo ::endgroup:: | |
- name: "Check commit message" | |
# This will fail for our fake plugin | |
if: false | |
env: | |
PY_COLORS: "1" | |
ANSIBLE_FORCE_COLOR: "1" | |
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" | |
GITHUB_CONTEXT: "${{ github.event.pull_request.commits_url }}" | |
run: | | |
.github/workflows/scripts/check_commit.sh | |
lint: | |
uses: "./.github/workflows/lint.yml" | |
build: | |
needs: "lint" | |
uses: "./.github/workflows/build.yml" | |
test: | |
needs: "build" | |
uses: "./.github/workflows/test.yml" | |
deprecations: | |
runs-on: "ubuntu-latest" | |
if: github.base_ref == 'main' | |
needs: "test" | |
steps: | |
- name: "Create working directory" | |
run: | | |
mkdir -p "pulp_catdog" | |
working-directory: "." | |
- name: "Download Deprecations" | |
uses: actions/download-artifact@v4 | |
with: | |
pattern: "deprecations-*" | |
path: "pulp_catdog" | |
merge-multiple: true | |
- name: "Print deprecations" | |
run: | | |
cat deprecations-*.txt | sort -u | |
! cat deprecations-*.txt | grep '[^[:space:]]' | |
ready-to-ship: | |
# This is a dummy dependent task to have a single entry for the branch protection rules. | |
runs-on: "ubuntu-latest" | |
needs: | |
- "check-commits" | |
- "lint" | |
- "test" | |
if: "always()" | |
steps: | |
- name: "Collect needed jobs results" | |
working-directory: "." | |
run: | | |
echo '${{toJson(needs)}}' | jq -r 'to_entries[]|select(.value.result!="success")|.key + ": " + .value.result' | |
echo '${{toJson(needs)}}' | jq -e 'to_entries|map(select(.value.result!="success"))|length == 0' | |
echo "CI says: Looks good!" |