The goal with Codiac is to remove that notion and put engineers in the right direction (truly).
In this blog post, youʼll learn about what Codiac is and how to dive into the SDLC journey with it today.
To follow along with this blog post in a hands-on fashion, you need the following:
If you cannot install these, youʼre still welcome to follow along with the hands-on piece from a theoretical perspective to gain the knowledge needed for future use.
The cloud-native vendor landscape typically looks like one of the following:
1. A promise to make the life of engineers easier, but doesn't deliver.
2. A promise to make life easier and delivers but at a hefty cost.
3. Open-source tooling to make life easier, which is great, but can also scare organizations because they donʼt know whatʼll end up happening to the project.
And if you find a great tool/piece of software that helps, thereʼs still a huge problem - leadership, product managers, and management still have no idea whatʼ s going on. Engineers constantly hear “Whatʼs taking so long?ˮ or “Can I have an update?ˮ and the answers can be complex.
With the above, we now have two problems to solve. The first is to make engineerʼs lives easier in an efficient way that wonʼt break the bank and wonʼt mean learning 10ʼs of new tools. The second problem is the bridge between engineers, management, product teams, and leadership.
These two problems can be solved with Codiac.
Codiac provides not only a UI to see whatʼs happening within your SDLC in an easy fashion for everyone from product to management to engineers to view and observe but a CLI to make deployments easy and efficient. For example, with one command and a few prompts, you can have a containerized application deployed with proper ports, firewall rules, and Ingress.
Thereʼs one goal when it comes to Codiac - make everyoneʼs life thatʼ s part of the SDLC as efficient as possible.
Now that you know a bit about Codiac at a high level, letʼ s learn how to set it up.
1. First, go to the Codiac website: https://www.codiac.io/
2. Click the blue Try it free button.
3. Youʼll be brought to a few pages that ask you information like your company name, email, etc. for signup purposes.
Once complete, you will be brought to a page that looks like the following.
Codiac is SaaS-based, which means there are prerequisites you need locally to get it up and running (like Docker and NPM), but theyʼre storing data for you which means you donʼt have to worry about the underlying infrastructure.
Your Codiac account is now configured, so itʼs time to begin the installation. Youʼll see the installation in a few parts:
Codiac's installation package is via NPM (which is why JavaScript is one of the prerequisites), so youʼll need to bring down the Codiac CLI via NPM which is the JavaScript package manager. The command below pulls down the Codiac CLI.
npm i -g @codiac.io/codiac-cli
You can then use the Codiac CLI to log into your Codiac account with the same email and password you created/used in the previous section.
codiac login
Once Codiac is installed, youʼll be brought to the UI. The UI will show a few steps to get Codiac up and running. The first step is the Asset. An Asset can be any entity, like a docker image, to get your SDLC started. You should see a screenshot similar to the one below.
1. Click the Continue button.
2. Youʼll then see a command to run. Open up the terminal and run the following:Engineers live in a world where things are either complex or theyʼre promised ease of use, which results in more complexity. Tools and various pieces of software are marketed in a way that complicates more than it resolves.
codiac asset create
3. Youʼll be prompted to add a cloud registry. The reason why is because Codiac wants to help you get up and running right away, so one of the first steps is to pull down a containerized image to deploy.
Log into the container registry that you typically use. The four choices are AWS ECR, Azure ACR, ArtifactHub, and DockerHub.
4. When you choose a container registry, youʼll be prompted to log in. For example, if you choose AWS ECR, youʼll need to log in via AWS IAM access key/secret.
If you donʼt already have an IAM key/secret, you can create one from the AWS portal. The IAM users key/secret will need CLI access.
After the authentication occurs, youʼll be prompted with several questions (see below screenshot). As youʼre going through, youʼll realize that youʼre being prompted for information to deploy your first asset (containerized application).
Codiac gets you up and running with a few questions (port number, name, ingress options, external access, etc.). The overall goal is to make your live easier when it comes to your Software Development Lifecycle SDLC journey.
Once the asset is created, youʼll need a place to deploy your application. Thatʼs where Codiacʼs cluster creation and configuration comes into play.
1. Use the Codiac cluster create command.
codiac noc cluster create
2. The first prompt youʼll see is to choose a cloud provider. At the time of writing this (July 2024), the two cloud provider options are AWS and Azure.
3. Authenticate to your cloud provider. In the example below, authentication is occurring against AWS.
4. When you get authenticated, youʼll see several prompts come up to define how you want your Kubernetes cluster to look. Everything from the Worker Node size to the subset to the region and everything in between.
5. After typing in all of the prompts, youʼll be able to create your cluster per the screenshot below.
At the time of writing this (July 2024), there isnʼt a way to import an existing cluster. This feature will be added in the near future. For now, youʼll have to create a new cluster.
Codiac is CLI-based for installation and UI-based for viewership. This brings the best of both worlds to people who need to view the information and people who need to deploy the workloads. (although, we hope to see a declarative method like k8s Operators or an IaC method in the future). With a few button clicks, commands, prompts, and youʼre off to the races, which is the goal for any highly performing pragmatic team.