* allow user to set dockerhub credentials
* add withJwtAuth function to AuthHelper
* use withJwtAuth in DockerHub badges
* add unit tests for JWT auth
* use auth when calling docker cloud
* refactor and assert fetch helpers call withJwtAuth
* store token for a max duration (defaults to 1 hour)
* tangent: update test example
* add gitea service based on gitlab
* update gitea to use mocks
* add gitea release test
* move tests to use public repo on codeberg and fixes
* add pagination, update tests to live, set gitea_url as required
* add auth test (wip)
* fix base auth test
* fix required optionalUrl, remove default, assume semver from firstpage
* update example to use stable repository
* log to sentry if upstream service responds with 429
* allow services to decide which error(s) to log, default to 429
* don't log 429s from endpoint or dynamic badges
* supress 429s from uptime robot badges
* supress 429s from weblate if not calling default server
* cache opencollective badges for longer
* cache discord badges for longer
* cache github workflow badges for longer
* WIP enums
* WIP moar enums
* add a helper function for extracting enum from route pattern
* add enum schemas to services
* review and improve service names
* convert some more services with enums
* review and improve service names
* fix issue/pull request detail
* [OpenCollective] update opencollective to api v2 (#9346)
* update opencollective to api v2
* fix tests
* fix: do not filter by accountType for opencollective/all
* remove 404
* remove required in schema
* cnt -> count
* keep by-tier code as-is
---------
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
* allow calling OpenCollective api with an auth token
* add test for opencollective auth
* cache OpenCollective badges for longer
---------
Co-authored-by: xxchan <xxchan22f@gmail.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
* add helper functions for generating Open API path/query params with defaults
* tweak Open API schema
- make description optional
- allow null example + allowEmptyValue (for boolean query params)
* convert examples --> openApi in amo
* convert examples --> openApi in ansible
* convert examples --> openApi in appveyor build/job
* add re-usable Open API query param for test-results badges
we can use these for all the 'test results' badges
* convert examples --> openApi in appveyor tests
* DRY up existing dynamic/endpoint param definitions
* DRY up queryParam
* allow enum param in serviceDefinition schema
* improve misleading param name
* check route and openApi are consistent on service load
* fix mistake in ansible role route
* documentation --> description
* add pathParams and queryParams helpers +docstrings
* give everything a search-friendly summary, check for duplicate summary
* prettier fixup
* delete loads of really important stuff that we definitely need
* v basic MVP smoosh docusaurus PoC into repo
* TODO
* delete more really important stuff
* TODO
* tidyup: use run-s
* don't redirect images used in frontend to raster proxy
* fix routing
* preserve the /endpoint link
* delete the blog (for now)
I would quite like to re-add this at some point
but its not really the top priority thing right now
* content edits
* appease the lint gods
* update danger rules
* remove placeholder
* cypress tests
* dockerhub --> ghcr
* Revert "dockerhub --> ghcr"
This reverts commit ef74cbb26b.
* downgrade lockfile format
* implement defs/BASE_URL
* fix e2e build
* actually fix cypress tests
* always run cypress tests on build
* this never worked
* add command for docusaurus:clear
* delete more code we don't need any more
* update ESLint/prettier config
* delete unsused exports
* documentation updates
* delete a fairly large chunk of our dependency tree
* allow base_url as build arg to Dockerfile
* fixup dockerfile
* work out base url at runtime if not set
doing this at image build time is not the right approach
* remove gatsby monorepo from closebot
* rename HomepageFeatures to homepage-features
* allow serviceData to override cacheSeconds with a longer value
* prevent [endpoint] json cacheSeconds property exceeding service default
* allow ShieldsRuntimeError to specify a cacheSeconds property
By default error responses use the cacheLength of
the service class throwing the error.
This allows error to tell the handling layer the maxAge
that should be set on the error badge response.
* add customExceptions param
This
1. allows us to specify custom properties to pass to the exception
constructor if we throw any of the standard got errors
e.g: `ETIMEDOUT`, `ECONNRESET`, etc
2. uses a custom `cacheSeconds` property (if set on the exception)
to set the response maxAge
* customExceptions --> systemErrors
* errorMessages --> httpErrors
* fail to start server if there are duplicate service names
* update class names in loader test fixtures
---------
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
* WIP export OpenAPI definitions from service examples
* allow services to optionally define an OpenApi Paths Object instead of examples
* make use of param descriptions and required query params
* convert other 'core' services to declare openApi..
..instead of examples
* tweak descriptions for standard query params
* move stuff around, add a high-level integration test for category2openapi
* update simple-icons text refs #9054
* remove legacy param names
* send X-GitHub-Api-Version when calling GitHub v3 API
* TODO: invesitgate
* read baseUrl from config.service.baseUri
* add workflow to check for new GH api releases on schedule
* format config/default.yml to match yaml.dump() format
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
* run the core tests on windows
* fix glob with windows path seperator
* always use slash when slicing serviceClass matches
..and add comment explaining why we need to do this
* strip line endings (+ any other whitspace) before base64 encoding
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>