Skip to content

Instantly share code, notes, and snippets.

@constantm
constantm / launch.json
Created September 26, 2018 07:36
Get VSCode debug and breakpoints to work with Vue Cli and Jest
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"name": "vue-cli-service-tests",
"request": "launch",
"env": {
"NODE_ENV": "test"
},
@constantm
constantm / settings.json
Created September 26, 2018 07:33
Getting VSCode Jest extension to work with Vue CLI
{
"jest.pathToJest": "node_modules/@vue/cli-service/bin/vue-cli-service.js test:unit",
}
@constantm
constantm / itr.js
Created July 14, 2021 06:36
NodeJS implementation in Pipedream of "Intent to Receive" for Xero webhooks
async (event, steps) => {
// NodeJS implementation in Pipedream of "Intent to Receive" for Xero webhooks
const { createHmac } = await import('crypto');
const xero_webhook_key = 'OSd0eLlVIY9ZhViEqlDUh4+6n6M+Lo+eDaEJheJ6OCCgWwIz2D3JIAU6jPMipHRbgKTLz2uJ+xiACXGDBLrgdA==' // Get this from the Xero app
const body_string = Buffer.from(steps.trigger.raw_event.body_b64, 'base64').toString() // Use RAW body data so that Pipedream doesn't break our data
const xero_hash = steps.trigger.event.headers["x-xero-signature"] // Could probably shorten, but keeping it long for consistency
let our_hash = createHmac('sha256', xero_webhook_key).update(body_string).digest("base64") // Generate the hash Xero wants
let statusCode = xero_hash == our_hash ? 200 : 401 // If the hashes match, send a 200, else send a 401
require 'aws-sdk-s3'
require 'net/http'
require 'uri'
SENTRY_INGEST = 'https://XXXXXXXXXXXXXXXX.ingest.sentry.io'
SENTRY_CRONS = "#{SENTRY_INGEST}/api/XXXXXXXXXXXXXXXX/cron/daily-db-backup/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/"
class DatabaseBackupJob < ApplicationJob
queue_as :default