How to Modernize Shell Scripts and Crontab Workflows?

0
13
Asked By CleverCoder99 On

I'm looking to modernize the workflow for a bunch of shell scripts that my small team uses. We have around 10-15 scripts that typically handle tasks like pulling data from a database and uploading it to an SFTP server, along with a few ETL scripts that merge files and perform actions on datasets. I'm curious about what modern approaches there are for streamlining this process. I tried asking ChatGPT for advice, and it suggested containerizing the scripts, setting up a logging server, and using an orchestrator for scheduling. I'm comfortable with that, but I worry about creating a single point of failure, and I want to ensure it's not overly complex for anyone who takes over. I'm also considering using systemd to run containers and timers for scheduling them instead. If anyone has experience or articles they can share on similar transitions, I'd appreciate it!

4 Answers

Answered By OldSchoolOps On

If it’s working fine, maybe don’t change too much. But GitHub Actions could be a good place to run it. Just make sure the processing time fits within their limits, and it should offer enough flexibility for your needs.

Answered By TechieTina On

Where are you primarily running these scripts? If they execute on on-prem Linux or Windows servers, you might find some options easier to implement based on the environment.

CleverCoder99 -

They're mostly running on on-prem Linux or Windows servers, but they could get reimaged with a new OS.

Answered By ScriptSavvy42 On

Have you thought about using GitHub Actions or Azure DevOps pipelines? You could pull your script files directly from version control and run them on any machine as a runner or agent. It streamlines things quite a bit!

CleverCoder99 -

That's certainly an option I could look into.

Answered By DataDude On

You're essentially looking at reverse ETL here, right? Tools like Airbyte or MapForce could help. Airbyte is well-known, while MapForce offers a more visual approach, which could reduce your bus factor. Airflow is another great option for scheduling and executing jobs if you're comfortable with Python. Plus, if you're considering AWS, Fargate can simplify tasks over Kubernetes. Lots of options out there!

CleverCoder99 -

I'll check that out.

Related Questions

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.