Skip to main content

devops

 Importance of build stage,


Basically converting the source code files 


The software build is a general term in the software development world. The software build is an activity to translate the human-readable source code into an efficient executable program.

It is the process of creating the application binaries for a software release, by taking all the relevant source code files and compile them and then creating a build artifact (such as binaries and executable program, etc.)


Build Process is the combination of several activities that varies for each programming language and operating systems but the basic concept will be the same.

What is the Procedure to build?
Fetching the code from the source control repository like Github, bitbucket, etc.
Compile the code and check the dependencies.
Run the automated unit tests.
Link the library, files, code, etc accordingly.
When everything is successfully passed, it’s built an artifact and store.
Achieve the build logs.
Send the notification emails to the concerned person.

Generally, there are two types of builds.
Full Build
In the full build process we perform the build process from scratch, it treats all the resources of the project never seen by the build server/build tool. It takes the full project as an input, checks the dependencies, compiles all the source files and builds all the parts in order. After that assemble it into build artifact.

Incremental Build
An incremental build uses the ‘last build state’, this last build state is maintained by the build server or build tool. It checks and compares the source files, as well everything that depends on the target. If any dependency has been modified after the target was last built then the target will again rebuild, otherwise, the file from the last build will be reused.

There are various ways to trigger the build like:
Manual Build Trigger
Schedule Build Trigger
Source Code Repository Build Trigger
Post-Process Build Trigger

We have various build tools which we can use to automate this build process like:
Make
Ant
Maven
Gradle
Grunt etc.



Comments

Popular posts from this blog

Reducing Manual Tasks in Salesforce DevOps

  🚩Focus: Automating the Deletion of Old Flow Versions ❓One of the most frequently asked questions I get as a DevOps Consultant is: “How can we reduce manual tasks during deployments?” A common manual task is deleting outdated Flow versions in Salesforce. Here’s why automating this step is valuable: 🚨 Why Automate This? Deleting old Flow versions is a best practice that helps in several ways: Improves overall performance Reduces clutter in the environment Makes the system easier to manage, especially during continuous development and iteration How to Automate Flow Deletion Deleting old Flow versions is fairly simple in itself, but doing it manually across multiple orgs during forward or backward promotions can become a tedious and error-prone process. 🚩Here are a few ways to automate it: 1. Using Salesforce Inspector Reloaded or Other Tools Supporting Tooling API You can run a query to fetch obsolete Flow versions and delete them using tools that support the Tooling API. 2. Usin...

Sending mail using powerscript

$EmailFrom = "XXXXXX@gmail.com" $EmailTo = "XXXXX@outlook.com" $Subject = "Subject" $Body = "Body" $SMTPServer = "smtp.gmail.com" $SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587) $SMTPClient.EnableSsl = $true $SMTPClient.Credentials = New-Object System.Net.NetworkCredential("XXXXX@gmail.com", "XXXXXXX"); $SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)

Jenkins for salesforce on RHEL OS or CentOS and configuring jenkins slave

To find the version  cat /etc/os-release sudo su - yum install jyava-11-openjdk-devel curl --silent --location http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo | sudo tee /etc/yum.repos.d/jenkins.repo sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key sudo yum install jenkins -y sudo systemctl enable jenkins sudo systemctl start jenkins systemctl status jenkins sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp sudo firewall-cmd --reload =================================================== Create a another instance for slave connect the vm using pem file and  cd ~/.ssh ssh-keygen -t rsa -C "The access key for Jenkins slaves" cat id_rsa.pub > ~/.ssh/authorized_keys cat id_rsa Add the SSH Private Key to Jenkins Credentials Go to jenkins dashboard –> credentials –> Global credentials –> add credentials Create a Slave in jenkins CONFIGURE AGENT -> LAUNCH METHOD -> Manually trusted key verification strategy - > SAVE. If Manua...