Case
Infrastructure and continuous delivery
From FTP to automated deploys
Context
The systems of an educational institution, hosted in a shared environment and published by FTP.
The problem
The code kept falling out of sync: when two people worked at once, one overwrote the other's changes when uploading by FTP. Every upload was manual and slow, through FileZilla, and the shared hosting limited the environment.
From FTP to automated deploys
Click the cards, one at a time.
Before
After
- The pipeline starts GitHub Actions wakes up on its own on every push.
- Tests and builds Checks the code and assembles the production build.
- Publishes to the server The new version goes to the server, with no file uploads.
- Live The website is already up to date.
How CI/CD works
CI/CD is the automatic path between writing the code and having it live. Every push follows the same route, always in the same way.
CI
Continuous integration
Checks that the new code is good before moving on.
- You push the code to Git.
- The tests run on their own.
- The production build is assembled.
CD
Continuous delivery
Takes what is good live, with nobody uploading files.
- The new version goes to the server on its own.
- Every release leaves a record of what changed.
- If something fails, the pipeline tells you right away.
Why it is worth it
-
Fewer human errors
Nobody forgets a file or a step: the pipeline always does everything the same way.
-
Publishing gets fast
No opening an FTP program or uploading file by file. You push, it is live.
-
Everyone on the same version
Git is the source of truth, and nobody overwrites anyone else's work.
-
Higher quality
Tests run before publishing, and problems show up early.
-
Rolling back is simple
Every version stays in the Git history, so undoing a change is easy.
-
More time for what matters
Developers focus on solving problems, not on carrying files to the server.
Result
The code is in sync and versioned, deploys are automatic and fast, and the environment is no longer limited.
Technologies
- Windows Server
- IIS
- Git
- GitHub Actions
- CI/CD
Contact
Shall we talk?
A role, an opportunity or just a technical question. Tell me what you have in mind and I'll reply by email.