Commit Graph

13 Commits

Author SHA1 Message Date
Dmitrii Orlov
c36fc51da2
fix package script usage 2022-05-01 22:36:06 +02:00
Dmitrii Orlov
5308fba405
add tag ref for GH action 2022-04-26 02:12:49 +02:00
Dmitrii Orlov
1f26b20421
fix(simplify-release-gh-actions): release in CI.yml (#428)
* get the release jobs back in ci.yml

* Delete unnecessary RLS workflow

* make both jobs depend on tests
2022-04-26 01:05:49 +02:00
Dmitrii Orlov
4d81ea7124
chore(package-release-from-gh-actions): Adding release management to GitHub actions (#423)
* Basic attempt for a release workflow in GH Actions

* move docker release to `release.yml`

* return the docker steps to ci.yml

* return the deploy-docker step to release.yml

* add wait for tests GA
2022-04-01 17:49:04 +02:00
Dmitrii Orlov
3ba17777da
chore(release-candidate-from-github-actions): add github action for release management (#417) 2022-03-25 19:31:39 +01:00
Dmitrii Orlov
652a7171a6 disable tests for python3.9 2021-11-16 21:04:25 +01:00
Dmitrii Orlov
48688d7e4c
Merge branch 'master' into tp-fix-mypy-check-dependencies-for-CI 2021-09-02 13:18:40 +02:00
Dmitrii Orlov
be39eb2f05 Allow GH actions to run on pull requests for forks 2021-08-27 09:19:33 +02:00
Dmitrii Orlov
a1002c5e99 Install requires stub types for mypy in ci.yml 2021-08-27 09:11:26 +02:00
Matthew Planchard
df300de33d
Push to Docker Hub from CI (#375)
Adds a new helper script to determine which docker tags are needed for a
given ref going through CI, and uses those tags to populate the GH
actions matrix for a docker deploy step.
2021-02-07 20:24:33 -06:00
Matthew Planchard
d868005e1f
Docker improvements (#365)
* Docker improvements

This addresses much of what was brought up in #359. Specifically, it:

- Significantly improves testing for the Docker image, adding a
  `docker/test_docker.py` file using the regular pytest machinery to
  set up and run docker images for testing
- Hopefully addresses a variety of permissions issues, by being explicit
  about what access pypiserver needs and asking for it, only erroring
  if that access is not available
  - Requires RX permissions on `/data` (R to read files, X to list files
    and to be able to cd into the directory. This is important since
    `/data` is the `WORKDIR`)
  - Requires RWX permissions on `/data/packages`, so that we can list
    packages, write packages, and read packages.
  - When running in the default configuration (as root on Linux or
    as the pypiserver-named rootish user on Mac), with no volumes
    mounted, these requirements are all satisfied
  - Volume mounts still must be readable by the pypiserver user (UID
    9898) in order for the container to run. However, we now error early
    if this is not the case, and direct users to a useful issue.
  - If the container is run as a non-root, non-pypiserver user (e.g.
    because someone ran `docker run --user=<user_id>`, we try to run
    pypiserver as that user). Provided that user has access to the
    necessary directories, it should run fine.
- Fixes issues with running help and similar commands
- Updates the Docker image to use `PYPISERVER_PORT` for port
  specification, while still falling back to `PORT` for backwards
  compatibility
- Moves some docker-related things into a `/docker` directory
- Adds a `Makefile` for building a test fixture package sdist and wheel,
  so that test code can call `make mypkg` and not need to worry about it
  potentially building multiple times

The only issue #359 raises that's not addressed here is the one of
running pypiserver in the Docker container using some non-default server
for performance. I would like to do some benchmarking before deciding on
what to do there.
2021-02-06 11:28:15 -06:00
Matthew Planchard
df7454ff20
Add aggregate "tests" job (#370)
Adds an aggregate "tests" job to CI so that we can gate merges on that
without needing to keep merge gates up-to-date with the names of the
various jobs that collectively represent "all tests".

Also dropped the `pull-request` trigger, which I included originally
because I wasn't sure whether the tests on push would run for forks,
which they do!
2021-02-02 20:36:41 -06:00
Matthew Planchard
d0694d9e15
Switch to GH actions (#361)
* Switch to GH actions

Removes the travis config and adds a GH actions config. Resolves #360.

As part of this:

- only runs the README check once, instead of for each python version
- only runs mypy once, removing it from tox
- unifies the pypy and cpython tests in tox by separating dev and test
  requirements, and only installing the latter for running tests in tox

* Update README w/badge & link to GH actions tests
2020-11-15 20:08:58 -06:00