[docs] Add automated testing philosophy documentation (#506) #12
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: Continuous integration | |
on: | |
pull_request: # All | |
push: | |
branches: | |
- main | |
jobs: | |
hygiene-tests: | |
name: Repository hygiene | |
runs-on: ubuntu-latest | |
steps: | |
- name: Job information | |
run: | | |
echo "Job information" | |
echo "Trigger: ${{ github.event_name }}" | |
echo "Host: ${{ runner.os }}" | |
echo "Repository: ${{ github.repository }}" | |
echo "Branch: ${{ github.ref }}" | |
docker images | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Python lint | |
run: make python-lint | |
- name: Automated hygiene verification | |
run: make check-hygiene | |
- name: uss_qualifier documentation validation | |
run: make validate-uss-qualifier-docs | |
- name: Shell lint | |
run: make shell-lint | |
mock_uss-test: | |
name: mock_uss tests | |
uses: ./.github/workflows/monitoring-test.yml | |
with: | |
name: mock_uss | |
script: | | |
cd monitoring/mock_uss | |
make test | |
uss_qualifier-test: | |
name: uss_qualifier tests | |
uses: ./.github/workflows/monitoring-test.yml | |
with: | |
name: uss_qualifier | |
script: | | |
export CONFIG_NAME="" | |
cd monitoring/uss_qualifier | |
make test | |
prober-test: | |
name: prober tests | |
uses: ./.github/workflows/monitoring-test.yml | |
with: | |
name: prober | |
script: | | |
cd monitoring/prober | |
make test | |
publish-gh-pages: | |
name: Publish GitHub Pages | |
needs: [hygiene-tests, mock_uss-test, uss_qualifier-test, prober-test] | |
if: ${{ always() && contains(join(needs.*.result, ','), 'success') }} | |
runs-on: ubuntu-latest | |
permissions: | |
contents: write | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
submodules: true | |
path: monitoring | |
- name: Get uss_qualifier reports | |
uses: actions/download-artifact@v3 | |
with: | |
name: monitoring-test-uss_qualifier-reports | |
path: ./artifacts | |
- name: Make site content | |
run: ./monitoring/github_pages/make_site_content.sh | |
- name: Deploy | |
uses: peaceiris/actions-gh-pages@v3 | |
if: github.ref == 'refs/heads/main' | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_dir: ./public | |
enable_jekyll: true | |
user_name: 'github-actions[bot]' | |
user_email: 'github-actions[bot]@users.noreply.github.com' | |
commit_message: ${{ github.event.head_commit.message }} |