with Lighthouse and Google Cloud?
The Lighthouse API provides a window into the world of SSL/TLS certificates. It lets you monitor and track certificates issued for specific domains, offering invaluable insights for security and compliance. By leveraging this API within Pipedream, you can automate certificate tracking, set up alerts for new certificates, and integrate this data with other services for a comprehensive view of your domain's security posture.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
lighthouse: {
type: "app",
app: "lighthouse",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://${this.lighthouse.$auth.domain}.lighthouseapp.com/profile.json`,
headers: {
"X-LighthouseToken": `${this.lighthouse.$auth.api_token}`,
"Content-type": `application/json`,
},
})
},
})
The Google Cloud API opens a world of possibilities for enhancing cloud operations and automating tasks. It empowers you to manage, scale, and fine-tune various services within the Google Cloud Platform (GCP) programmatically. With Pipedream, you can harness this power to create intricate workflows, trigger cloud functions based on events from other apps, manage resources, and analyze data, all in a serverless environment. The ability to interconnect GCP services with numerous other apps enriches automation, making it easier to synchronize data, streamline development workflows, and deploy applications efficiently.
module.exports = defineComponent({
props: {
google_cloud: {
type: "app",
app: "google_cloud",
}
},
async run({steps, $}) {
// Required workaround to get the @google-cloud/storage package
// working correctly on Pipedream
require("@dylburger/umask")()
const { Storage } = require('@google-cloud/storage')
const key = JSON.parse(this.google_cloud.$auth.key_json)
const storage = new Storage({
projectId: key.project_id,
credentials: {
client_email: key.client_email,
private_key: key.private_key,
}
})
await storage.authClient.getCredentials()
return {
status: "success",
authenticated: true,
projectId: key.project_id,
serviceAccount: key.client_email
}
},
})