Skip to content

Commit e531a6a

Browse files
Feedback
1 parent 32dca78 commit e531a6a

File tree

8 files changed

+26
-60
lines changed

8 files changed

+26
-60
lines changed

content/product/insights-governance.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ preview:
2323

2424
overview:
2525
header: Complete visibility and control for your cloud
26-
title: See everything. Control everything. Ship with confidence.
27-
subtitle: Continuous Compliance, By Construction
26+
title: Continuous Compliance, By Construction
27+
subtitle: See everything. Control everything. Ship with confidence.
2828
body: |
2929
Stop compliance violations before they become problems. Pulumi Insights & Governance provides a complete lifecycle for auditing existing infrastructure, fixing violations with AI-powered remediation, and preventing future infrastructure issues using policy-as-code guardrails.
3030
@@ -53,7 +53,9 @@ overview:
5353
features:
5454
- header: Audit Existing Infrastructure Against Compliance Standards
5555
body: |
56-
Continuous audit scans evaluate your entire infrastructure, whether managed by Pulumi, Terraform, CloudFormation, or created manually, against industry frameworks without disrupting deployment pipelines. Non-blocking compliance checks provide instant visibility into your security posture across CIS Controls, NIST SP 800-53, HITRUST CSF, and PCI DSS standards.
56+
Works with ANY infrastructure—Pulumi, Terraform, CloudFormation, or manual deployments.
57+
58+
Continuous audit scans evaluate your entire infrastructure against industry frameworks without disrupting deployment pipelines. Non-blocking compliance checks provide instant visibility into your security posture across CIS Controls, NIST SP 800-53, HITRUST CSF, and PCI DSS standards.
5759
items:
5860
- Pre-built compliance frameworks ready to deploy
5961
- Evaluate existing infrastructure on demand with audit mode
@@ -86,8 +88,8 @@ features:
8688
- Configuration change history
8789
- Resource relationship mapping
8890
graphic: /images/product/insights-search.png
89-
- header: Embed Governance Into Developer Workflows
90-
body: Security and compliance become enablers, not blockers. Developers get clear policy guidance during local development, immediate feedback during deployments, and AI-assisted remediation when issues arise. Platform teams prove measurable value through compliance metrics while maintaining development velocity.
91+
- header: Give Developers AI-Powered Guardrails, Not Red Tape
92+
body: Developers get immediate policy feedback during deployment, with AI-generated fixes when issues arise. Platform teams get measurable compliance improvements without becoming bottlenecks. Policy enforcement accelerates development velocity.
9193
items:
9294
- Shift-left security with pre-deployment validation
9395
- Clear, actionable error messages

layouts/product/insights-governance.html

Lines changed: 19 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,6 @@
55
{{ define "main" }}
66
{{ $pageContext := . }}
77

8-
<!-- <section id="demo-video" class="container mx-auto my-16 flex flex-col">
9-
<div class="flex flex-col lg:flex-row px-8 w-full py-24 px-12"
10-
style="background: linear-gradient(90deg, white 0%, #ddd6fe 50%, white 100%);">
11-
<div class="w-full lg:w-1/2 lg:pr-8 order-last lg:order-first flex flex-col justify-center">
12-
<h5 class="text-gray-800 text-display text-2xl">{{ .Params.preview.header | markdownify }}</h5>
13-
<p class="text-gray-600 text-xl mb-8">{{ .Params.preview.description | markdownify }}</p>
14-
<pulumi-hubspot-form form-id="{{ .Params.preview.hubspotID }}"
15-
class="newsletter newsletter-dark-border insights-preview-form"></pulumi-hubspot-form>
16-
</div>
17-
<div class="w-full lg:w-1/2 mb-8 lg:mb-0">
18-
<div id="video" style="position: relative; top: -100px;"></div>
19-
<div class="responsive-video-container video-16-9 rounded-xl shadow-2xl relative h-0 overflow-hidden">
20-
<iframe src="https://www.youtube.com/embed/{{ .Params.preview.videoID }}?rel=0"
21-
style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" allowfullscreen=""
22-
title="{{ .Params.preview.title }}"></iframe>
23-
</div>
24-
</div>
25-
</div>
26-
</section> -->
278

