How Do You Upload Code to a GitLab Project from a Server That Does Not Have a Desktop UI?

Problem scenario
You have a Linux server with the command prompt but no GUI.  A separate server hosts GitLab.  How do you configure the first character-based server to use GitLab?

Solution
This assumes that you have deployed GitLab; if you need directions for this, see this posting.  This assumes that you have created a project in GitLab.  If you need directions for this,

How Do You Create a New Project in GitLab?

Problem scenario
You want to test out GitLab.  How do you create your first project?

Solution
Prerequisite
This assumes you have GitLab installed; if you do not know how, see this posting.

Procedures
1.  Log into GitLab via the web UI.  (If you do not have credentials and you set it up, the web UI for GitLab should have prompted you to enter a new password twice. 

How Do You Install GitLab on Debian or Ubuntu Linux?

Problem scenario
You want to do deploy (install and configure) GitLab on a Debian Linux server.  What do you do?

Solution
1.  Get a Debian or Ubuntu Linux server with either 3.5 GB of RAM or at least 1.5 GB of RAM and 2 GB of virtual memory.  If you need to resize an AWS instance, see this posting.  If you need to resize a GCP instance,

How Do You Troubleshoot the GitLab Integration Webhook Error “Permission you need to have (but didn’t) hudson.model.Hudson”?

Problem scenario
You are trying to configure GitLab to work with Jenkins (so the two are integrated to enable  CI, continual integration, in your environment).  When you test a connection of an integration  webhook from GitLab to reach out to Jenkins you receive this error:

“Hook executed successfully but returned HTTP 403… You are authenticated as anonymous Groups that you are in: Permission you need to have (but didn’t) hudson.model.Hudson.Read…which is implied by hudson.security.Permission.GenericRead…”

How do you solve this problem?

How Do You Install Jenkins 2.x on Debian Linux in Google Cloud Platform?

Problem scenarios
#1  You have a Debian server in GCP with roughly 0.592 GB of RAM.  You want to install Jenkins on it.  How do you do this?

OR

#2  You have a nano flavor of an EC2 instance running Ubuntu Linux (i.e., 0.5 GB of RAM).  You want to install Jenkins on it.  How do you install Jenkins 2.x on Ubuntu Linux in AWS?  (If you do not want to install a “apt-transport-https” package,

How Do You Get Jenkins 2.x Running on Linux to Do Code Deployments to Windows Servers?

Problem scenario
You are trying to set up a CI/CD pipeline in your heterogeneous enterprise server network.  You want to push down files (integrate code) from your Jenkins 2.x server running on Linux to your Windows 2016 Servers.  How do you get builds to be controlled by Jenkins on Linux to be deployed to other Windows servers?

Prerequisites
This solution assumes that Jenkins is running on Linux. 

How Do You Get Jenkins to Push Files to Other Servers in AWS?

Problem scenario
You have Jenkins set up on Linux.  You want it to deploy files to other Linux servers, how do you do this as a proof of concept?

Solution
There are many different ways of accomplishing this task.  These directions do not cover the production-recommended best practices associated with security.  For such a solution, you may want to see this external site

How Do You Deploy Jenkins 2.X to Ubuntu Linux in AWS?

Problem scenario
You have an Ubuntu server in AWS with 0.5 GB of RAM.  You want to install Jenkins on it without installing an “apt-transport-http” package.  (You are ok with using an “apt-get upgrade” command on the Linux server.)  How do you do this?

Solution
(If you do not want to run “apt-get upgrade”, and you can install “apt-transport-http”, then see this 

What is a Build?

Question
In DevOps engineering you hear the term “build”, what is it?

Answer
A build is usually a binary file which is an executable application. In DevOps engineering a build is usually compiled from a specific version of source code. In the context of Jenkins it is the “[r]esult of a single execution” of a Jenkins project (previously known as a Jenkins job).

How Do You Install an Older Version of Jenkins (e.g., 1.x) on Ubuntu Linux?

Problem scenario
Your enterprise’s policies are to install a version of Jenkins that is lower than the latest.  How do you install Jenkins 1.651.1 on Ubuntu 16.04?

Solution
1.  Install Java.  See this posting if you do not know how.
2.  Run these three commands to install Jenkins 1.651.1 (but you can chance the version whichever one is available):

curl -L https://pkg.jenkins.io/debian-stable/binary/jenkins_1.651.1_all.deb /tmp/jenkins_1.651.1_all.deb
sudo apt-get -y install daemon
sudo dpkg -i /tmp/jenkins_1.651.1_all.deb