# software-delivery-shield-demo-java **Repository Path**: mirrors_GoogleCloudPlatform/software-delivery-shield-demo-java ## Basic Information - **Project Name**: software-delivery-shield-demo-java - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-10-24 - **Last Updated**: 2026-02-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Software Delivery Shield Demo for Java This sample demonstrates security features for an end to end Java workflow. This samples deploys a multi-tiered application with a frontend service and a backend service to Google Kubernetes Engine or Cloud Run using Cloud Deploy. > **⚠️ WARNING:** This demo includes a vulnerable dependency in [backend/pom.xml](./backend/pom.xml) for illustrative purposes! ## Demo Instructions [Deploy to GKE](./instructions_gke.md) [Deploy to Cloud Run](./instructions_cloudrun.md) ### Pre-Reqs The permissions needed for these tutorials can be fulfilled by the [Owner or Editor roles](https://cloud.google.com/iam/docs/understanding-roles#basic-definitions). > **Note:** [Organization](https://cloud.google.com/resource-manager/docs/organization-policy/overview) or [Binary Authorization](https://cloud.google.com/binary-authorization/docs/key-concepts#policies) policies may already be set for your organization and may cause deployment errors. You will need: * To create or select a [Google Cloud project](https://cloud.google.com/resource-manager/docs/creating-managing-projects). > **Note:** If you don't plan to keep the resources that you create in this procedure, create a project instead of selecting an existing project. After you finish these steps, you can delete the project, removing all resources associated with the project. * To make sure that billing is enabled for your Cloud project. Learn how to [check if billing is enabled on a project](https://cloud.google.com/billing/docs/how-to/verify-billing-enabled). * To [Install and initialize the gcloud CLI](https://cloud.google.com/sdk/docs/install) and authenticate via: `gcloud auth login`. ## Directory contents - `cloudbuild.yaml` - Cloud Build configuration file to build images and deploy with Cloud Deploy - `clouddeploy.yaml` - Cloud Deploy pipeline definition - `skaffold.yaml` - A schema file that defines Skaffold configurations ([skaffold.yaml reference](https://skaffold.dev/docs/references/yaml/)). The Skaffold files are used by Cloud Deploy releases. - `policy.yaml` - Binary Authorization policy - `kubernetes-manifests/` - Contains Kubernetes YAML files for the Guestbook services and deployments, including: - `guestbook-frontend.deployment.yaml` - deploys a pod with the frontend container image - `guestbook-frontend.service.yaml` - creates a load balancer and exposes the frontend service on an external IP in the cluster - `guestbook-backend.deployment.yaml` - deploys a pod with the backend container image - `guestbook-backend.service.yaml` - exposes the backend service on an internal IP in the cluster - `cloudrun-manifests/` - Cloud Run Service YAML files - `guestbook-backend.dev.service.yaml` - `guestbook-backend.prod.service.yaml` - `guestbook-frontend.dev.service.yaml` - `guestbook-frontend.prod.service.yaml`