Skip to content

Commit f1608dc

Browse files
author
Scott Sanderson
committed
MAINT: Add automation for releases.
1 parent 10b124f commit f1608dc

File tree

3 files changed

+66
-0
lines changed

3 files changed

+66
-0
lines changed

.github/release-drafter-config.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
name-template: 'Release $NEXT_PATCH_VERSION'
2+
tag-template: '$NEXT_PATCH_VERSION'
3+
template: |
4+
## What’s Changed
5+
$CHANGES

.github/workflows/master-merge.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
name: Draft New Release on Merge to Master
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
8+
jobs:
9+
draft-release:
10+
name: Draft New Release
11+
runs-on: ubuntu-latest
12+
steps:
13+
- uses: release-drafter/release-drafter@v5
14+
with:
15+
config-name: release-drafter-config.yml

.github/workflows/release.yml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
name: Publish Python to PyPI
2+
on:
3+
release:
4+
types: [published]
5+
6+
jobs:
7+
build-n-publish:
8+
name: Build and publish Python distributions to TestPyPI
9+
runs-on: ubuntu-18.04
10+
steps:
11+
12+
- name: Check out repository.
13+
uses: actions/checkout@master
14+
15+
- name: Set up Python 3.7
16+
uses: actions/setup-python@v1
17+
with:
18+
python-version: 3.7
19+
20+
- name: Build sdist
21+
run: python setup.py sdist
22+
23+
- name: Publish to Test PyPI
24+
uses: pypa/gh-action-pypi-publish@v1
25+
with:
26+
user: __token__
27+
password: ${{ secrets.test_pypi_token }}
28+
repository_url: https://test.pypi.org/legacy/
29+
30+
- name: Install from test PyPI and Ensure Imports Work
31+
run: |
32+
python -m pip install --upgrade pip
33+
pip install --extra-index-url https://test.pypi.org/simple python-interface
34+
python -c 'import interface; print(interface.__version__)'
35+
pip uninstall -y interface
36+
37+
- name: Publish distribution to PyPI
38+
uses: pypa/gh-action-pypi-publish@v1
39+
with:
40+
user: __token__
41+
password: ${{ secrets.pypi_token }}
42+
43+
- name: Install and test running
44+
run: |
45+
pip install python-interface
46+
python -c 'import interface; print(interface.__version__)'

0 commit comments

Comments
 (0)