Skip to content

Commit 22aaeeb

Browse files
authored
Merge pull request #89 from GeorgianaElena/travis_deploy
Travis deploy tags to PyPI
2 parents 2e96af5 + 0520946 commit 22aaeeb

File tree

4 files changed

+212
-28
lines changed

4 files changed

+212
-28
lines changed

.travis.yml

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,8 @@
11
language: python
2-
sudo: false
32
cache:
43
- pip
5-
python:
6-
- 3.6
74
env:
85
global:
9-
- ASYNC_TEST_TIMEOUT=15
106
- ETCDCTL_API=3
117

128
# installing dependencies
@@ -26,12 +22,21 @@ after_success:
2622
- codecov
2723

2824
# auto-deploy releases on tags
29-
deploy:
30-
provider: pypi
31-
distributions: sdist bdist_wheel
32-
user: jupyterhub-bot
33-
password:
34-
secure: mZbQVF80AO+cxJM/0qbeFoAcHSBE3YSeT4igUXlKypRVEc0qNskJbh6Ofh5qIHb4dO/LF7Si3Bms1cP3Wai7wPFAglGPV/CQ3TQjrwjWy1FYwyAvduSiKZ7xsHoSvVakqfzl8R/XSmBbajbECts+7NuJuyJGAvWldeHlWo7UXt+wiKFCK8jGcXcqCcf8F8kVkF7gfx+Z/sO3JMintMclz+N3GoUiNYnmZ3fI3PEoFeDETGy9mzlM8eQi6LnZ16rod53KKA1q3EKziNvqVgYObgD95NfH/gtgZ+rDhEIS0kPMUUu5ihfofvY/I2tV3IX/Pbih2ssHDRolthVcbPP1+L1WdCPos7IpEHKDYZuTwMizuaPaGes2YHREMCN3AtncT456X4gtH7KuWG3gAXOrmTLDp+ShaevoJCF0Qk2E0WzVngqV//stFOhwZaxV1uRb4xujTI0Ak35yKnfuiLbrOyoZ+8eiwOwhE2C0l3BKNy+xLpBMQZVoX87WTPrQzNOv6bV5ZX9Mp+pJTOnUFJOrwvLHCm3hZtWMcijAVNuR3Wi0zsJVaqCtB7/qqUtWw1PUpwyVnA9DpgGOxXo4+tVDy75izq0GTYivqpFq9EyXzE2UyxDjgRK+I3OAEUiSJ1tIGw/T2306iVf2EfpMVjWQdX4Wnz+b123bTIE7haoiUxc=
35-
on:
36-
tags: true
37-
repo: jupyterhub/traefik-proxy
25+
jobs:
26+
fast_finish: true
27+
include:
28+
- python: 3.6
29+
- python: 3.7
30+
# Only deploy if all test jobs passed
31+
- stage: deploy
32+
python: 3.7
33+
if: tag IS present
34+
deploy:
35+
provider: pypi
36+
user: __token__
37+
# password: see secret PYPI_PASSWORD variable
38+
distributions: sdist bdist_wheel
39+
on:
40+
# Without this we get the note about:
41+
# Skipping a deployment with the pypi provider because this branch is not permitted: <tag>
42+
tags: true

