Code deployment Gitlab CI/CD
Step 1 : Download gitlab runner
sudo wget -O /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
Step 2 : Give permission
sudo chmod +x /usr/local/bin/gitlab-runner
Step 3 : Add new gitlab-runner user
sudo useradd gitlab-runner -s /bin/bash
Step 4 : Install gitlab-runner
sudo gitlab-runner install - -user=gitlab-runner --working-directory=/home/gitlab-runner sudo gitlab-runner start
Step 5 : Change user to gitlab-runner
sudo su gitlab-runner
Step 6 : Create this directory
/home/gitlab-runner/.ssh/
sudo mkdir gitlab-runner
sudo mkdir gitlab-runner/.ssh
sudo chown -R gitlab-runner: gitlab-runner/
Step 7 : Create ssh key
ssh-keygen -t rsa -b 2048 -C “any comments”
note: do not provide any phrases while providing ssh key
Step 8 : Copy the public key
cd /home/gitlab-runner/.ssh/
cat id_rsa.pub
Step 9 : Register ssh key in git lab
Now copy the ssh key from id_rsa.pub and save it in gitlab
Step 10 : Setting git user global user
git config — global user.email “user@example.com”
git config — global user.name “User name”
Step 11 : Clone the gitlab repository
git clone git@gitlab.com:sravankml11/django-demo.git
Step 12 : Register runner
sudo gitlab-runner register
YML file
server_deployment:
variables:
DJANGO_SETTINGS_MODULE: settings.settingsstage: deploy
only:
- master
script:
- echo "Deploying to server"
- cd /home/sravan/Documents/django
- git pull origin master
- /home/ubuntu/partner/lsd/partner-backend/venv/bin/python
manage.py migrate --database=lsd
- echo "deployment completed"
tags:
- django