Skip to content
This repository was archived by the owner on Jun 12, 2023. It is now read-only.

Commit f6ab739

Browse files
wip
1 parent cce6e8a commit f6ab739

File tree

1 file changed

+32
-11
lines changed

1 file changed

+32
-11
lines changed

windows.md

Lines changed: 32 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,46 @@
11

22

3-
install docker
3+
install Docker
4+
45
ensure the following repositories are forked to your GitHub account
56
- https://github.com/pandas-dev/pandas-website
67
- https://github.com/conda-forge/pandas-feedstock
78
- https://github.com/MacPython/pandas-wheels
89
- https://github.com/pandas-dev/pandas
910

1011

11-
build a docker image with the conda base environment configured and repositories initialized.
12+
Open an Anaconda Prompt
13+
TODO: resolve git bash Docker volume issues so that make can be used on host
14+
15+
16+
build a Docker image with the conda base environment configured and repositories initialized.
1217

1318
change GH_USERNAME to your Github username
1419

1520
```
1621
docker build -t pandas-release --build-arg GH_USERNAME=simonjayhawkins -f docker-files/windows/Dockerfile .
1722
```
1823

19-
next we will prepare a container for interactive use during the release process and copy the repositories
20-
into a shared volume for building the distribution and testing.
24+
next we will prepare a Docker container for interactive use during the release process and copy the repositories
25+
from the Docker image into a Docker volume for building the distribution and testing.
26+
27+
to start with a clean volume (after a previous release)
28+
29+
```
30+
docker volume rm pandas-release
31+
```
2132

2233
change TAG to the release version
2334

2435
```
2536
docker run -it --env TAG=v1.0.5 --name=pandas-release -v pandas-release:/pandas-release pandas-release /bin/bash
2637
```
2738

28-
the docker container should be now be running
39+
the Docker release container should be now be running
2940

3041
make sure the repos are up-to-date
3142
TODO: also make sure conda environment is up-to-date and pandas-release repo is up-to-date if
32-
re-using an older Docker image (maybe need another script in Makefile)
33-
NOTE: safer to build new image if not on metered or slow internet connection.
43+
re-using an older Docker image
3444

3545
```
3646
make update-repos
@@ -47,14 +57,18 @@ stop the container
4757
exit
4858
```
4959

50-
create the build container
60+
create the Docker image for the sdist build, pip test and conda test containers
61+
TODO: maybe update the image with apt-get for cached build
5162

5263
```
5364
docker build -t pandas-build .
5465
```
5566

5667
build the sdist
5768

69+
TODO: some of the next steps are repetative. set WORKDIR and symlink to /pandas in pandas-build Docker image instead
70+
TODO: add container name (as in Makefile) and do not destroy container on exit
71+
5872
```
5973
docker run -it --rm -v pandas-release:/pandas-release pandas-build /bin/bash
6074
@@ -69,6 +83,9 @@ exit
6983

7084
pip tests
7185

86+
TODO: avoid need to pass explicit filename below
87+
TODO: add container name (as in Makefile) and do not destroy container on exit
88+
7289
```
7390
docker run -it --rm -v pandas-release:/pandas-release pandas-build /bin/bash
7491
@@ -84,6 +101,9 @@ exit
84101

85102
conda tests
86103

104+
TODO: add container name (as in Makefile) and do not destroy container on exit
105+
TODO: avoid need to re-type version below
106+
87107
```
88108
docker run -it --rm --env PANDAS_VERSION=1.0.5 -v pandas-release:/pandas-release pandas-build /bin/bash
89109
@@ -97,10 +117,11 @@ exit
97117
98118
```
99119

100-
copy the sdist file to the local host
120+
copy the sdist file from the Docker volume to the local host
121+
TODO: avoid need to enter specific filename below (maybe just copy contents of dist directory instead)
101122

102123
```
103-
docker run -it --rm -v %cd%:/local -v pandas-release:/pandas-release pandas-release /bin/bash -c "cp /pandas-release/pandas/dist/pandas-1.0.5.tar.gz /local/"
124+
docker run -t --rm -v %cd%:/local -v pandas-release:/pandas-release pandas-release /bin/bash -c "cp /pandas-release/pandas/dist/pandas-1.0.5.tar.gz /local/"
104125
```
105126

106127
Push the tag. No going back now.
@@ -151,7 +172,7 @@ Docs. You can cheat and re-tag / rebuild these if needed.
151172
pandas-docs \
152173
/build-docs.sh -->
153174

154-
TODO build an intermediate doc image (and why pandas conda env not in docker image?)
175+
TODO build an intermediate doc image (and why pandas conda env not in Docker image?)
155176
```
156177
docker run -it --name=pandas-docs -v pandas-release:/pandas-release pandas-docs /bin/bash
157178

0 commit comments

Comments
 (0)