Accend Networks San Francisco Bay Area Full Service IT Consulting Company

Categories
Blogs

AWS CodeCommit: Streamlining Source Control in the Cloud.

What is AWS CodeCommit? Streamlining Source Control in the Cloud.

aws-code-commit

In the era of cloud computing, source control is a pivotal aspect of the workflow, ensuring that code changes are managed efficiently, collaborative efforts are streamlined, and the integrity of the codebase is maintained. Amazon Web Services (AWS) offers a robust solution for source control in the cloud with AWS CodeCommit. This article delves into the features, benefits, and use cases of AWS CodeCommit. We will also go ahead and create a code commit repository and clone the repo to our local machine, add files, commit and push them to our AWS code repository.

What is AWS CodeCommit?

AWS CodeCommit is a version control service hosted by Amazon Web Services that allows developers to store and manage their source code, binaries, and other assets in the AWS cloud.  Additionally, it is designed to work seamlessly with existing Git tools, making it easy for developers to integrate it into their current workflows.

Key Features of AWS CodeCommit.

Fully Managed Service: AWS CodeCommit takes care of the backend infrastructure, so developers can focus on writing code. There are no servers to manage.

Scalability: CodeCommit can handle repositories of any size, with the ability to scale up as your project grows.

High Availability and Durability: your repositories are always accessible and your data is protected against loss.

Security: CodeCommit integrates with AWS Identity and Access Management (IAM) to provide robust access control. You can use IAM policies to define who can access your repositories and what actions they can perform.

code-commit-security

Integration with AWS Services: CodeCommit integrates seamlessly with other AWS services such as AWS CodeBuild, AWS CodeDeploy, and AWS CodePipeline. This allows you to create a complete CI/CD pipeline using AWS tools, enhancing your development and deployment workflows.

integration-aws

Standard Git Interface: CodeCommit supports the standard Git interface, so developers can use their preferred Git client, command-line tools.

Getting Started with AWS CodeCommit

Prerequisite.

Make sure you have full permission to Codecommit, or you can log in as an administrative user additionally, you should have git installed and configured on your machine.

 

Create a Repository

Log in to your AWS management console, in the search box, type Codecommit then select codecommit under services.

repository

In the code commit UI on the left-hand side, select repositories then click Create Repository.

create-repository

In the create repository dashboard, under repository settings, name your repo, will call mine demo-commit-repo.

Codecommit is encrypted by default using KMS, but you can also choose your custom keys. We will leave it at AWS-managed keys with KMS.

Leave all other settings as default then click Create Repository.

create-respository

Success, we are greeted with connection steps. We can see HTTPS, SSH, HTTPS(GRC).

demo-code-commit

If you don’t see SSH then it means you are connected as the root user.

We will for now use HTTPS git credentials for Codemmit to connect to our git repository.

So let us log in to the I AM console.

 

services

Select users. Click your username, move to the security tab then scroll all the way down to HTTPS for git credentials.

 

git-credentials

Click on generate and your codecommit credentials will be generated. Click the download button.

git-download

Go back to the codecommit repository select your repo then click the drop-down button of the clone URL then select clone HTTPS.

In this case, it will copy the HTTPS-type URL.

repo-copied

Use your preferred Git client to clone the repository to your local machine. This allows you to start adding code and making changes.

Go back to your terminal and type in git clone and paste in the cloned URL. When you press enter, you will be prompted for your username and password. Paste them in then press enter.

git-command

We have cloned our remote repo into our local machine.

git-command

With the repository cloned, you can push your changes to CodeCommit.

We will now copy a few files into our directory, commit these files, and push them to our remote repo.

Using linux command make sure you are in the repo directory then add copy files to your repo.

git-command

Using git add the files and then commit the changes as shown in the picture bellow.

ubuntu-command-line
ubuntu-command-line

Once the changes are commited, you can then push them to the remote repo by using the below command.

ubuntu-command-line

Now let’s go and check codecommit, and yes indeed the new files have been pushed to the codecommit repository.

code-commit-repo

If you click on the commits on the left side of the repo UI, you can see the commit history.

code-commit-repo

This brings us to the end of this blog. AWS CodeCommit offers a powerful, secure, and scalable solution for source control in the cloud.

Thanks for reading, and stay tuned for more.

If you have any questions concerning this article or have an AWS project that requires our assistance, please reach out to us by leaving a comment below or email us at [email protected].

 

Thank you!

Categories
Blogs

Cisco WebEx Hybrid Solutions

Cisco WebEx Hybrid Solutions

By connecting existing network resources and on-premises unified communications services to the Cisco WebEx cloud. More collaboration capabilities will be provided, along with consistent, unified user and administrator experiences
These days almost organizations are choosing collaboration services from the cloud but many are unable to move all their services to the cloud. WebEx Hybrid Services bring cloud and premises based services together as one solution to deliver the best calling ,meeting and messaging .
There are different scenarios for hybrid calling between WebEx Cloud and CUCM on premise

