seatgeek / backstage-plugins Goto Github PK
View Code? Open in Web Editor NEWSeatGeek Backstage Plugins Collection
License: Apache License 2.0
SeatGeek Backstage Plugins Collection
License: Apache License 2.0
#34 did not properly fix the problem of multiple awards.storage
engines being configured in an application with multiple configs (e.g. in app-config.yaml
i have awards.storage.fs: {...}
and in app-config.prod.yaml
i have awards.storage.s3: {...}
.
@freben gave the suggestion to add a type
field, where in app-config.prod.yaml
you would write:
awards:
storage:
type: s3
s3: {...}
zhammer β 02/28/2024 2:49 PM
is there a way to override (delete, nullify) a config dict in a config file overlay? e.g.
# application-config.yaml
my-plugin:
storage:
filesystem:
directory: tmp/
# application-config.production.yaml
my-plugin:
storage:
# we want this gone in production
filesystem: null
s3:
bucket: my-bucket
this isn't working for us. trying to get this right for our own OSS plugin: e568c37
freben β Yesterday at 1:23 AM
No. But we'd generally put a type: s3
etc in there so that the reading code knows which subkey to dive in to
The it doesn't matter that there's an extra filsystem key hanging around
zh-rename-plugins
branch failed. π¨I recommend you give this issue a high priority, so other packages depending on you can benefit from your bug fixes and new features again.
You can find below the list of errors reported by semantic-release. Each one of them has to be resolved in order to automatically publish your package. Iβm sure you can fix this πͺ.
Errors are usually caused by a misconfiguration or an authentication problem. With each error reported below you will find explanation and guidance to help you to resolve it.
Once all the errors are resolved, semantic-release will release your package the next time you push a commit to the zh-rename-plugins
branch. You can also manually restart the failed CI job that runs semantic-release.
If you are not sure how to resolve this, here are some links that can help you:
If those donβt help, or if this issue is reporting something you think isnβt right, you can always ask the humans behind semantic-release.
The npm token configured in the NPM_TOKEN
environment variable must be a valid token allowing to publish to the registry https://registry.npmjs.org/
.
If you are using Two Factor Authentication for your account, set its level to "Authorization only" in your account settings. semantic-release cannot publish with the default "
Authorization and writes" level.
Please make sure to set the NPM_TOKEN
environment variable in your CI with the exact value of the npm token.
Good luck with your project β¨
Your semantic-release bot π¦π
Right now, this plugin has consumed all users and groups for my organization; however, the membership to those groups is not being ingested at this point, based on the default configuration of the README for the plugin. It would be good to be able to associate this so as to leverage the built in backstage permissions model and RBAC that some others have made available.
In the documents the scheduler mentions:
schedule: env.scheduler.createScheduledTaskRunner({
frequency: { days: 1 },
}),
This will result in an error such as:
] Backend failed to start up TypeError: Cannot use 'in' operator to search for 'cron' in undefined
[1] at parseDuration (/app/node_modules/@backstage/backend-tasks/src/tasks/PluginTaskSchedulerImpl.ts:152:7)
[1] at PluginTaskSchedulerImpl.scheduleTask (/app/node_modules/@backstage/backend-tasks/src/tasks/PluginTaskSchedulerImpl.ts:80:29)
[1] at Object.run (/app/node_modules/@backstage/backend-tasks/src/tasks/PluginTaskSchedulerImpl.ts:112:20)
[1] at OktaOrgDiscoveryEntityProvider.scheduleFn (/app/node_modules/@seatgeek/backstage-plugin-catalog-backend-module-okta/src/OktaOrgDiscoveryEntityProvider.ts:187:25)
[1] at OktaOrgDiscoveryEntityProvider.connect (/app/node_modules/@seatgeek/backstage-plugin-catalog-backend-module-okta/src/OktaOrgDiscoveryEntityProvider.ts:181:16)
[1] at <anonymous> (/app/node_modules/@backstage/plugin-catalog-backend/src/processing/connectEntityProviders.ts:108:23)
[1] at Array.map (<anonymous>)
[1] at connectEntityProviders (/app/node_modules/@backstage/plugin-catalog-backend/src/processing/connectEntityProviders.ts:103:15)
[1] at CatalogBuilder.build (/app/node_modules/@backstage/plugin-catalog-backend/src/service/CatalogBuilder.ts:578:11)
[1] at createPlugin (/app/packages/backend/src/plugins/catalog.ts:107:40)
[1] at main (/app/packages/backend/src/index.ts:189:29)
Once another timeout is added, this works fine. As such:
schedule: env.scheduler.createScheduledTaskRunner({
frequency: { days: 1 },
timeout: { minutes: 240 },
}),
Not sure if Bug or not - will update README. (When time allows... lol)
main
branch failed. π¨I recommend you give this issue a high priority, so other packages depending on you can benefit from your bug fixes and new features again.
You can find below the list of errors reported by semantic-release. Each one of them has to be resolved in order to automatically publish your package. Iβm sure you can fix this πͺ.
Errors are usually caused by a misconfiguration or an authentication problem. With each error reported below you will find explanation and guidance to help you to resolve it.
Once all the errors are resolved, semantic-release will release your package the next time you push a commit to the main
branch. You can also manually restart the failed CI job that runs semantic-release.
If you are not sure how to resolve this, here are some links that can help you:
If those donβt help, or if this issue is reporting something you think isnβt right, you can always ask the humans behind semantic-release.
The npm token configured in the NPM_TOKEN
environment variable must be a valid token allowing to publish to the registry https://registry.npmjs.org/
.
If you are using Two Factor Authentication for your account, set its level to "Authorization only" in your account settings. semantic-release cannot publish with the default "
Authorization and writes" level.
Please make sure to set the NPM_TOKEN
environment variable in your CI with the exact value of the npm token.
Good luck with your project β¨
Your semantic-release bot π¦π
Would be neat to see the rewards in the /settings page for an easier overview of the given award.
The documentation states to use @seatgeek/catalog-backend-module-okta
but the package in npm is @seatgeek/backstage-plugin-catalog-backend-module-okta
We want to use your slack-plugin-catalog plugin, but have this use case were we want to conditionally update slack profile images. We have an authoritative source for our users where most users have an image. In the case were there is no image in the authoritative source, we want to use the slack avatar instead. So we run your code with a somewhat hacky patch similar to this:
export class SlackUserProcessor implements CatalogProcessor {
//...
if (slackUser.profile?.image_192 && (!entity.spec.profile?.picture || entityHasSlackPicture(entity))) {
entity.spec.profile.picture = slackUser.profile.image_192;
}
//...
}
function entityHasSlackPicture(entity: UserEntity) {
return entity.spec.profile?.picture?.includes('slack-edge.com');
}
The idea here is to allow updating when
Would you accept a PR for adding this as an option?
Add support for Google Cloud Storage backend for image uploads using @tweedegolf/sab-adapter-google-cloud
.
We have a Pull Request ready if you are happy with this contribution?
Configuration would look like:
awards:
storage:
gcs:
bucket: gs://backstage-awards # required
keyFilename: path/to/keyFile.json # optional: defaults to GOOGLE_APPLICATION_CREDENTIALS
The Awards description field supports only plain text. It would be helpful to to have it support Markdown rendering, as it would allow Award Owners to point out supplemental and clickable material indicating what one should do to secure the award.
Hi! Thanks for creating this set of plugins! I am looking at using slack-catalog, it works great however it doesn't seem to have a TTL on the cache, I think it would be great if you could add a TTL config parameter so that new slack members can be loaded.
Can the plugin be converted into using the new backend system?
As Backstage Search allows you to discover entities and other items inside the system, it would be nice if awards content (title, description) was also add/removed from the Backstage search index in order to increase award discoverability.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. πππ
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google β€οΈ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.