DEV Community

Ben Halpern
Ben Halpern

Posted on

How does deployment work at your organization?

What is the process to get code into prod?

Latest comments (72)

Collapse
 
_garybell profile image
Gary Bell
  • SSH to one server. Set node to offline.
  • SSH to other server. Set site to offline.
  • On SSH for first server, do git pull
  • On second server, do git pull
  • If needed, manually apply database changes.
  • On first server, put node online
  • Hope everything works

Amazingly, that's better than when I started and took over. It was a case of ftp to the first server, and just hope it didn't break stuff, but also that the files would get rsync'd to the second server. If it didn't, it needed firewall changes to allow SSH access to the server to then restart the rsync process.

Our new platform is going to do the deployments automatically using Gitlabs CI/CD stuff. Mainly because I don't want to have to keep doing it. But also because there's going to be more server nodes

Collapse
 
yourtechbud profile image
Noorain Panjwani

Our frontend is built out on react and hugo. So we use netlify to deploy on every push to master.

We have written scripts to upload and deploy our backend code in docker containers. We have an in-house tool (its open source btw) which takes those containers and runs them on kubernetes or docker.

Collapse
 
sagartyagi121 profile image
Gajender Tyagi

Done both manual objects deployment and CD process.

Collapse
 
joelbonetr profile image
JoelBonetR 🥇

Git with CI/CD.
It really takes like 10/15min to create a GitLab project, set the CI script and test.

Even an old project can be set on a Git project and implemented with an automated script when a merge request to Master is approved. It's not difficult (when you did once before to train yourself).

If you're on a legacy project that needs several actions when deployed, you could automate it too on CI script, but if the actions are conditional (i.e. if i push a controller override then delete server cache, otherwise don't do that) you'll need to perform this actions manually i think.

Collapse
 
patricnox profile image
PatricNox • Edited

Before everything we always do a PR Review.

Thereafter:

The most laravel projects:

  • Bitbucket pipeline for code check
  • Laravel forge for provision
  • Envoyer for deploying

Other projects (Drupal, WP) and/or tiny ones:

  • Bitbucket pipeline for code check
  • Bitbucket pipeline, deploy on merge to master
Collapse
 
codingmindfully profile image
Daragh Byrne

Code gets attached to a tennis ball then thrown into a hockey rink and we hope the players hit it the right direction (sometimes it's felt like that!)

Collapse
 
cmelgarejo profile image
Christian Melgarejo

Terraform + Github CD/CI > GCP

Collapse
 
architectak profile image
Ankit Kumar • Edited

AWS + BuildKite Pipeline ( for Uploading, building and deployment)

Collapse
 
molly profile image
Molly Struve (she/her)

How has your experience been with BuildKite? Do you like it?

Collapse
 
architectak profile image
Ankit Kumar

I like it alot, easy to use and set-up.

Collapse
 
xanderyzwich profile image
Corey McCarty

Previously it was a bunch of scp scripting, but NOW it's a bunch of Jenkins scripting

Collapse
 
bhavaniravi profile image
Bhavani Ravi

For the current project I am building

docker build
docker push
k ... replicas=0
k ... replica=1

For the one that's in production we have CI/CD with cronos and ansible scripts

Collapse
 
jizavala profile image
jizavala

Well just compile your vb.net, yes you read right vb.net, and use beyond compare to copy the dlls and executables to the servers. If you have to do something with databases u need to wait for an specific day and time to request a database change, if is urgent which is pretty everyday the only person whom could give you his blessing is the it director. To my bad luck I dont have that sense of urgency that everyone talks.

Cheers!!

Collapse
 
tcelestino profile image
Tiago Celestino

We’re using Jenkins to CI/CD and to publish Docker containers in our Swarm repository. Projects in Node.js, my team started to use Github Actions to CI/CD and publish on npm.

Collapse
 
darkes profile image
Victor Darkes

On-prem GitLab for the building of artifacts and Dockerizing of the application for the CI portion. No true CD atm. Currently it’s a manual canary strategy followed by manual feature testing against the canary and then a rolling deployment once verified.

Collapse
 
devhead profile image
dev-head

At work we're doing either of the following:

  • Git -> TravisCI -> CodeDeployment (non docker services)
  • Git -> TravisCI-> ECS Deployment (docker services)
  • SSH -> (of course; some services still need that hand touch)

It's up to project owner to define release strategy, usually they use environment specific deployment branches and version tag for pushing an official production release.

Collapse
 
lehmannsystems profile image
Mike

We're big fans of DeployBot. We use Digital Ocean and Bitbucket so it makes it really simple to deploy from BB into DO.