The problem
The manual seeding process covered 30 feature team applications and took a full week: storage cleanup, scaling pods up and down, and starting data streaming across every environment, all by hand, all requiring developers.
The approach
I built a Python 3 automation platform around the process rather than a script over it:
- Parent-child GitLab CI/CD pipelines generated in YAML from each onboarded feature's configuration, deployed as one pipeline.
- A web UI where users enter the seeding scope and start the whole process with a single button.
- A fail-first pre-prepare stage that sanity-checks selected services before anything expensive runs, saving compute cost.
- A Webex bot reporting pipeline start, end, and failure.
- A monitoring app publishing real-time data flow counts to a Grafana dashboard.
The outcome
- End-to-end seeding time went from 1 week to 30 hours.
- Program managers and operations run the entire process independently, with no developer involvement.
Why it matters
The best automation doesn't just save time; it moves the work to the people who should own it. This one did both.