with DigitalOcean Spaces and Fly.io?
Emit new event when a file is deleted from a DigitalOcean Spaces bucket
Emit new event when a file is uploaded to a DigitalOcean Spaces bucket
Emit new event when a new event is created in Fly.io. See the documentation
Create an app with the specified details in the request body. See the documentation
Create a machine within a specific app using the details provided in the request body. See the documentation
Create a volume for a specific app using the details provided in the request body. See the documentation
DigitalOcean Spaces API permits you to manage object storage, allowing for the storage and serving of massive amounts of data. This API is great for backing up, archiving, and providing public access to data or assets. On Pipedream, you can use this API to automate file operations like uploads, downloads, and deletions, as well as manage permissions and metadata. You can integrate it with other services for end-to-end workflow automation.
import { S3 } from "@aws-sdk/client-s3";
import { ListBucketsCommand } from "@aws-sdk/client-s3";
export default defineComponent({
props: {
digitalocean_spaces: {
type: "app",
app: "digitalocean_spaces"
}
},
async run({ steps, $ }) {
console.log(this.digitalocean_spaces.$auth)
const s3Client = new S3({
forcePathStyle: false, // Configures to use subdomain/virtual calling format.
endpoint: `https://${this.digitalocean_spaces.$auth.region}.digitaloceanspaces.com`,
region: "us-east-1",
credentials: {
accessKeyId: this.digitalocean_spaces.$auth.key,
secretAccessKey: this.digitalocean_spaces.$auth.secret
}
});
const data = await s3Client.send(new ListBucketsCommand({}));
return data.Buckets;
},
})
Fly.io is a platform that allows you to run full-stack apps and databases close to your users globally. The Fly.io API enables developers to manage applications, handle deployments, and scale their services dynamically. Using the Fly.io API with Pipedream provides a seamless way to automate these operations, integrate with other services, and enhance serverless workflow capabilities.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
fly_io: {
type: "app",
app: "fly_io",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://api.machines.dev/v1/apps`,
headers: {
Authorization: `Bearer ${this.fly_io.$auth.access_token}`,
},
params: {
org_slug: `${this.fly_io.$auth.org_slug}`,
},
})
},
})