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.
I initially thought the GCS Nodejs client would make use of it, since it asked for it in the contructor. However, we may not need them at all. Buckets are gloablly unique anyway.
GOOGLE_APPLICATION_CREDENTIALS is the environment variable used by the client. Compute Engine, Google Kubernetes Engine, App Engine, Cloud Run, and Cloud Functions automatically provide a default service account and set this env variable.
https://cloud.google.com/docs/authentication/production
TechDocs Generator uses a temporary directory to store the generated files. But with techdocs-cli, the generator needs to output in a fixed directory.
Also, make parsedLocationAnnotation optional since it is not a critical requirement for the generator.
* 'master' of github.com:backstage/backstage: (23 commits)
cli: fix windows tests
Introduce slight bias towards positive trend in cost insights mock data
core-api: rename BackstageRoutes to FlatRoutes
Update plugins/catalog/src/hooks/useEntity.ts
Fix parameter name in docstring for duration#inclusiveStartDateOf
Adjust test
Add changeset
fix: token expiration in s, not ms
Create loud-days-breathe.md
Create polite-glasses-occur.md
dev-utils: add a small label with the entity name to EntityGridItems
dev-utils: add EntityGridItem for easily displaying various entity cards
dev-utils: use dev index module as root for hot reloading
dev-utils: add .registerPage for use with extensions
catalog: rename EntityProvider to EntityLoaderProvider, and add new EntityProvider
reduce close timeout to 100 ms
changeset: add changeset for core-api RouteRef deprecations
core-api: use typescript workaround for using private constructor instead of a runtime one
core-api: deprecate RouteRef path and remove deprecated createSubRoute
delay window close by 200 ms
...
* 'master' of github.com:backstage/backstage: (45 commits)
Speed up some PRs with paths-ignore
Remove unnecessary step
catalog: export EntitySwitch component and conditions
Apply suggestions from code review
changeset: add changeset for new catalog composability components
catalog: fix EntityLayout TabbedLayout route path matching
catalog: gather all mount points beneath EntityLayout Routes
catalog: add EntityLayout
Change to raw Windows Discord hook
Release plugin-cost-insights 0.5.3
catalog: add EntitySwitch
catalog: export new CatalogIndexPage and CatalogEntityPage
Create dull-seals-march.md
core-api: add BackstageRoutes
Fix plugin name
fixed category lables
feat(cost-insights): Make alert url field optional
fossa: Add changeset
fix(fossa): Bump core packages version to fix failing CI
Update 2020-12-22-stability-index.md
...
TechDocs needs 4 functions from the git library
1. To clone 2. To get the commit timestamp for HEAD 3. To fetch 4. To merge two branches
Created necessary commands in the new SCM client and reordered them alphabetically for convenience
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.