* Add TechdocsMetadata type in backend plugin endpoint
* Introduce TechDocsMetadata type in frontend
* Add changeset
* Remove old thennable metadata resp
* Address PR feedback
- Remove explicit type annotation on TechDocsMetadata
- Reintroduce res.send instead of throwing an error
- Change logger info to logger error
* Add TechDocsMetadata type in frontend plugin
* Commit yarn.lock
* Introduce JSON5 and remove parsing in local pub
Signed-off-by: Matei David <matei.david.35@gmail.com>
This caching makes it usable experience, so that docs are not built on every load.
In future readTree will support a method to fetch the timestamp of the latest HEAD. And
it should be used to invalidate the cache.
The creation of temporary directories and their clean up should be handled on its own. techdocs-cli already has a fixed input output dir requirement. It makes that generator accepts these values as requirements.
When a new Backstage app is setup, the techdocs backend file contains all the preparers (dir, github, gitlab, etc.) and same for generators. While this providers added customizibility, it comes with a cost of complexity in setting up the app backend. New preparers' updates would need users to update their app's techdocs backend file.
Scaffolder backend has already moved to this proposed pattern.
Plus
1. Introduce ncessary configs to connect with storage
2. Introduce config to prefer CI build of docs, or techdocs-backend to build and publish them.
3. Write guide how to use Google Cloud Storage with TechDocs
4. Add a TechDocs Configuration reference page in docucmentation
If a backstage App wants to enable techdocs plugin, it should only have to care about installing @backstage/plugin-techdocs and @backstage/plugin-techdocs-backend.
@backstage/plugin-techdocs-backend should re-export necessary APIs from techdocs-common
1. Don't use mkdocs in name of APIs or variables. It is an implementation detail and liable to change in future.
2. techDocsApi.getMetadata('mkdocs') and techDocsAPI.getMetadata('entity') should be two separate functions just because their responses differ in structure. They should also be type checked.
3. Use either 'techdocs' or 'TechDocs' consistently. 'techDocs' seems like an unnecessary third way to write TechDocs, which can be avoided.
4. Remove unused /plugins/techdocs-backend/src/service/metadata.ts file
* TechDocs: Logger already prints the name of plugin
* TechDocs: Display a custom error message if provided
* TechDocs: throw custom error message if index.md is not present
* Language improvements. Thanks @freben
Co-authored-by: Fredrik Adelöw <freben@gmail.com>
Co-authored-by: Fredrik Adelöw <freben@gmail.com>
* Basic implementation of readTree on github and use it in techdocs
* Added a UrlPreparer and cleaned up some minor things
* Download entire archive and filter out the wanted files in readTree
* Added test for dir output of tree reader
* Fixed formatting
* Fixed formatting
* Some cleanups and fixes
* Fix typing issues
* Fix prettier
* Fix prettier
* Removed unused dependency
* Fixed comments on PR
* Prettier
* Moved @types/fs-extra to devDeps
* Fixed another PR comment
* Added a test for getDocFilesFromRepository
* Prettier
* 'master' of github.com:spotify/backstage:
Read git auth token from backend config (#2992)
chore(catalog-model): add the petstore into the default entities
chore(deps-dev): bump @storybook/addon-actions from 6.0.21 to 6.0.26
chore(deps): bump eslint-config-prettier from 6.10.0 to 6.14.0
Add API docs link to About card
adds a sample organization set of users and groups (#2963)
Make sure hasCostsWithinTimeframe is a boolean
fix(catalog-backend): fix codeowners processor to handle users
feat(catalog): add simple client side paging
default to last 30 days
Removed default-branch library since it's no longer used (#3019)
useRealTimers in onCssReady test case
move type dependecy
remove unused import
changeset
simpler query params
* origin:
fix: ts
fix: forwardRef to SidebarItem
fix(cli): one more await in the test
backend-common: make loadBackendConfig return config directly and log all resolved app-configs
* 'master' of github.com:spotify/backstage: (34 commits)
TechDocs Backend: Replace hardcoded github api by configuration value (#3004)
fix: accordion details design for job stage failure (#3014)
fix: responsive of page example in storybook (#3005)
fix: update the ItemCard component and it's story (#3007)
rename stories folder to Chip (#3009)
feat: Display the plugins InfoCards on EntityPage Overwiev suitable full height (#2826)
fix(cost-insights): More exports to help custom alerting
chore(scaffolder): bump rjsf
remove unused CSS (#2999)
feat: update github pull requests package version
fix(github-actions): fix crash when viewing ongoing workflows
fix(cli): removePlugin forgotten await
catalog-backend: relations db review comments and more tests
Feat/add aws lambda plugin (#2985)
chore(deps): bump object-path from 0.11.4 to 0.11.5 (#2983)
add changeset
fix CodeSnippet test case warnings
fix CopyTextButton test case warnings
fix the warning by wrapping in act
fix(catalog): fix link to techdocs
...