Run any script on your cloud infrastructure with ease.
Project details
pdt is an open-source tool makes running scheduled jobs easy across AWS, Azure, and Google Cloud.
To give it a shot
uv tool install pdt-cli
uv tool update-shell
pdt init jobs
cd jobs
pdt run hello-world # runs locally
pdt deploy hello-world # runs on cloud
pdt new hello --from powershell-hello-world # give powershell a shot
pdt - Process Deploy Tool
pdt is an open-source tool designed to simplify the deployment and scheduling of jobs across various cloud environments, including AWS, Azure, Google Cloud, and Windows Task Scheduler. The tool enables users to turn any script into a scheduled job without the need for additional servers or installations, allowing all configurations and jobs to reside securely within the user's own cloud account.
pdt deploy guides users through the installation of necessary tools and presents a user-friendly sign-in page to set up the environment.pdt standardizes job components across different cloud platforms, utilizing the same building blocks for all jobs. The following table outlines the primitives used:
| AWS | Azure | Google Cloud | Windows | |
|---|---|---|---|---|
| Compute | AWS Batch (Fargate) | Container Apps Jobs | Cloud Run Jobs | Task Scheduler |
| Schedule | EventBridge Scheduler | Container Apps Jobs | Cloud Scheduler | Task Scheduler |
| Secrets | Secrets Manager | Key Vault | Secret Manager | .env file, read at each run |
| Storage | S3 | Blob Storage | Cloud Storage | %ProgramData%\pdt |
| Logs | CloudWatch Logs | Log Analytics | Cloud Logging | Log files |
| Alerts | Slack, Teams, email | Slack, Teams, email | Slack, Teams, email | Slack, Teams, email |
pdt run command to test jobs in a local environment, mirroring cloud configurations and storage..env files for secret management, keeping sensitive information secure and out of version control.For an initial setup, users can easily create and deploy their own scripts with commands like:
pdt init jobs
cd jobs
pdt new hello-powershell --from powershell-hello-world
cd hello-powershell
pdt run
pdt deploy
pdt logs
Users have access to various bundled examples to streamline their setup, such as:
Comprehensive documentation is available, covering topics such as creating projects, deploying jobs, job commands, selecting operating environments, and logging. This ensures users have the necessary resources to make full use of pdt's capabilities.
Comments
1https://www.youtube.com/watch?v=4lYfoIxlcpM Salesforce to Netsuite Contacts example!