- Dec 13, 2024
-
-
Sebastiaan ten Pas authored
chore(release): 0.11.0 See merge request !70
-
activate-account-bot authored
-
Sebastiaan ten Pas authored
feat: add endpoint for data manager to create/update/delete accounts See merge request !69
-
Sebastiaan ten Pas authored
-
- Dec 09, 2024
-
-
Sebastiaan ten Pas authored
chore(release): 0.10.0 See merge request !67
-
activate-account-bot authored
-
Dr Rich Wareham authored
feat: move to upstream OpenAPI generator template Closes #22 See merge request !68
-
- Dec 05, 2024
-
-
Dr Rich Wareham authored
-
Dr Rich Wareham authored
Now that uis/devops/continuous-delivery/ci-templates#93 is closed, we have a generic OpenAPI generator template. Make use of it. Closes #22
-
Dr Rich Wareham authored
auto-generate API clients, package them, publish them and publish docs to GitLab pages See merge request !66
-
- Dec 04, 2024
-
-
Dr Rich Wareham authored
The common CI pipeline has support for mkdocs-based documentation and so add a basic generated mkdocs config. Base the mkdocs config on the config which is likely to land in the copier template to minimise future disruption. We need to override some parts of the standard jobs to "inject" the documentation generated by the OpenAPI templates into them. We also need to add "fake" index.html files which take the place of the real documentation which will be injected in.
-
Dr Rich Wareham authored
-
Dr Rich Wareham authored
Add jobs which publish generated OpenAPI clients to GitLab's own package registry. In time we may add ones which publish directly to npm and/or PyPI but for the moment keep things simple. Packages are only published if the git ref name matches a specific value. By default it is the default branch but it can be customised for advanced users.
-
Dr Rich Wareham authored
Generate documentation for each of the OpenAPI clients along with redoc-based documentation for the schema itself. Downstream projects should arrange to copy this documentation to some appropriate place. We add generic "document a TypeScript project" and "document a Python project" jobs along with specialisations for each of the clients we generate. All documentation ends up in `OPENAPI_GENERATOR_DOCS_ARTIFACT_DIR` which can be overridden by consuming projects.
-
Dr Rich Wareham authored
Use the openapi-generator CLI to generate and package a TypeScript client using axios for HTTP transport and a Python package using urllib3 for transport. The version numbers of the generated packages match the version number of the generated OpenAPI schema. As the OpenAPI generator is intended to be generic, we configure a reasonable set of defaults for generated artefact names, etc. Show how these can be customised in local configuration to specify alternate locations for schema files and source packages to be added as release assets. Add the generated API clients as release assets. The list of generated clients is supposed to be slightly opaque to the consuming project so that we may add additional clients over time. Should that prove troublesome, each client may be explicitly disabled by setting a generator-specific `..._DISABLED` variable. The package name is generated from the GitLab project name but can be overridden. We do so in our case since the project name ("api") is a little under-descriptive. As with generation, we support per-client overriding of the package name which we demonstrate with the Python package.
-
Dr Rich Wareham authored
If the schema hasn't changed, not only is it not worth re-generating clients but we also won't be able to publish clients using the default strategy of extracting the version from the schema. (Both PyPI and npm disallow re-uploading packages with the same version number.)
-
Dr Rich Wareham authored
-
Dr Rich Wareham authored
The flake8 pre-commit checker was moaning about some files due to not understanding modern f-string idiom. Update it.
-
Dr Rich Wareham authored
There was no LICENSE file present and some of the docstrings either did not match the annotated return types or were otherwise malformed. Fix these small warts.
-
Dr Rich Wareham authored
-
- Dec 03, 2024
-
-
Dr Rich Wareham authored
chore(release): 0.9.4 See merge request !65
-
activate-account-bot authored
-
Dr Rich Wareham authored
fix: disable release assets for the moment See merge request !64
-
Dr Rich Wareham authored
While we work out the correct incantation/version of release-it to successfully upload releases, disable release assets for the time being to unblock future releases.
-
- Dec 02, 2024
-
-
Dr Rich Wareham authored
chore(release): 0.9.2 See merge request !63
-
activate-account-bot authored
-
Dr Rich Wareham authored
fix: tall release-it we are using a later GitLab See merge request !62
-
Dr Rich Wareham authored
According to [the release-it docs][1], we need to specify "useIdsForUrls" when using assets with GitLab versions after 17.2. Do so. [1]: https://github.com/release-it/release-it/blob/main/docs/gitlab-releases.md#attach-binary-assets
-
Dr Rich Wareham authored
chore(release): 0.9.1 See merge request !61
-
activate-account-bot authored
-
Dr Rich Wareham authored
fix: configure release-it with correct openapi asset name See merge request !60
-
Dr Rich Wareham authored
Although we're generating the OpenAPI schema in "openapi.yaml", we were telling release-it to look for "openapi.yml" which [it could not find][1]. [1]: https://gitlab.developers.cam.ac.uk/uis/devops/iam/activate-account/api/-/jobs/1913998#L56
-
Dr Rich Wareham authored
chore(release): 0.9.0 See merge request !59
-
activate-account-bot authored
-
Dr Rich Wareham authored
feat: add OpenAPI schema to release artefacts See merge request !58
-
Dr Rich Wareham authored
-
Dr Rich Wareham authored
Use release-it's release assets feature to add the build OpenAPI schema to the release assets. Formally speaking the location of the OpenAPI artefacts is not guaranteed and so we explicitly set the location of the artifacts we use before adding it to the release-it configuration.
-
- Nov 28, 2024
-
-
E. Evstafiev authored
chore(release): 0.8.0 See merge request !57
-
activate-account-bot authored
-
Dr Rich Wareham authored
feat: add the bones of an OpenAPI client generation mechanism Closes #24 See merge request !56
-