Patch structural reforms (#5401) #3355
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: Push | |
on: | |
push: | |
branches: [master] | |
jobs: | |
Lint: | |
runs-on: ubuntu-latest | |
if: | | |
(github.repository == 'PolicyEngine/policyengine-us') | |
&& (github.event.head_commit.message == 'Update PolicyEngine US') | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Check formatting | |
uses: "lgeiger/black-action@master" | |
with: | |
args: ". -l 79 --check" | |
versioning: | |
name: Update versioning | |
if: | | |
(github.repository == 'PolicyEngine/policyengine-us') | |
&& !(github.event.head_commit.message == 'Update PolicyEngine US') | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
with: | |
repository: ${{ github.event.pull_request.head.repo.full_name }} | |
ref: ${{ github.event.pull_request.head.ref }} | |
token: ${{ secrets.POLICYENGINE_GITHUB }} | |
- name: Setup Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: 3.12 | |
- name: Build changelog | |
run: pip install yaml-changelog && make changelog | |
- name: Preview changelog update | |
run: ".github/get-changelog-diff.sh" | |
- name: Update changelog | |
uses: EndBug/add-and-commit@v9 | |
with: | |
add: "." | |
committer_name: Github Actions[bot] | |
author_name: Github Actions[bot] | |
message: Update PolicyEngine US | |
github_token: ${{ secrets.POLICYENGINE_GITHUB }} | |
Test: | |
runs-on: ubuntu-latest | |
if: | | |
(github.repository == 'PolicyEngine/policyengine-us') | |
&& (github.event.head_commit.message == 'Update PolicyEngine US') | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: 3.12 | |
- name: Install package | |
run: make install | |
- name: Run non-structural YAML tests | |
run: make test-yaml-no-structural | |
env: | |
POVERTYTRACKER_RAW_URL: ${{ secrets.POVERTYTRACKER_RAW_URL }} | |
- name: Run structural YAML tests | |
run: make test-yaml-structural | |
env: | |
POVERTYTRACKER_RAW_URL: ${{ secrets.POVERTYTRACKER_RAW_URL }} | |
- name: Run Python-based tests | |
run: make test-other | |
env: | |
POVERTYTRACKER_RAW_URL: ${{ secrets.POVERTYTRACKER_RAW_URL }} | |
- name: Produce combined coverage repository | |
run: make coverage | |
- uses: codecov/codecov-action@v4 | |
Publish: | |
runs-on: ubuntu-latest | |
if: | | |
(github.repository == 'PolicyEngine/policyengine-us') | |
&& (github.event.head_commit.message == 'Update PolicyEngine US') | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v4 | |
- name: Setup Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: 3.12 | |
- name: Publish a git tag | |
run: ".github/publish-git-tag.sh || true" | |
- name: Install package | |
run: make install | |
- name: Build package | |
run: make | |
- name: Publish a Python distribution to PyPI | |
uses: pypa/gh-action-pypi-publish@release/v1 | |
with: | |
user: __token__ | |
password: ${{ secrets.PYPI }} | |
skip-existing: true | |
Deploy: | |
if: | | |
(github.repository == 'PolicyEngine/policyengine-us') | |
&& (github.event.head_commit.message == 'Update PolicyEngine US') | |
runs-on: ubuntu-latest | |
env: | |
GH_TOKEN: ${{ secrets.POLICYENGINE_GITHUB }} | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v2 | |
with: | |
repository: ${{ github.event.pull_request.head.repo.full_name }} | |
ref: ${{ github.event.pull_request.head.ref }} | |
token: ${{ secrets.POLICYENGINE_GITHUB }} | |
- name: Setup Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: 3.12 | |
- name: Install Wheel and Pytest | |
run: pip3 install wheel setuptools pytest==5.4.3 | |
- name: Install package | |
run: make install | |
- name: Update API | |
run: python .github/update_api.py | |
env: | |
GITHUB_TOKEN: ${{ secrets.POLICYENGINE_GITHUB }} |