aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
* Add __all__ to all modulesGravatar MarkKoz2022-05-30-4/+16
|
* Specify wsgi_app in Gunicorn configGravatar MarkKoz2022-05-30-2/+3
|
* Remove redundant module for creating the WSGI appGravatar MarkKoz2022-05-30-6/+3
|
* Make Sentry SDK and gunicorn optional dependenciesGravatar MarkKoz2022-05-30-8/+14
| | | | | | | | | | | Falcon provides a WSGI app which can be used by any server, not just gunicorn. Thus, make gunicorn optional in case the user wants to use a different server. There shouldn't be any import errors since the class is now in an isolated module. The only time that module is imported is when gunicorn loads its config. Sentry is there for Python Discord mainly, so this dependency shouldn't be imposed on others.
* Move logging code to separate utility modulesGravatar MarkKoz2022-05-30-49/+72
|
* Move coverage config into pyproject.tomlGravatar MarkKoz2022-05-30-13/+16
|
* Tweak Makefile formatGravatar MarkKoz2022-05-30-2/+1
|
* Add a pyproject.tomlGravatar MarkKoz2022-05-30-14/+52
|
* Merge #139 - use pip-tools instead of PipenvGravatar Mark2022-05-30-661/+259
|\
| * Rebuild the container before running the test commandGravatar MarkKoz2022-05-29-0/+1
| | | | | | | | Ensure the dependencies are up-to-date in the dev container.
| * Fix 415 error response titleGravatar MarkKoz2022-05-29-2/+2
| | | | | | | | The update to Falcon v3 changed its capitalisation.
| * Fix paths to files in CONTRIBUTING.mdGravatar MarkKoz2022-05-29-2/+2
| |
| * Fix deprecation warning from FalconGravatar MarkKoz2022-05-29-1/+1
| | | | | | | | The update to v3 deprecated falcon.API in favour of falcon.App.
| * Remove redundant numpy install in test commandGravatar MarkKoz2022-05-29-1/+1
| | | | | | | | | | It's already installed by the container since Docker Compose is configured with the DEV arg.
| * Deps: use pip-tools instead of PipenvGravatar MarkKoz2022-05-29-453/+217
| | | | | | | | | | | | | | | | | | | | | | | | | | Pipenv was limited to only "normal" and "dev" dependencies. pip-tools is more flexible, since each requirements file can be constrained by more than one other requirements file. This means CI can choose to only install coverage deps in the test job and linting deps in the lint job, but these dependencies will still be constrained by each other and by other requirements, so a developer will be able to install both sets simultaneously without conflicts. Use a Makefile to make up for the loss of Pipenv's scripts functionality.
| * CI: only show pre-commit log if it existsGravatar MarkKoz2022-05-28-1/+5
| |
| * Deps: specify flake8 deps via pre-commitGravatar MarkKoz2022-05-28-335/+164
|/
* Replace ASCII diagram with mermaid sequence diagramGravatar Mark2022-03-12-14/+15
|
* Move community health files to .github dirGravatar MarkKoz2022-03-05-4/+5
| | | | Merge DEVELOPING.md into CONTRIBUTING.md
* CI: define KUBECONFIG secret as required in build workflowGravatar MarkKoz2022-02-13-0/+3
|
* CI: pass KUBECONFIG secret to build workflowGravatar MarkKoz2022-02-13-0/+2
| | | | | Reusable workflows don't have access to secrets, even in this case where the workflow is local.
* Merge #133 - CI refactorGravatar Mark2022-02-13-242/+389
|\
| * CI: remove unnecessary shell option from scriptGravatar MarkKoz2022-02-13-1/+1
| | | | | | | | | | There are no pipes the in script, so the presence of -o pipefail may confuse readers.
| * CI: replace "artefact" with "artifact"Gravatar MarkKoz2022-02-13-19/+19
| | | | | | | | The latter is consistent with GitHub Action's documentation.
| * CI: remove region commentsGravatar MarkKoz2022-02-13-4/+0
| | | | | | | | There isn't enough "meat" to warrant their use.
| * CI: rename jobsGravatar MarkKoz2021-12-27-10/+6
| |
| * CI: clean up Docker stuff in self-hosted runnerGravatar MarkKoz2021-12-27-8/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Use docker-compose run instead of docker-compose up. This is more appropriate since the container is only needed for one command. The latter was actually starting the whole snekbox server. Furthermore, the former has the --rm option to remove the container when the command finishes. As an extra precaution, use docker-compose down in the self-hosted runner to also remove images, volumes, networks, and any other containers that were somehow missed. Removing images will also prevent the disk usage from building up. This is not necessary for the GH-hosted runner since a new VM is used for each run.
| * CI: fix pre-commit logs step conditionGravatar MarkKoz2021-12-27-1/+1
| | | | | | | | The step was running even if the pre-commit hooks step never ran.
| * CI: fix flake8 being skippedGravatar MarkKoz2021-12-27-0/+7
| |
| * CI: run linters outside the containerGravatar MarkKoz2021-12-27-36/+44
| | | | | | | | | | | | | | | | Remove the dependency on the container so the lint job can run in parallel with the build job. More time has to be spent installing Python dependencies, but this is made up for by not having to download and load the image artefact in addition to not having to wait for the build job.
| * CI: specify service name to coverallsGravatar MarkKoz2021-12-27-1/+1
| | | | | | | | See https://github.com/TheKevJames/coveralls-python/issues/240
| * CI: remove SHA from image build GHA cache scopeGravatar MarkKoz2021-12-26-1/+1
| | | | | | | | | | | | Unlike the cache action, the build-push action's GHA cache feature seems to only do an exact comparison for the scope. Thus, new commits lead to cache misses.
| * CI: combine coverage data from all matrix jobsGravatar MarkKoz2021-12-26-21/+39
| |
| * CI: pass artefact name as an input to workflowsGravatar MarkKoz2021-12-26-10/+28
| | | | | | | | | | | | Make the artefact and file names identical to simplify things. The artefact name doesn't have to be unique anyway since it can only be downloaded by the same workflow run.
| * CI: use buildx's integrated GH Actions cache featureGravatar MarkKoz2021-12-26-12/+18
| |
| * CI: use build-push-action to output an image tarballGravatar MarkKoz2021-12-26-4/+1
| | | | | | | | | | | | | | load: true was already creating a tarball, but it was getting immediately loaded. Since no other Docker builds run in this job, it's useless to load it. The action can still be leveraged to create the tarball instead of manually invoking `docker save`.
| * CI: use reusable workflows as jobs in main workflowGravatar MarkKoz2021-12-26-242/+27
| |
| * CI: create a reusable deployment workflowGravatar MarkKoz2021-12-26-0/+96
| |
| * CI: create a reusable test workflowGravatar MarkKoz2021-12-26-0/+74
| |
| * CI: create a reusable lint workflowGravatar MarkKoz2021-12-26-0/+52
| |
| * CI: create a reusable build workflowGravatar MarkKoz2021-12-26-0/+88
|/
* Merge #132 - fix entrypoint and support Python argsGravatar Mark2022-01-15-9/+119
|\
| * Fix typo in commentGravatar Mark2022-01-15-1/+1
| | | | | | Co-authored-by: wookie184 <[email protected]>
| * Change entrypoint tests to integration testsGravatar MarkKoz2021-12-27-35/+25
| | | | | | | | No more mocks!
| * Skip coverage of if __name__ == "__main__":Gravatar MarkKoz2021-12-26-1/+1
| |
| * Add tests for main()Gravatar MarkKoz2021-12-26-0/+49
| |
| * Forward the NsJail exit code from the entrypointGravatar MarkKoz2021-12-26-0/+4
| |
| * Test argument parsing for entry pointGravatar MarkKoz2021-12-26-0/+51
| |
| * Add option to pass Python args via main entry pointGravatar MarkKoz2021-12-26-8/+24
| | | | | | | | | | | | Python args are specified as a single string because if they were positional, there wouldn't be a way to distinguish them from NsJail's args.
| * Fix #124 passing NsJail arguments via main entrypointGravatar MarkKoz2021-12-26-1/+1
|/