summaryrefslogtreecommitdiff
path: root/opendc-web/opendc-web-api
AgeCommit message (Collapse)Author
2022-04-04ci: Fix JaCoCo report aggregationFabian Mastenbroek
This change updates the build script to fix the aggregation step for the JaCoCo coverage reports that are submitted to Codecov. Previously, not all modules were properly included in the report.
2022-04-04refactor(web): Update Docker deployment for new web APIFabian Mastenbroek
This change updates the Docker deployment configuration for the new web API implemented in Kotlin. The new API migrates to Postgres. Furthermore, with this change, we move the Dockerfiles to their corresponding module.
2022-04-04fix(web/api): Support dynamic JSON type selection for DBFabian Mastenbroek
This change adds support for dynamically selecting the appropriate JSON type for the current database. For Postgres, this will be the JSONB type, while for H2 this is either the BLOB or JSON type.
2022-04-04feat(web/api): Initial API implementation in KotlinFabian Mastenbroek
This change adds the initial implementation of the new API server in Kotlin, replacing the old API written in Python. The implementation uses Quarkus, RESTEasy, and Hibernate to implement the new API endpoints. The reason for replacing the old API server is unifying the build and deployment toolchains, reducing the number of technologies necessary to work with OpenDC. Furthermore, we envision bundling the entire OpenDC project into a single distributions, allowing users to launch their own deployment trivially.
2022-02-17ci: Fix API deployment using Docker ComposeFabian Mastenbroek
This change updates the Docker Compose configuration to properly deploy the API server, by passing the necessary Auth0 information to it.
2021-07-15fix(ui): Relax topology schema requirementsFabian Mastenbroek
This change fixes an issue where the topology generated by the frontend was not accepted by the API server.
2021-07-08ui: Simplify normalization of topologyFabian Mastenbroek
This change updates the OpenDC frontend to use the normalizr library for normalizing the user topology.
2021-07-08api: Re-expose simulation results from scenario endpointFabian Mastenbroek
This change updates the OpenDC API to re-expose the simulation results as they are necessary for the frontend to display the results.
2021-07-08api: Add endpoints for accessing project relationsFabian Mastenbroek
This change adds additional endpoints to the REST API to access the project relations, the portfolios and topologies that belong to a project.
2021-07-02api: Restrict API scopesFabian Mastenbroek
This change adds support for restricting API scopes in the OpenDC API server. This is necessary to make a distinction between runners and regular users.
2021-07-02api: Add endpoint for simulation jobsFabian Mastenbroek
This change adds an API endpoint for simulation jobs which allows API consumers to manage simulation jobs without needing direct database access that is currently needed for the web runner.
2021-07-02api: Add stricter validation of input/output dataFabian Mastenbroek
This change adds stricter validation of data that enters and leaves the database. As a result, we clearly separate the database model from the data model that the REST API exports.
2021-07-02api: Pass audience during Swagger UI authenticationFabian Mastenbroek
This change updates the Swagger UI configuration to pass the Auth0 audience to the authorization URL in order to obtain a valid JWT token.
2021-07-02api: Fix OpenAPI topology schemaFabian Mastenbroek
This change addresses some issues in the OpenAPI schema for the datacenter topology.
2021-06-02api: Bump urllib3 in /opendc-web/opendc-web-api (#141)dependabot[bot]
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.4 to 1.26.5. - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/1.26.4...1.26.5) --- updated-dependencies: - dependency-name: urllib3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-01ci: Fix code coverage reporting for web APIFabian Mastenbroek
This change updates the build workflow to properly report the code coverage reports of the web API to Codecov.
2021-05-18docs: Add instructions on configuring Auth0 for OpenDCFabian Mastenbroek
This change updates the deployment guide to include instructions on configuring Auth0 for OpenDC. This process should not be much more difficult than creating the Google Application.
2021-05-18api: Add support for pre-specified Swagger OAuth2 client idFabian Mastenbroek
This change adds support for specifying the OAuth2 client identifier for Swagger API docs authentication. This allows users to experiment with the API documentation without needing to create an Auth0 account themselves.
2021-05-18api: Upgrade to Python 3.9 as defaultFabian Mastenbroek
This change updates the API server to run by default using Python 3.9.
2021-05-18api: Update API Schema to OpenAPI v3Fabian Mastenbroek
This change updates the API Schema to the more recent OpenAPI version 3 and in addition actualizes the API specification to match the API again.
2021-05-18api: Add Swagger UI for API documentationFabian Mastenbroek
This change adds Swagger UI to the REST API endpoint in order to experiment with the API endpoints interactively. It also serves as the documentation for the API endpoints.
2021-05-18api: Migrate to Flask RestfulFabian Mastenbroek
This change updates the API to use Flask Restful instead of our own in-house REST library. This change reduces the maintenance effort and allows us to drastically simplify the API implementation needed for the OpenDC v2 API.
2021-05-17api: Remove user handling from OpenDC API serverFabian Mastenbroek
This change removes any of the user handling and endpoints from the OpenDC API server. The API server does not need to store user information other than an identifier in the database.
2021-05-17api: Migrate to Auth0 for API authorizationFabian Mastenbroek
This change updates the OpenDC API to use Auth0 for API authorization. This removes the hard dependency on Google for logging into OpenDC and simplifies implementation as we do not have to store user information anymore, other than the user identifier.
2021-05-17api: Remove Socket.IO endpoint from public APIFabian Mastenbroek
This change removes the Socket.IO endpoint from the public API now that we have switched to the REST API instead. This decreases the possible exposure to vulnerabilities as well as the maintenance burden.
2021-05-10api: Restore trace endpointFabian Mastenbroek
This change adds the trace endpoint, which was unfortunately removed due to an incorrect .gitignore statement.
2021-05-08api: Bump eventlet from 0.25.2 to 0.31.0dependabot[bot]
Bumps [eventlet](https://github.com/eventlet/eventlet) from 0.25.2 to 0.31.0. - [Release notes](https://github.com/eventlet/eventlet/releases) - [Changelog](https://github.com/eventlet/eventlet/blob/master/NEWS) - [Commits](https://github.com/eventlet/eventlet/compare/v0.25.2...v0.31.0) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-07api: Bump flask-cors from 3.0.8 to 3.0.9dependabot[bot]
Bumps [flask-cors](https://github.com/corydolphin/flask-cors) from 3.0.8 to 3.0.9. - [Release notes](https://github.com/corydolphin/flask-cors/releases) - [Changelog](https://github.com/corydolphin/flask-cors/blob/master/CHANGELOG.md) - [Commits](https://github.com/corydolphin/flask-cors/compare/3.0.8...3.0.9) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-05build: Update Docker ignores to prevent unnecessary buildsFabian Mastenbroek
This changes updates the .dockerignore files in the repository in order to prevent building when not necessary.
2021-05-05ci: Remove unused Gitlab and Travis CI configurationsFabian Mastenbroek
2021-05-03Prepare for OpenDC 2.0 release (v1)Fabian Mastenbroek
This pull request performs several preparations for the official release of OpenDC 2.0. This pull request mostly focuses on documentation changes. ## Details 1. Restructure project documentation 2. Migrate to Dokka 1.4.32 3. Merge CI builds into single workflow
2021-05-03docs: Revamp project documentationFabian Mastenbroek
This change updates the project documentation by moving most of the documentation to the docs directory.
2021-05-02api: Bump rsa from 4.6 to 4.7 (#124)dependabot[bot]
Bumps [rsa](https://github.com/sybrenstuvel/python-rsa) from 4.6 to 4.7. - [Release notes](https://github.com/sybrenstuvel/python-rsa/releases) - [Changelog](https://github.com/sybrenstuvel/python-rsa/blob/main/CHANGELOG.md) - [Commits](https://github.com/sybrenstuvel/python-rsa/compare/version-4.6...version-4.7) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-04-25build: Migrate to flat project structureFabian Mastenbroek
This change updates the project structure to become flattened. Previously, the simulator, frontend and API each lived into their own directory. With this change, all modules of the project live in the top-level directory of the repository. This should improve discoverability of modules of the project.