README.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
[![TravisCI (.org) build status](https://img.shields.io/travis/jupyterhub/traefik-proxy/master?logo=travis)](https://travis-ci.org/jupyterhub/traefik-proxy)
66
[![CircleCI build status](https://img.shields.io/circleci/build/github/jupyterhub/jupyterhub?logo=circleci)](https://circleci.com/gh/jupyterhub/jupyterhub)
77
[![Latest PyPI version](https://img.shields.io/pypi/v/jupyterhub-traefik-proxy?logo=pypi)](https://pypi.python.org/pypi/jupyterhub-traefik-proxy)
8-
[![GitHub](https://img.shields.io/badge/issue_tracking-github-blue?logo=github)](https://github.com/jupyterhub/jupyterhub/issues)
8+
[![GitHub](https://img.shields.io/badge/issue_tracking-github-blue?logo=github)](https://github.com/jupyterhub/traefik-proxy/issues)
99
[![Discourse](https://img.shields.io/badge/help_forum-discourse-blue?logo=discourse)](https://discourse.jupyter.org/c/jupyterhub)
1010
[![Gitter](https://img.shields.io/badge/social_chat-gitter-blue?logo=gitter)](https://gitter.im/jupyterhub/jupyterhub)
1111

@@ -18,11 +18,13 @@ API](https://jupyterhub.readthedocs.io/en/stable/reference/proxy.html),
1818
depending on how traefik store its routing configuration.
1919

2020
For **smaller**, single-node deployments:
21-
* TraefikTomlProxy
22-
For **distributed** setups
23-
* TraefikEtcdProxy
24-
* TraefikConsulProxy
2521

22+
* TraefikTomlProxy
23+
24+
For **distributed** setups:
25+
26+
* TraefikEtcdProxy
27+
* TraefikConsulProxy
2628

2729
## Installation
2830
The [documentation](https://jupyterhub-traefik-proxy.readthedocs.io) contains a

RELEASE.md

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
# How to make a release
2+
3+
`traefik-proxy` is a package [available on
4+
PyPI](https://pypi.org/project/jupyterhub-traefik-proxy/).
5+
The PyPI release is done automatically by TravisCI when a tag
6+
is pushed.
7+
8+
For you to follow along according to these instructions, you need
9+
to have push rights to the [traefik-proxy GitHub
10+
repository](https://github.com/jupyterhub/traefik-proxy).
11+
12+
## Steps to make a release
13+
14+
1. Checkout master and make sure it is up to date.
15+
16+
```shell
17+
ORIGIN=${ORIGIN:-origin} # set to the canonical remote, e.g. 'upstream' if 'origin' is not the official repo
18+
git checkout master
19+
git fetch $ORIGIN master
20+
git reset --hard $ORIGIN/master
21+
# WARNING! This next command deletes any untracked files in the repo
22+
git clean -xfd
23+
```
24+
25+
1. Update [changelog.rst](docs/source/changelog.rst) and add it to
26+
the working tree.
27+
28+
```shell
29+
git add traefik-proxy/docs/source/changelog.rst
30+
```
31+
32+
Tip: Identifying the changes can be made easier with the help of the
33+
[choldgraf/github-activity](https://github.com/choldgraf/github-activity)
34+
utility.
35+
36+
1. Set a shell variable to be the new version you want to release.
37+
The actual project version will be detected automatically by versioneer
38+
from git tags inspection. The versioneer script will be run by setup.py
39+
when packaging is occurring.
40+
41+
```shell
42+
VERSION=... # e.g. 1.2.3
43+
git commit -m "release $VERSION"
44+
```
45+
46+
Tip: You can get the current project version by checking the [latest
47+
tag on GitHub](https://github.com/jupyterhub/traefik-proxy/tags).
48+
49+
1. Push your commit to master.
50+
51+
```shell
52+
# first push commits without a tags to ensure the
53+
# commits comes through, because a tag can otherwise
54+
# be pushed all alone without company of rejected
55+
# commits, and we want have our tagged release coupled
56+
# with a specific commit in master
57+
git push $ORIGIN master
58+
```
59+
60+
1. Create a git tag for the pushed release commit and push it.
61+
62+
```shell
63+
git tag -a $VERSION -m "release $VERSION"
64+
65+
# then verify you tagged the right commit
66+
git log
67+
68+
# then push it
69+
git push $ORIGIN --follow-tags
70+
```
71+

docs/source/changelog.rst

Lines changed: 116 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,29 +3,135 @@
33
Changes in jupyterhub-traefik-proxy
44
===================================
55

6-
Unreleased
7-
----------
6+
For detailed changes from the prior release, click on the version number
7+
and its link will bring up a GitHub listing of changes. Use `git log` on
8+
the command line for details.
89

9-
0.1.3
10-
-----
1110

12-
- Load initial routing table from disk in TraefikTomlProxy
13-
when resuming from a previous session.
11+
`[Unreleased]`_
12+
---------------
1413

15-
0.1.2
16-
-----
14+
- Update README `#87`_
15+
(`@consideRatio <https://github.com/consideRatio>`_)
16+
- Handle ssl `#84`_
17+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
18+
- CONTRIBUTING: use long option in “pip install -e” `#82`_
19+
(`@muxator <https://github.com/muxator>`_)
20+
- Change traefik default version `#81`_
21+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
22+
- Add info about TraefikConsulProxy in readme `#80`_
23+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
24+
25+
.. _#87: https://github.com/jupyterhub/traefik-proxy/pull/87
26+
.. _#84: https://github.com/jupyterhub/traefik-proxy/pull/84
27+
.. _#82: https://github.com/jupyterhub/traefik-proxy/pull/82
28+
.. _#81: https://github.com/jupyterhub/traefik-proxy/pull/81
29+
.. _#80: https://github.com/jupyterhub/traefik-proxy/pull/80
30+
31+
`[0.1.4]`_ - 2019-09-20
32+
-----------------------
33+
34+
- Add info about TraefikConsulProxy in readme `#80`_
35+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
36+
- Stop assuming kv_traefik_prefix ends with a slash `#79`_
37+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
38+
- Log info about what dynamic config file it’s used by the Hub `#77`_
39+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
40+
- Install script `#76`_
41+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
42+
- Set defaults for traefik api username and password `#75`_
43+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
44+
- Allow etcd and consul client ssl settings `#70`_
45+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
46+
- Fix format in install script warnings `#69`_
47+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
48+
- Create test coverage report `#65`_
49+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
50+
- Explicitly close consul client session `#64`_
51+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
52+
- Throughput results updated `#62`_
53+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
54+
- Make trefik’s log level configurable `#61`_
55+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
56+
- TraefikConsulProxy `#57`_
57+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
58+
- WIP Common proxy profiling suite `#54`_
59+
`(@GeorgianaElena) <https://github.com/GeorgianaElena>`_
60+
61+
.. _#80: https://github.com/jupyterhub/traefik-proxy/pull/80
62+
.. _#79: https://github.com/jupyterhub/traefik-proxy/pull/79
63+
.. _#77: https://github.com/jupyterhub/traefik-proxy/pull/77
64+
.. _#76: https://github.com/jupyterhub/traefik-proxy/pull/76
65+
.. _#75: https://github.com/jupyterhub/traefik-proxy/pull/75
66+
.. _#70: https://github.com/jupyterhub/traefik-proxy/pull/70
67+
.. _#69: https://github.com/jupyterhub/traefik-proxy/pull/69
68+
.. _#65: https://github.com/jupyterhub/traefik-proxy/pull/65
69+
.. _#64: https://github.com/jupyterhub/traefik-proxy/pull/64
70+
.. _#62: https://github.com/jupyterhub/traefik-proxy/pull/62
71+
.. _#61: https://github.com/jupyterhub/traefik-proxy/pull/61
72+
.. _#57: https://github.com/jupyterhub/traefik-proxy/pull/57
73+
.. _#54: https://github.com/jupyterhub/traefik-proxy/pull/54
74+
75+
`[0.1.3]`_ - 2019-02-26
76+
-----------------------
77+
78+
- Load initial routing table from disk in TraefikTomlProxy
79+
when resuming from a previous session.
80+
81+
**Details:**
82+
83+
- Try to load routes from file if cache is empty `#52`_
84+
(`@GeorgianaElena <https://github.com/GeorgianaElena>`_)
85+
- close temporary file before renaming it `#51`_
86+
(`@minrk <https://github.com/minrk>`_)
87+
88+
.. _#52: https://github.com/jupyterhub/traefik-proxy/pull/52
89+
.. _#51: https://github.com/jupyterhub/traefik-proxy/pull/51
90+
91+
92+
`[0.1.2]`_ - 2019-02-22
93+
-----------------------
1794

1895
- Fix possible race in atomic_writing with TraefikTomlProxy
1996

20-
0.1.1
21-
-----
97+
`[0.1.1]`_ - 2019-02-22
98+
-----------------------
2299

23100
- make proxytest reusable with any Proxy implementation
24101
- improve documentation
25102
- improve logging and error handling
26103
- make check_route_timeout configurable
27104

105+
**Details:**
106+
107+
- more logging / error handling `#49`_
108+
(`@minrk <https://github.com/minrk>`_)
109+
- make check_route_timeout configurable `#48`_
110+
(`@minrk <https://github.com/minrk>`_)
111+
- Update documentation and readme `#47`_
112+
(`@GeorgianaElena <https://github.com/GeorgianaElena>`_)
113+
- Define only the proxy fixture in test_proxy `#46`_
114+
(`@GeorgianaElena <https://github.com/GeorgianaElena>`_)
115+
- add mocks so that test_check_routes needs only proxy fixture `#44`_
116+
(`@minrk <https://github.com/minrk>`_)
117+
- Etcd with credentials `#43`_
118+
(`@GeorgianaElena <https://github.com/GeorgianaElena>`_)
119+
120+
.. _#49: https://github.com/jupyterhub/traefik-proxy/pull/49
121+
.. _#48: https://github.com/jupyterhub/traefik-proxy/pull/48
122+
.. _#47: https://github.com/jupyterhub/traefik-proxy/pull/47
123+
.. _#46: https://github.com/jupyterhub/traefik-proxy/pull/46
124+
.. _#44: https://github.com/jupyterhub/traefik-proxy/pull/44
125+
.. _#43: https://github.com/jupyterhub/traefik-proxy/pull/43
126+
127+
28128
0.1.0
29129
-----
30130

31131
First release!
132+
133+
.. _[0.1.4]: https://github.com/jupyterhub/traefik-proxy/compare/0.1.3...0.1.4
134+
.. _[0.1.3]: https://github.com/jupyterhub/traefik-proxy/compare/0.1.2...0.1.3
135+
.. _[0.1.2]: https://github.com/jupyterhub/traefik-proxy/compare/0.1.1...0.1.2
136+
.. _[0.1.1]: https://github.com/jupyterhub/traefik-proxy/compare/0.1.0...0.1.1
137+
.. _[Unreleased]: https://github.com/jupyterhub/traefik-proxy/compare/0.1.4...2e96af5861f717a136ea76919dfab585643642fa

0 commit comments

Comments
 (0)