Cycle pip wheel cache on dev version bump [CI] (#65791)
This commit is contained in:
parent
fd7e2e76e7
commit
633aad3a60
2 changed files with 26 additions and 7 deletions
15
.github/workflows/ci.yaml
vendored
15
.github/workflows/ci.yaml
vendored
|
@ -10,8 +10,9 @@ on:
|
||||||
pull_request: ~
|
pull_request: ~
|
||||||
|
|
||||||
env:
|
env:
|
||||||
CACHE_VERSION: 5
|
CACHE_VERSION: 7
|
||||||
PIP_CACHE_VERSION: 1
|
PIP_CACHE_VERSION: 1
|
||||||
|
HA_SHORT_VERSION: 2022.3
|
||||||
DEFAULT_PYTHON: 3.9
|
DEFAULT_PYTHON: 3.9
|
||||||
PRE_COMMIT_CACHE: ~/.cache/pre-commit
|
PRE_COMMIT_CACHE: ~/.cache/pre-commit
|
||||||
PIP_CACHE: /tmp/pip-cache
|
PIP_CACHE: /tmp/pip-cache
|
||||||
|
@ -155,8 +156,8 @@ jobs:
|
||||||
- name: Generate partial pip restore key
|
- name: Generate partial pip restore key
|
||||||
id: generate-pip-key
|
id: generate-pip-key
|
||||||
run: >-
|
run: >-
|
||||||
echo "::set-output name=key::base-pip-${{ env.PIP_CACHE_VERSION }}-$(
|
echo "::set-output name=key::base-pip-${{ env.PIP_CACHE_VERSION }}-${{
|
||||||
date -u '+%Y-%m-%dT%H:%M:%s')"
|
env.HA_SHORT_VERSION }}-$(date -u '+%Y-%m-%dT%H:%M:%s')"
|
||||||
- name: Restore base Python virtual environment
|
- name: Restore base Python virtual environment
|
||||||
id: cache-venv
|
id: cache-venv
|
||||||
uses: actions/cache@v2.1.7
|
uses: actions/cache@v2.1.7
|
||||||
|
@ -183,7 +184,7 @@ jobs:
|
||||||
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
|
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
|
||||||
steps.generate-pip-key.outputs.key }}
|
steps.generate-pip-key.outputs.key }}
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ runner.os }}-${{ steps.python.outputs.python-version }}-base-pip-${{ env.PIP_CACHE_VERSION }}-
|
${{ runner.os }}-${{ steps.python.outputs.python-version }}-base-pip-${{ env.PIP_CACHE_VERSION }}-${{ env.HA_SHORT_VERSION }}-
|
||||||
- name: Create Python virtual environment
|
- name: Create Python virtual environment
|
||||||
if: steps.cache-venv.outputs.cache-hit != 'true'
|
if: steps.cache-venv.outputs.cache-hit != 'true'
|
||||||
run: |
|
run: |
|
||||||
|
@ -543,8 +544,8 @@ jobs:
|
||||||
- name: Generate partial pip restore key
|
- name: Generate partial pip restore key
|
||||||
id: generate-pip-key
|
id: generate-pip-key
|
||||||
run: >-
|
run: >-
|
||||||
echo "::set-output name=key::pip-${{ env.PIP_CACHE_VERSION }}-$(
|
echo "::set-output name=key::pip-${{ env.PIP_CACHE_VERSION }}-${{
|
||||||
date -u '+%Y-%m-%dT%H:%M:%s')"
|
env.HA_SHORT_VERSION }}-$(date -u '+%Y-%m-%dT%H:%M:%s')"
|
||||||
- name: Restore full Python ${{ matrix.python-version }} virtual environment
|
- name: Restore full Python ${{ matrix.python-version }} virtual environment
|
||||||
id: cache-venv
|
id: cache-venv
|
||||||
uses: actions/cache@v2.1.7
|
uses: actions/cache@v2.1.7
|
||||||
|
@ -571,7 +572,7 @@ jobs:
|
||||||
${{ runner.os }}-${{ matrix.python-version }}-${{
|
${{ runner.os }}-${{ matrix.python-version }}-${{
|
||||||
steps.generate-pip-key.outputs.key }}
|
steps.generate-pip-key.outputs.key }}
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ runner.os }}-${{ matrix.python-version }}-pip-${{ env.PIP_CACHE_VERSION }}-
|
${{ runner.os }}-${{ matrix.python-version }}-pip-${{ env.PIP_CACHE_VERSION }}-${{ env.HA_SHORT_VERSION }}-
|
||||||
- name: Create full Python ${{ matrix.python-version }} virtual environment
|
- name: Create full Python ${{ matrix.python-version }} virtual environment
|
||||||
if: steps.cache-venv.outputs.cache-hit != 'true'
|
if: steps.cache-venv.outputs.cache-hit != 'true'
|
||||||
run: |
|
run: |
|
||||||
|
|
|
@ -131,6 +131,23 @@ def write_version_metadata(version: Version) -> None:
|
||||||
fp.write(content)
|
fp.write(content)
|
||||||
|
|
||||||
|
|
||||||
|
def write_ci_workflow(version: Version) -> None:
|
||||||
|
"""Update ci workflow with new version."""
|
||||||
|
with open(".github/workflows/ci.yaml") as fp:
|
||||||
|
content = fp.read()
|
||||||
|
|
||||||
|
short_version = ".".join(str(version).split(".", maxsplit=2)[:2])
|
||||||
|
content = re.sub(
|
||||||
|
r"(\n\W+HA_SHORT_VERSION: )\d{4}\.\d{1,2}\n",
|
||||||
|
f"\\g<1>{short_version}\n",
|
||||||
|
content,
|
||||||
|
count=1,
|
||||||
|
)
|
||||||
|
|
||||||
|
with open(".github/workflows/ci.yaml", "w") as fp:
|
||||||
|
fp.write(content)
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
"""Execute script."""
|
"""Execute script."""
|
||||||
parser = argparse.ArgumentParser(description="Bump version of Home Assistant")
|
parser = argparse.ArgumentParser(description="Bump version of Home Assistant")
|
||||||
|
@ -154,6 +171,7 @@ def main():
|
||||||
|
|
||||||
write_version(bumped)
|
write_version(bumped)
|
||||||
write_version_metadata(bumped)
|
write_version_metadata(bumped)
|
||||||
|
write_ci_workflow(bumped)
|
||||||
|
|
||||||
if not arguments.commit:
|
if not arguments.commit:
|
||||||
return
|
return
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue