# Build and Publish a Bundle Project

# Overview

This tutorial describes how to deploy an existing Villanova project directory into the Local Hub. Following the steps below will:

  • Build Docker images for the bundle and any microservices
  • Push the Docker images to a Docker registry
  • Apply the bundle custom resource to Kubernetes
  • Install the bundle into an Villanova Application

The Villanova Bundle CLI tool (ent bundle) automates many of the tasks involved in deploying an Villanova project bundle.

# Prerequisites

# Create and Deploy a Bundle Project

The following steps leverage the Villanova ent bundle command and its convenience methods.

  1. From the root bundle directory, generate the Docker image:

    ent bundle pack
    

    This builds the bundle components and Docker images.

  2. Publish the Docker image to a Docker registry:

    ent bundle publish
    
  3. Deploy the bundle to your Villanova Application:

    ent bundle deploy
    

    Your bundle will appear in the Local Hub of your Villanova instance, accessible from App BuilderHub, and show a status of DEPLOYED.

  4. Install the bundle in your Villanova Application from App BuilderHub or with the following command:

    ent bundle install
    

    Your bundle will now show a status of INSTALLED.

# Notes

The Villanova Platform downloads and installs the Docker images for microservices and installs the micro frontends into the Villanova Application. You can add micro frontend widgets to a page or page template provided by Villanova, or to one you create yourself following the Page Management tutorial.

An application based on the Villanova Blueprint expects a user to be authenticated. If your project bundle was generated using the Villanova Component Generator, your widget can only be added to a page template that includes the UX fragment keycloak_auth.