289
<section id="description" class="container mx-auto my-32 flex flex-col">
2910
<h4 class="hidden lg:block xl:hidden text-center mb-4">{{ .Params.overview.title }}</h4>
@@ -47,27 +28,10 @@ <h5 class="block lg:hidden xl:block text-xl mt-4">{{ .Params.overview.subtitle |
4728
</div>
4829
</div>
4930
</div>
50-
<!-- <div class="flex flex-wrap justify-content items-stretch text-left mt-16">
51-
{{ range $item := .Params.overview.items }}
52-
<div class="w-full lg:w-1/3 p-3">
53-
<div class="h-full card bg-white p-12">
54-
<div class="icon-section my-">
55-
{{ partial "color-icon.html" (dict "icon" $item.icon "icon_color" $item.icon_color) }}
56-
</div>
57-
<div class="mt-8">
58-
<h5>{{ $item.title }}</h5>
59-
</div>
60-
<div>
61-
<p>{{ $item.description | markdownify }}</p>
62-
</div>
63-
</div>
64-
</div>
65-
{{ end }}
66-
</div> -->
6731
</section>
6832

6933

70-
<section id="search " class="container my-32 mx-auto text-center px-6">
34+
<section id="search " class="container my-32 mx-auto px-6">
7135
<h2 class="text-center">Key Features</h2>
7236
{{ range $index, $feature := .Params.features }}
7337
{{ $order := "lg:order-first lg:pr-4" }}
@@ -76,11 +40,11 @@ <h2 class="text-center">Key Features</h2>
7640
{{ $order = "lg:order-last lg:pl-4"}}
7741
{{ $padding = "lg:pr-16" }}
7842
{{ end }}
79-
<div class="container mx-auto flex flex-col text-center items-center lg:flex-row my-32">
43+
<div class="container mx-auto flex flex-col lg:flex-row my-32">
8044
<div class="w-full lg:w-1/2 lg:content-center {{ $padding }}">
8145
<h3 class="m-0 p-0">{{ $feature.header }}</h3>
8246
<h4 class="p-0 m-0 text-gray-800">{{ $feature.subheader }}</h4>
83-
<div class="max-w-4xl mx-auto my-8">{{ $feature.body | markdownify }}</div>
47+
<div class="my-8">{{ $feature.body | markdownify }}</div>
8448
{{ if $feature.items }}
8549
<ul class="text-left list-disc pl-6 space-y-2">
8650
{{ range $item := $feature.items }}
@@ -90,17 +54,17 @@ <h4 class="p-0 m-0 text-gray-800">{{ $feature.subheader }}</h4>
9054
{{ end }}
9155
</div>
9256
<div class="w-full lg:w-1/2 {{ $order }}">
93-
<img class="mx-auto" src="{{ $feature.graphic }}" />
57+
<img class="mx-auto shadow-lg rounded-lg" src="{{ $feature.graphic }}" />
9458
</div>
9559
</div>
9660
{{ end }}
9761
</section>
9862

99-
<section id="compliance-frameworks" class="container my-32 mx-auto text-center">
63+
<section id="compliance-frameworks" class="container my-32 mx-auto">
10064
{{ with .Params.compliance_frameworks }}
10165
<div class="card p-6 lg:p-16 bg-white">
102-
<h2 class="m-0 p-0">{{ .title }}</h2>
103-
<p class="mx-auto">{{ .description | markdownify }}</p>
66+
<h2 class="m-0 p-0 text-center">{{ .title }}</h2>
67+
<p>{{ .description | markdownify }}</p>
10468
{{ if .items }}
10569
<div class="hidden md:flex flex-wrap justify-center items-center gap-8 mt-12 mb-8">
10670
{{ range $item := .items }}
@@ -110,7 +74,7 @@ <h2 class="m-0 p-0">{{ .title }}</h2>
11074
{{ end }}
11175
</div>
11276
{{ end }}
113-
<div class="mt-12">
77+
<div class="mt-12 text-center">
11478
<a href="/docs/reference/cloud-rest-api/policy-packs/" class="btn-primary">Explore the Policy Packs</a>
11579
</div>
11680
</div>
@@ -119,7 +83,7 @@ <h2 class="m-0 p-0">{{ .title }}</h2>
11983

12084
<!-- spear quote -->
12185
<section class="bg-gradient-to-r from-white from-0% via-violet-100 via-50% to-white to-100% py-16">
122-
<div class="container text-center mx-auto w-full md:w-2/3 mb-4 px-6">
86+
<div class="container mx-auto w-full md:w-2/3 mb-4 px-6">
12387
{{ with .Params.customer_quotes.spear }}
12488
<p class="text-xl description">{{ .text | markdownify }}</p>
12589
<p class="text-lg font-semibold description">{{ .author }}</p>
@@ -136,36 +100,36 @@ <h2 class="text-center mb-24">{{ .Params.governance.title }}</h2>
136100
<div class="rounded-lg bg-white flex flex-wrap mx-auto p-4">
137101
{{ range $feature := .Params.governance.items }}
138102
<div class="w-1/2 md:w-1/3 lg:w-1/3 p-4">
139-
<div class="text-center h-full">
103+
<div class="h-full">
140104
<h5>{{ $feature.header }}</h5>
141105
<p>{{ $feature.body }}</p>
142106
</div>
143107
</div>
144108
{{ end }}
145109
</div>
146110
</div>
147-
<div class="mt-8 text-center">
148-
<img class="mx-auto w-full rounded-xl shadow-lg" src="{{ .Params.governance.image }}"
111+
<div class="mt-8">
112+
<img class="w-full rounded-xl shadow-lg" src="{{ .Params.governance.image }}"
149113
alt="{{ .Params.governance.title }}" />
150114
</div>
151115
</div>
152116
</section>
153117

154-
<section id="pricing" class="container my-32 mx-auto text-center">
118+
<section id="pricing" class="container my-32 mx-auto">
155119
{{ with .Params.pricing }}
156120
<div class="card p-6 lg:p-16 bg-white">
157-
<h2 class="m-0 p-0">{{ .title }}</h2>
158-
<p class="mx-auto">{{ .description | markdownify }}</p>
159-
<div class="mt-12">
121+
<h2 class="m-0 p-0 text-center">{{ .title }}</h2>
122+
<p>{{ .description | markdownify }}</p>
123+
<div class="mt-12 text-center">
160124
<a href="/pricing" class="btn-secondary">View Pricing</a>
161125
</div>
162126
</div>
163127
{{ end }}
164128
</section>
165129

166-
<section id="learn" class="container mx-auto text-center my-32 px-6">
167-
<div class="max-w-5xl mx-auto text-center px-6">
168-
<h2>{{ .Params.learn.title }}</h2>
130+
<section id="learn" class="container mx-auto my-32 px-6">
131+
<div class="px-6">
132+
<h2 class="text-center">{{ .Params.learn.title }}</h2>
169133
</div>
170134
<div class="flex flex-wrap justify-content items-stretch text-left my-4">
171135
{{ range $index, $item := .Params.learn.items }}
-51.2 KB
Loading
-18 KB
Loading
-27.5 KB
Loading
11.9 KB
Loading
15 KB
Loading

static/images/product/nist.png

-43.5 KB
Loading

0 commit comments

Comments
 (0)