Simplify App Development on Kubernetes

This blog series will help you get familiar with Entando's CLI (ENT) which simplifies building and deploying applications for Kubernetes. ENT CLI is your starting point and guide to all development on the Entando platform.

Ed Shin - mardi 1 juin 2021
Tags: Technical

ENT CLI Series

Entando CLI (ENT) is a command line interface designed to simplify the development of Entando applications on Kubernetes.

It streamlines environment setup, enables you to spin up a local instance of Entando on a single node Kubernetes cluster, packages application updates for deployment, generates micro frontends and microservices from a database model, and comes with a number of diagnostic utilities to debug your application in case something goes wrong.

  1. Simplify App Development on Kubernetes → This lesson
  2. Quickstart Environment
  3. Packaging and Deployment
  4. Working With Multiple Environments
  5. Exporting Components
  6. Utilities & Diagnostics

What You’ll Learn

In this lesson, we’ll install ENT CLI, and explore its capabilities.

Install ENT CLI

Let’s dive right in, and install ENT CLI.

curl -L https://get.entando.org/cli | bash

Next, we’ll activate it so we can use the “ent” command.

source "$HOME/.entando/activate"

Check Install

To check that the “ent” command is working, type:

ent which

This tells you where ENT is installed and which version you’re using.

ENT Commands

Now let’s check out ENT’s capabilities.

ent help

~~~~~~~~~~~~~~~~~~~ Entando CLI ~~~~~~~~~~~~~~~~~~~ > Essentials: - Activate using: /Users/ed/.entando/ent/v6.3.2/cli/v6.3.2/activate - Dectivate using: /Users/ed/.entando/ent/v6.3.2/cli/v6.3.2/deactivate > Available commands: - app => Helps managing an EntandoApp - app-info => Displays information about an entando app - bundler => Wrapper for the ENT private installation of the entando bundle tool. - check-env => Checks the environment for required dependencies and settings - diag => Runs some diagnostic and collects the related info in a tgz file - ecr => Helps managing an the Entando ECR - ent => Helps managing an the local ents - help => Helps in having help - host => Helps managing the system that hosts the quickstart VM - jhipster => Wrapper for the ENT private installation of jhipster. - kubectl => Helper for using kubectl in ent managed scenarios - npm => Wrapper for the ENT private installation of npm. This is mostly for internal use - pod => Displays information related to a set of pods - prj => Helps managing Entando bundle projects - profile => Helps managing an EntandoApp - quickstart => Helps locally installing entando instances - run-tests => Run the internal tests

You can get detailed information by using the help command, but it can be useful to have a high level overview of the commands and the use cases they were designed for.

Packaging & Deployment

ent prj

One of the most useful commands, ent prj (project) is how you package updates to your Entando application for distribution across your Kubernetes cluster.

In addition to automatically generating everything you need to get a Spring Boot microservice running in Kubernetes, ENT coordinates the deployment of your micro frontends and microservices as a single deployment.

ENT automates the process of creating and publishing Docker images, deployments (Helm templates), and Kubernetes custom resources, and applies them to your cluster.

Environment Setup

ent check-env

Automatically set up your development environment for a specific Entando version and instance.

Quickstart

ent quickstart

Spin up a new Entando instance in your local development environment or Kubernetes cluster.

Working with Multiple Environments

ent profile

Use profiles to switch between different Entando applications on different clusters using different kubernetes contexts, kubeconfig files, namespaces where your application is deployed, and other configuration data.

Component Repository

ent ecr

View components or packaged components (bundles) that are available for your application. Install, uninstall, and deploy them via the command line. Use this command to update your Entando applications in your Kubernetes cluster.

Code Generator

ent jhipster

Generate database entities, microservices and micro frontends.

Bundle Export / Import

ent bundler

Snapshot an entire application at a specific point in time, publish snapshots (or application templates) to a shared component repository, migrate applications from one environment to another, and use base templates to easily create new Entando applications.

Utilities & Diagnostics

ent app, app-info, bundler, diag, host, kubectl, npm, pod

View the current state of your application, extract all Kubernetes logs including Entando pods, container logs, and scripts, including Kubernetes level logs, infrastructure level logs, status, and Kubernetes objects.

What’s Next?

In the next lesson, we’ll use the quickstart command to spin up our own Entando instance on our local machine.

Additional Resources

WHITE PAPER

CIO Alert - There is an Application Composition Platform in your Future

By Massimo Pezzini, Independent IT Advisor

Téléchargez

White-Paper-Pattern_mockup 3.png