2206: Fix filter names and make them more consistent. r=uhlissuh a=mythmon
There are two problems that I found while working on a new filter object.
1. Some of the filters shared a type, which made them impossible to use. This was the main thing I wanted to fix.
2. Some of the types users `camelCase` naming, and others used `snake_case` naming. All of the "original" filter objects were camel case, so I standardized them all that way, and added a test.
Co-authored-by: Mike Cooper <mythmon@gmail.com>
2166: Mark all packages with semver ranges, and update r=rehandalal a=mythmon
Since Poetry lets us specify compatible packages separate from the lock file, this means we can now specify that we are compatible with a range of packages, and then let semver updates happen through `poetry update` and (soon) dependabot. We get this without having to give up the determinstic builds we had before, since Poetry's lock file includes exact versions and files hashes.
Note that DRF does not follow strict semver, and introduced a breaking change between 3.10 and 3.11. This is fine, we can specify that we want version 3.10.x and not have to worry about the breaking changes until we are ready for them.
If CI passes, this is probably good to go.
Co-authored-by: Mike Cooper <mythmon@gmail.com>
2164: Add caching and a timeout to x5u fetching for signature verification r=sciurus a=mythmon
CC @sciurus
Fixes#2161
Co-authored-by: Mike Cooper <mythmon@gmail.com>
Co-authored-by: Michael Cooper <mythmon@gmail.com>
2132: v3 API contract tests requiring authentication r=jaredlockhart a=chartjes
This PR contains v3 API contract tests that required authentication.
* documentation now updated to require Docker as a dependency to run the tests as this is how it would be done in CI
* tests create a superuser inside the `normandy_app` container for use by the v3 API tests
* v1 and v3 API tests now in their own directories
* updated requirements/constraints.txt and requirements/dev.txt for new dependencies
Given how authentication works in the application, I am unsure of a solution that allows these tests to be against non-Dockerized versions of Normandy.
Co-authored-by: Chris Hartjes <chartjes@grumpy-learning.com>
2136: Add addon filter objects r=uhlissuh a=uhlissuh
fixes#2104
So, splitting these into two filter objects came from Rehan, which I thought was a good idea. He mentioned seeing about having them share some code, because there is duplication here, and I kinda looked at that for a while and arrived at wondering if we will really gain much here trying to have these two share code? There's only two that are shaped like this right now. There isn't a clear thing I could pull out, maybe someone sees something. Perhaps that's an argument for making them one filter?
Co-authored-by: Alissa Sobo <alissasobo@gmail.com>
2155: Add docstring for build number filter object r=mythmon a=uhlissuh
Not sure how this happened, but there wasn't a docstring for this. It was in the `filters.rst` file though. I probably was looking at that file one day and noticed it wasn't listed, but neglected to realize that the doc string actually wasn't made for the filter.
Co-authored-by: Alissa Sobo <alissasobo@gmail.com>
2154: Move SSL to container volume fixes#2150 r=tiftran a=jaredlockhart
Small change to the compose file so the SSL files stay in a volume, I don't think it should affect non docker workflows in any way. And I updated the `make kill` command to a more ergonomic pattern I figured out in experimenter. Both of these things should make it easier for the new API contract tests to run in circle.
Co-authored-by: Jared Lockhart <119884+jaredlockhart@users.noreply.github.com>
2153: Simplify JS Infrastructure r=jaredlockhart a=mythmon
This PR removes a lot of JS tooling that we don't need anymore.
Before, we had 2705 NPM packages, totaling 211 MB. After, we have 1274 NPM packages, totaling 39 MB. Considering our Docker image is 1.09 GB, 172 MB is a nice amount to save.
Fixes#2149.
Co-authored-by: Mike Cooper <mythmon@gmail.com>