Tuesday, August 29, 2023

Working with Ansible and GIT

  

Ansible

Create a Repository in Github


git@github.com:yashwanthsn2020/AnsibleRepo.git

Add id_rsa.pub key content into GITHUB -> Profile -> Settings -> SSH and GPG Keys -> New SSH Key

Enter a Name and content and click on Add SSH Key

Install GIT on the Ubuntu

ansible@ansible-VirtualBox:~/Desktop$ sudo apt update
[sudo] password for ansible:
Hit:1 https://download.docker.com/linux/ubuntu groovy InRelease                                                                                       
Get:2 http://security.ubuntu.com/ubuntu groovy-security InRelease [110 kB]                                                                            
Hit:3 http://in.archive.ubuntu.com/ubuntu groovy InRelease                                 
Get:4 http://in.archive.ubuntu.com/ubuntu groovy-updates InRelease [115 kB]
Get:5 http://security.ubuntu.com/ubuntu groovy-security/main amd64 DEP-11 Metadata [4,676 B]
Get:6 http://security.ubuntu.com/ubuntu groovy-security/universe amd64 DEP-11 Metadata [4,552 B]
Get:7 http://in.archive.ubuntu.com/ubuntu groovy-backports InRelease [101 kB]                                                                                                                            
Get:8 http://in.archive.ubuntu.com/ubuntu groovy-updates/main amd64 DEP-11 Metadata [40.6 kB]                                                                                                            
Get:9 http://in.archive.ubuntu.com/ubuntu groovy-updates/universe amd64 DEP-11 Metadata [104 kB]                                                                                                         
Get:10 http://in.archive.ubuntu.com/ubuntu groovy-updates/multiverse amd64 DEP-11 Metadata [2,468 B]                                                                                                     
Get:11 http://in.archive.ubuntu.com/ubuntu groovy-backports/universe amd64 DEP-11 Metadata [600 B]                                                                                                       
Fetched 483 kB in 7s (68.4 kB/s)                                                                                                                                                                         
Reading package lists... Done
Building dependency tree      
Reading state information... Done
251 packages can be upgraded. Run 'apt list --upgradable' to see them.

ansible@ansible-VirtualBox:~/Desktop/Ansible$ sudo apt install git
Reading package lists... Done
Building dependency tree      
Reading state information... Done
Suggested packages:
  git-daemon-run | git-daemon-sysvinit git-doc git-el git-email git-gui gitk gitweb git-cvs git-mediawiki git-svn
The following NEW packages will be installed:
  git
0 upgraded, 1 newly installed, 0 to remove and 251 not upgraded.
Need to get 0 B/4,928 kB of archives.
After this operation, 40.0 MB of additional disk space will be used.
Selecting previously unselected package git.
(Reading database ... 271098 files and directories currently installed.)
Preparing to unpack .../git_1%3a2.27.0-1ubuntu1.1_amd64.deb ...
Unpacking git (1:2.27.0-1ubuntu1.1) ...
Setting up git (1:2.27.0-1ubuntu1.1) ...
ansible@ansible-VirtualBox:~/Desktop/Ansible$ 

ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git --version
git version 2.27.0

Clone the Github Ansible respository

ansible@ansible-VirtualBox:~/Desktop/Ansible$ git clone git@github.com:yashwanthsn2020/AnsibleRepo.git
Cloning into 'AnsibleRepo'...
The authenticity of host 'github.com (13.234.176.102)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'github.com,13.234.176.102' (RSA) to the list of known hosts.
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (3/3), done.

ansible@ansible-VirtualBox:~/Desktop$ ls -ltr
total 28
-rw-rw-r-- 1 ansible ansible  119 Apr 23 15:24 pip.yml
-rwxrwxr-x 1 ansible ansible   87 Apr 23 20:45 shell.sh
-rw-rw-r-- 1 ansible ansible  801 Apr 23 21:23 docker.yml
-rw-rw-r-- 1 ansible ansible  278 Apr 25 12:07 apache.yml
-rw-rw-r-- 1 ansible ansible  284 Apr 25 12:19 docker_1.yml
-rw-rw-r-- 1 ansible ansible  209 Apr 25 14:51 shell.yml
drwxrwxr-x 3 ansible ansible 4096 Apr 25 14:56 AnsibleRepo

ansible@ansible-VirtualBox:~/Desktop$ cd AnsibleRepo
ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ ls -ltr
total 4
-rw-rw-r-- 1 ansible ansible 13 Apr 25 14:56 README.md

Add/Config username and email

ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git config --global user.name "Yash Ansible"
ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git config --global user.email "yashwanthsn@gmail.com"

Ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ cat ~/.gitconfig
[user]
    name = Yash Ansible
    email = yashwanthsn@gmail.com

ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git status
On branch main
Your branch is up to date with 'origin/main'.

Untracked files:
  (use "git add <file>..." to include in what will be committed)
    apache.yml
    docker.yml
    docker_1.yml
    pip.yml
    shell.sh
    shell.yml

nothing added to commit but untracked files present (use "git add" to track)

ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git init
ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git add .
ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git commit -m "Adding Ansible files into Github repo"
[main 887fcd0] Adding Ansible files into Github repo
 6 files changed, 76 insertions(+)
 create mode 100644 apache.yml
 create mode 100644 docker.yml
 create mode 100644 docker_1.yml
 create mode 100644 pip.yml
 create mode 100755 shell.sh
 create mode 100644 shell.yml

ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git remote add origin git@github.com:yashwanthsn2020/AnsibleRepo.git
fatal: remote origin already exists.

ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git branch
* main
ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git push origin main
Enumerating objects: 13, done.
Counting objects: 100% (13/13), done.
Compressing objects: 100% (10/10), done.
Writing objects: 100% (11/11), 1.56 KiB | 399.00 KiB/s, done.
Total 11 (delta 2), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (2/2), done.
To github.com:yashwanthsn2020/AnsibleRepo.git
   d7a7a1a..d059cfc  main -> main
ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$

Refresh the Github repo page and you can see that the files are present


 
ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git status
On branch main
Your branch is up to date with 'origin/main'.

nothing to commit, working tree clean

Updated shell.yml file

ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ pwd
/home/ansible/Desktop/AnsibleRepo
ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ vi shell.yml
ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git add shell.yml
ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git commit -m "Updated the locationof shell.sh"
[main 51404c1] Updated the locationof shell.sh
 1 file changed, 1 insertion(+), 1 deletion(-)
ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git branch
* main
ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git push origin main
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 324 bytes | 324.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (2/2), completed with 2 local objects.
To github.com:yashwanthsn2020/AnsibleRepo.git
   d059cfc..51404c1  main -> main
ansible@ansible-VirtualBox:~/Desktop/AnsibleRepo$ git status
On branch main
Your branch is up to date with 'origin/main'.

nothing to commit, working tree clean