1.0 Hybrid Calling for WebEx Devices (Device Connector)

Hybrid Calling for WebEx Devices provides hybrid call functionality for devices that are added to Workspaces in Control Hub. WebEx devices are registered to the cloud, and when they are enabled with Hybrid Calling, they also connect to onpremises Unified Communication Solution.
WebEx devices in the Workspace become a part of your existing on-premises dial plan, allowing these devices to call user extensions or the PSTN, and receive incoming calls Like devices registered directly to the on premise Cisco Unified Communication Solution (CUCM).
WebEx App can also have a calling capability while WebEx APP connected to a cloud-registered WebEx device that is enabled for Hybrid Calling. At this case, Users dial directly from WebEx App and have the call take place on the WebEx device.

On-premises and cloud Requirements for Hybrid Calling for WebEx Devices.

Before configuring devices for the service, ensure to meet all the prerequisites

WebEx Devices

These devices can get on-premises and PSTN calling functionality from the Unified CM after they’re enabled for Hybrid Calling. You could check all supported devices through below link

Cisco Unified Communication on-premises Solution

WebEx Device Connector

To configure Hybrid Calling for WebEx Devices, the WebEx Device Connector Software has to be installed on Machine has network access to the Unified CM that contains configuration that you want to synchronize to WebEx cloud-registered devices in Workspaces.
The WebEx Device Connector is a lightweight piece of software that could be installed on supported Windows or MAC operating systems:

Active Hybrid calling services for organization

Hybrid Calling is a service hosted by WebEx Control Hub, Administrator of WebEx Control Hub can enable this service then add this service to WebEx cloud-registered devices.

Network requirements

Open required ports for

2.0 Hybrid Calling for Webex App (Unified CM)

This Hybrid Scenario known as Migration from Jabber to WebEx App, WebEx App can be registered directly to Cisco Unified Communications Manager call control environment (on-premises enterprise). WebEx App Users will gain all on Premises experiences like Cisco Jabber, allowing them to directly make calls in WebEx App through your Unified CM environment without linking WebEx App with Devices registered on Cloud.
Cisco Unified CM and Mobile and Remote Access (MRA) solution will be used by WebEx App for registration to calling Services on Cisco Call Manager on premise similar to Jabber.
WebEx App makes its primary connection to the WebEx cloud to get its service configuration (messaging, meetings, presence, contact lists, calling behavior, and so on), but it registered directly with on premise Cisco Call manager for calling services like Jabber.

On-premises and cloud Requirements for Hybrid Calling for WebEx App.

Cisco Unified Communication on-premises Solution

Licenses

Recommended configuration but not mandatory

3.0 Hybrid Calling Through Integration between WebEx Calling and Cisco CUCM

To allow direct dialing between phones registered to Unified CM and phones in WebEx Calling locations, the integration through SIP trunk between Cisco Call manager (on-premises calling solution) and WebEx Calling (cloud calling solution) will be required.
Also this integration is required in case of transition FROM Unified CM (on-premises calling solution) TO WebEx Calling (cloud calling solution)

Local Gateway

The local gateway is an edge device for Public Switch Telephony Network (PSTN) interworking and on premises Unified CM interworking with WebEx Calling. The local gateway can be deployed standalone or in deployments where integration into Cisco Unified Communications Manager is required.
The trunk between the local gateway and WebEx Calling is always secured using SIP TLS transport and SRTP for media between Local Gateway and the WebEx Calling Access SBC.

Hardware and Software Requirements for Local Gateway

Make sure the platform is running a supported IOS-XE release as per the

License for Local Gateways

CUBE calling licenses must be installed on the local gateway

Configuring Local Gateway on WebEx Calling

There are two options to configure the Local Gateway for your WebEx Calling trunk
WebEx Calling requires secure signaling and media. The local gateway performs the encryption, and a TLS connection must be established outbound to the cloud

Configuring Local Gateway on Cisco Unified CM

Integration between Cisco Call Manager and CUBE has to be SIP based , this integration could be secured or non

Call Routing Considerations

Calls from WebEx Calling to Unified CM

The WebEx Calling routing logic works like this: if the number that is dialed on a WebEx Calling endpoint cannot be routed to any other destination within the same customer in WebEx Calling, then the call is sent to the local gateway.

Calls From Unified CM to WebEx Calling

To enable call routing from Unified CM to WebEx Calling on Unified CM a set of routes need to be provisioned to define the set of +E.164 and enterprise numbering plan addresses in WebEx Calling

WebEx Calling Licenses

WebEx Calling provides three license types