Security News
The Push to Ban Ransom Payments Is Gaining Momentum
Ransomware costs victims an estimated $30 billion per year and has gotten so out of control that global support for banning payments is gaining momentum.
@gojob/nest-cloud-pub-sub-transport
Advanced tools
Readme
A Custom Transport strategy for Cloud Pub/Sub in Nest microservices.
TODO: in order to open-source it for NestJs, we must use
loadPackage
(fromServer
) to load@google-cloud/pubsub
dynamically instead of having it installed in the dependenices of the project. Also, all types used from this package should be duplicated into local types/interfaces.
yarn add @gojob/nest-cloud-pub-sub-transport
# or
npm install @gojob/nest-cloud-pub-sub-transport
Here is an example of implementation in your Nest application:
async function bootstrap() {
const app = await NestFactory.create(AppModule);
const configService = app.get(ConfigService);
app.connectMicroservice({
strategy: new CloudServerPubSub({
// "clientConfig": configuration passed "as is" to the Cloud PubSub client
clientConfig: {
keyFile: configService.get('GCP_KEY_FILE_PUBSUB'),
},
// "options": custom options, specific to this package
options: {
logger: app.get(LOGGER),
// useful when your app is using a single topic & subscription
defaultTopic: configService.get('DEFAULT_PUB_SUB_TOPIC'),
defaultSubscription: configService.get('DEFAULT_PUB_SUB_SUBSCRIPTION'),
},
}),
});
await app.startAllMicroservices();
await app.listen(3000);
}
Then use @EventPattern
from @nestjs/microservices
to decorate the event handlers which will be called when a new Pub/Sub message is received in your target topic(s).
Command | Action |
---|---|
yarn compile | Ensure the TypeScript code can be compiled using tsc |
yarn build | Build the project (transpile the code to JavaScript) |
yarn lint | Lint the code (ESLint ) |
yarn test | Run unit tests |
yarn integration | Run integration tests |
FAQs
A Custom Transport strategy of the NestJS microservices pattern for Cloud Pub/Sub.
We found that @gojob/nest-cloud-pub-sub-transport demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 10 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Ransomware costs victims an estimated $30 billion per year and has gotten so out of control that global support for banning payments is gaining momentum.
Application Security
New SEC disclosure rules aim to enforce timely cyber incident reporting, but fear of job loss and inadequate resources lead to significant underreporting.
Security News
The Python Software Foundation has secured a 5-year sponsorship from Fastly that supports PSF's activities and events, most notably the security and reliability of the Python Package Index (PyPI).