Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
Show all changes
139 commits
Select commit Hold shift + click to select a range
aa549e5
Migrate WAF to UDR
im2nguyen May 29, 2025
e1ec28b
add index file for waf so itll load the index page
im2nguyen May 29, 2025
f83767a
mock up for waf content
cjobermaier May 30, 2025
e0ac5c8
Merge branch 'main' into migrate-waf-to-udr
im2nguyen May 30, 2025
7be8eb5
add appendix example
cjobermaier Jun 9, 2025
0535bbb
Merge branch 'main' into migrate-waf-to-udr
cjobermaier Jun 25, 2025
cce6a7e
ready for content to be pushed
cjobermaier Jul 8, 2025
72df44f
Update docs-nav-data.json
cjobermaier Jul 10, 2025
a27f2fe
Add files via upload
cjobermaier Jul 10, 2025
8a2fe15
Update content/well-architected-framework/docs/docs/automate-and-defi…
cjobermaier Jul 14, 2025
2f18211
Update content/well-architected-framework/docs/docs/automate-and-defi…
cjobermaier Jul 14, 2025
051a36e
Update overview.mdx
cjobermaier Jul 14, 2025
14e97b3
Update collaboration.mdx
cjobermaier Jul 14, 2025
2b5daa1
Waf 316 create high performing teams (#559)
cjobermaier Jul 14, 2025
95c9460
first push to build preview
cjobermaier Jul 14, 2025
d1b7513
WAF 315 zero downtime deployments (#575)
cjobermaier Jul 14, 2025
a5d1489
first commit to build preview
cjobermaier Jul 14, 2025
8edde35
rough draft of docs
cjobermaier Jul 14, 2025
32686b1
change to team and culture
cjobermaier Jul 15, 2025
bd1b115
move policy as code up one
cjobermaier Jul 15, 2025
c4b4cdf
WAF-306 test
cjobermaier Jul 15, 2025
0c0ff97
moved policy as code to comp and gov
cjobermaier Jul 15, 2025
18e4eb9
ready for review
cjobermaier Jul 15, 2025
323d8ff
push first pass
cjobermaier Jul 15, 2025
63e2695
push first pass
cjobermaier Jul 15, 2025
ae28b4b
Fixed typos
cjobermaier Jul 15, 2025
dd84d2a
Update overview.mdx
cjobermaier Jul 15, 2025
219947a
fix pathing for iac
cjobermaier Jul 15, 2025
11a4cb9
add use policy path
cjobermaier Jul 15, 2025
970e986
Merge branch 'WAF-306-Use-infrastructure-as-code' into WAF-304-Automa…
cjobermaier Jul 15, 2025
d2bf0b9
Waf 304 automate deployments (#582)
cjobermaier Jul 15, 2025
74987a2
add pathing for automate deployments
cjobermaier Jul 15, 2025
79b5e2e
fix syntax json
cjobermaier Jul 15, 2025
c21fa40
fix syntax json
cjobermaier Jul 15, 2025
b2a702f
adding intro links
cjobermaier Jul 15, 2025
9a96af8
fix typo
cjobermaier Jul 16, 2025
2c1f6d4
unwrap
cjobermaier Jul 16, 2025
88af775
Use infrastructure as code (#576)
cjobermaier Jul 16, 2025
1151b26
First push, added rough drafts
cjobermaier Jul 16, 2025
f6d1d16
ready to branch from
cjobermaier Jul 17, 2025
b4d4bec
rough draft
cjobermaier Jul 17, 2025
39114c7
rough draft
cjobermaier Jul 17, 2025
97e128c
rough draft
cjobermaier Jul 17, 2025
8ea5d05
Apply suggestions from code review
cjobermaier Jul 17, 2025
ec90a38
Waf 298 secure ci cd pipelines (#586)
cjobermaier Jul 17, 2025
385398d
Migrate existing WAF content "React to metrics and monitoring" (#593)
im2nguyen Jul 18, 2025
b1d3b1d
Add secure data reformat
jonathanfrappier Jul 21, 2025
d028eb8
Update content/well-architected-framework/docs/docs/secure-systems/se…
jonathanfrappier Jul 21, 2025
cc57f60
Update content/well-architected-framework/docs/docs/secure-systems/se…
jonathanfrappier Jul 21, 2025
d87f067
Update content/well-architected-framework/docs/docs/secure-systems/se…
jonathanfrappier Jul 21, 2025
92bbd18
Update content/well-architected-framework/docs/docs/secure-systems/da…
jonathanfrappier Jul 21, 2025
2eb8a48
Update content/well-architected-framework/docs/docs/secure-systems/da…
jonathanfrappier Jul 21, 2025
733505d
Update content/well-architected-framework/docs/docs/secure-systems/da…
jonathanfrappier Jul 21, 2025
cd361e4
remove hard wrap, update links, minor grammar updates
im2nguyen Jul 21, 2025
7d27344
update missing link
im2nguyen Jul 22, 2025
c712d51
Migrate existing WAF content "Setup monitoring agent" (#590)
im2nguyen Jul 22, 2025
9b83f7f
update intro -> index for cleaner url
im2nguyen Jul 22, 2025
f475c36
Merge branch 'main' into migrate-waf-to-udr
im2nguyen Jul 22, 2025
1f36244
update pr preview to use migrate-waf-to-udr-docs branch for dev-portal
im2nguyen Jul 22, 2025
9295dcd
update pr preview to use migrate-waf-to-udr-docs branch for dev-portal
im2nguyen Jul 22, 2025
f756e5c
Add secure data reformat (#603)
jonathanfrappier Jul 22, 2025
6bbc964
update pr preview and docker compose file
im2nguyen Jul 28, 2025
055198f
fix local preview
im2nguyen Jul 28, 2025
49c88c0
update pages from overview -> index for cleaner urls
im2nguyen Jul 28, 2025
f73e678
another attempt at deploy preview
im2nguyen Jul 28, 2025
a0590c3
test deploy preview again
im2nguyen Jul 28, 2025
a3f1f9d
add missing docs
im2nguyen Jul 28, 2025
ea5f5ed
Add auth with certificates (#609)
jonathanfrappier Jul 28, 2025
cd8c117
add placeholders, come up with action plan
im2nguyen Jul 28, 2025
a763a9c
update index -> intro
im2nguyen Jul 28, 2025
5eb4e8c
update gha to use new workflow to preview builds
im2nguyen Jul 28, 2025
2a543a9
test gha should not run _target, fix broken links
im2nguyen Jul 28, 2025
6f078af
Develop application (#640)
cjobermaier Jul 29, 2025
bc0d671
fix broken images, clean up urls, fix minor bugs
im2nguyen Jul 29, 2025
dba9d1c
updated placeholder content, implement overview/introduction differences
im2nguyen Jul 29, 2025
6beb395
create "implementation resources" section for cross-product guidance
im2nguyen Jul 29, 2025
ca6691b
fix broken links, update what-is org
im2nguyen Jul 29, 2025
7bd6894
move ir resources into deprecated content
im2nguyen Jul 29, 2025
41383ad
fix broken links for develop apps section
im2nguyen Jul 29, 2025
589d3c0
first pass at pillar overivew pages
im2nguyen Jul 29, 2025
cd80e75
another stab
im2nguyen Jul 29, 2025
582c198
reorg content
im2nguyen Jul 29, 2025
9e06db2
remove deprecated content to get fix build error
im2nguyen Jul 29, 2025
f8a3df1
update overview pages, add missing content, fix nav bar
im2nguyen Jul 29, 2025
5e8244a
move content around so it makes more sense, update overview page
im2nguyen Jul 29, 2025
1aae8b7
fix broken links
im2nguyen Jul 29, 2025
5b2eba1
update nav
im2nguyen Jul 29, 2025
ca7f150
remove com from what is/waf
im2nguyen Jul 29, 2025
b5a3cdd
update index content
im2nguyen Jul 29, 2025
75d3d73
fix bugs
im2nguyen Jul 29, 2025
eca47ee
update missing monitor and operate content
im2nguyen Jul 29, 2025
b0e9f07
update define-and-automate-processes content/org, fix broken links
im2nguyen Jul 30, 2025
25b0ca7
fix broken links
im2nguyen Jul 30, 2025
df79f3d
fix broken links
im2nguyen Jul 30, 2025
f331a74
Create gitops.mdx
cjobermaier Jul 30, 2025
56b8c7f
Update docs-nav-data.json
cjobermaier Jul 30, 2025
7858888
WAF experiment (#644)
cjobermaier Jul 30, 2025
e43c70a
bucket define processes "as code" together (#657)
im2nguyen Jul 30, 2025
236d481
simplify nav data
im2nguyen Jul 30, 2025
0120aee
fix broken links and videos
im2nguyen Jul 30, 2025
fd1a99c
added next steps for define
cjobermaier Jul 30, 2025
f82d97d
Merge branch 'migrate-waf-to-udr' of github.com:hashicorp/web-unified…
cjobermaier Jul 30, 2025
7cfbe08
add next steps
cjobermaier Jul 30, 2025
f6e7100
added two new docs
cjobermaier Jul 31, 2025
aeb108b
Add software integrity
jonathanfrappier Jul 31, 2025
01e302e
Update content/well-architected-framework/docs/docs/secure-systems/va…
jonathanfrappier Jul 31, 2025
85571e5
Spe 296/add validate software (#665)
cjobermaier Jul 31, 2025
d3aa980
redirect
cjobermaier Jul 31, 2025
6869449
add more files and redirects
cjobermaier Jul 31, 2025
6bb0653
fix ir doc titles
cjobermaier Jul 31, 2025
8e81354
remove tao
cjobermaier Jul 31, 2025
111744e
changed workedflow name
cjobermaier Aug 1, 2025
86e8799
brushed up content
cjobermaier Aug 1, 2025
59e59ea
brushed up content
cjobermaier Aug 1, 2025
e4f96f0
Update content/well-architected-framework/docs/docs/define-and-automa…
im2nguyen Aug 1, 2025
e8493fc
Update content/well-architected-framework/docs/docs/define-and-automa…
im2nguyen Aug 1, 2025
9d74bce
Update content/well-architected-framework/docs/docs/define-and-automa…
im2nguyen Aug 1, 2025
4c2fcf1
Update content/well-architected-framework/docs/docs/define-and-automa…
cjobermaier Aug 4, 2025
9ecbd3e
Update content/well-architected-framework/docs/docs/define-and-automa…
cjobermaier Aug 4, 2025
3d71303
fix codify systems for index
cjobermaier Aug 4, 2025
4132fb3
Update content/well-architected-framework/docs/docs/define-and-automa…
cjobermaier Aug 4, 2025
9331d98
Update content/well-architected-framework/docs/docs/define-and-automa…
cjobermaier Aug 4, 2025
2d0cd6f
Update content/well-architected-framework/docs/docs/define-and-automa…
cjobermaier Aug 4, 2025
2cfb50e
fix index
cjobermaier Aug 4, 2025
2d3795c
Merge branch 'migrate-waf-to-udr' of github.com:hashicorp/web-unified…
cjobermaier Aug 4, 2025
47af604
Apply suggestions from code review
im2nguyen Aug 4, 2025
4b752e4
re-wrote database to give three main benefits
cjobermaier Aug 4, 2025
0caac63
Merge branch 'migrate-waf-to-udr' of github.com:hashicorp/web-unified…
cjobermaier Aug 4, 2025
11cbc0d
add list
cjobermaier Aug 4, 2025
dad61d0
Change titles to start with verb
cjobermaier Aug 4, 2025
517f9c5
Update build-pr-preview.yml
cjobermaier Aug 6, 2025
461d835
run new broken link build
cjobermaier Aug 6, 2025
9091d7d
run new broken link build
cjobermaier Aug 6, 2025
4b389f3
Merge branch 'main' into migrate-waf-to-udr
cjobermaier Aug 6, 2025
cb3a4e4
more url fixes
cjobermaier Aug 6, 2025
b3cab16
more broken links
cjobermaier Aug 6, 2025
6c53b37
more link fixes
cjobermaier Aug 7, 2025
6b3bc48
fix broken links
cjobermaier Aug 7, 2025
7cd5fe6
fix broken links
cjobermaier Aug 7, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions __fixtures__/productConfig.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -436,4 +436,26 @@ export const PRODUCT_CONFIG = {
// versionedDocs: true,
// websiteDir: 'website',
// },
'well-architected-framework': {
/**
* ✅ Initial migration attempt: SEEMS TO WORK
*
* Maybe worth noting: versioned docs is not enabled for `terraform-docs-common`.
* `branchForLatest` is set to `main`. We treat the single version
* as `v0.0.x` in our version metadata in the current content API:
* https://content.hashicorp.com/api/content/terraform-docs-common/version-metadata?partial=true
*/
/**
* TODO: `terraform-docs-common` has _both_ an `img` folder, _and_ a
* `public` folder. Need to investigate how these are used, and whether
* we need to move both over (eg assetDirs could be an array?)
*/
assetDir: 'img',
contentDir: 'docs',
dataDir: 'data',
productSlug: 'well-architected-framework',
semverCoerce: semver.coerce,
versionedDocs: false,
websiteDir: 'website',
},
}
22 changes: 22 additions & 0 deletions app/utils/productConfig.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -440,4 +440,26 @@ export const PRODUCT_CONFIG = {
// versionedDocs: true,
// websiteDir: 'website',
// },
'well-architected-framework': {
/**
* ✅ Initial migration attempt: SEEMS TO WORK
*
* Maybe worth noting: versioned docs is not enabled for `terraform-docs-common`.
* `branchForLatest` is set to `main`. We treat the single version
* as `v0.0.x` in our version metadata in the current content API:
* https://content.hashicorp.com/api/content/terraform-docs-common/version-metadata?partial=true
*/
/**
* TODO: `terraform-docs-common` has _both_ an `img` folder, _and_ a
* `public` folder. Need to investigate how these are used, and whether
* we need to move both over (eg assetDirs could be an array?)
*/
assetDir: 'img',
contentDir: 'docs',
dataDir: 'data',
productSlug: 'well-architected-framework',
semverCoerce: semver.coerce,
versionedDocs: false,
websiteDir: 'website',
},
}
249 changes: 249 additions & 0 deletions content/well-architected-framework/data/docs-nav-data.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,249 @@
[
{
"title": "What is well-architected framework?",
"path": "implement-cloud-operating-model"
},
{
"title": "Cloud operating model",
"path": "cloud-operating-model"
},
{
"title": "Implementation resources",
"routes": [
{
"title": "Terraform reliability",
"path": "implementation-resources/terraform-reliability"
},
{
"title": "Packer reliability",
"path": "implementation-resources/packer-reliability"
},
{
"title": "Vault reliability",
"path": "implementation-resources/vault-reliability"
},
{
"title": "Consul reliability",
"path": "implementation-resources/consul-reliability"
},
{
"title": "Nomad reliability",
"path": "implementation-resources/nomad-reliability"
}
]
},
{
"divider": true
},
{
"heading": "Framework pillars"
},
{
"title": "Automate and define processes",
"routes": [
{
"title": "Introduction",
"path": "operational-excellence/introduction"
},
{
"title": "Application deployments",
"routes": [
{
"title": "Application deployments",
"path": "automate-and-define-processes/application-deployments/application-deployments"
},
{
"title": "Evaluate existing deployments",
"path": "automate-and-define-processes/application-deployments/evaluate-existing-deployments"
},
{
"title": "Integrate CI/CD pipelines",
"path": "automate-and-define-processes/application-deployments/ci-cd"
},
{
"title": "Deploy applications",
"path": "automate-and-define-processes/application-deployments/deploy"
},
{
"title": "Package applications",
"path": "automate-and-define-processes/application-deployments/package"
},
{
"title": "Write and test applications",
"path": "automate-and-define-processes/application-deployments/testing"
}
]
},
{
"title": "Automate infrastructure",
"routes": [
{
"title": "Automate infrastructure",
"path": "automate-and-define-processes/automate-infrastructure/automate"
},
{
"title": "Codify infrastructure",
"path": "automate-and-define-processes/automate-infrastructure/codify-infrastructure"
},
{
"title": "Use version control",
"path": "automate-and-define-processes/automate-infrastructure/use-version-control"
},
{
"title": "Identify reusable components",
"path": "automate-and-define-processes/automate-infrastructure/identify-reusable-components"
},
{
"title": "Atomic deployments",
"path": "automate-and-define-processes/automate-infrastructure/atomic-deployments"
},
{
"title": "Standardize workflows",
"path": "automate-and-define-processes/automate-infrastructure/standardize-workflows"
},
{
"title": "Plan for scale",
"path": "automate-and-define-processes/automate-infrastructure/scale"
}
]
}
]
},
{
"title": "Optimize resources",
"routes": [
{
"title": "Introduction",
"path": "optimize-resources/introduction"
}
]
},
{
"title": "Design resilient systems",
"routes": [
{
"title": "Introduction",
"path": "design-resilient-systems/introduction"
},
{
"title": "Disaster recovery",
"routes": [
{
"title": "State management and disaster recovery",
"path": "design-resilient-systems/disaster-recovery/state-management-and-dr"
}
]
},
{
"title": "Zero-downtime deployments",
"routes": [
{
"title": "Zero-downtime deployments",
"path": "design-resilient-systems/zero-downtime-deployments/zero-downtime-deployments"
},
{
"title": "Infrastructures",
"path": "design-resilient-systems/zero-downtime-deployments/infrastructure"
},
{
"title": "Application",
"path": "design-resilient-systems/zero-downtime-deployments/application"
},
{
"title": "Service mesh",
"path": "design-resilient-systems/zero-downtime-deployments/service-mesh"
}
]
},
{
"title": "Fault tolerance",
"routes": [
{
"title": "Fault tolerant systems",
"path": "design-resilient-systems/fault-tolerance/fault-tolerant-systems"
},
{
"title": "Networking and communication protocols",
"path": "design-resilient-systems/fault-tolerance/networking-and-communication-protocols"
},
{
"title": "Redundancy and replication",
"path": "design-resilient-systems/fault-tolerance/redundancy-and-replication"
},
{
"title": "Resiliency and availability",
"path": "design-resilient-systems/fault-tolerance/resiliency-and-availability"
},
{
"title": "Scale and tune performance",
"path": "design-resilient-systems/fault-tolerance/scale"
},
{
"title": "Secure distributed systems",
"path": "design-resilient-systems/fault-tolerance/secure-distributed-systems"
}
]
}
]
},
{
"title": "Secure systems",
"routes": [
{
"title": "Introduction",
"path": "secure-systems/introduction"
},
{
"title": "Protect data",
"routes": [
{
"title": "Protect sensitive data",
"path": "secure-systems/protect-data/sensitive-data"
},
{
"title": "Data at-rest",
"path": "secure-systems/protect-data/data-at-rest"
},
{
"title": "Data in-transit",
"path": "secure-systems/protect-data/data-in-transit"
},
{
"title": "Tokenize data",
"path": "secure-systems/protect-data/tokenize-data"
}
]
},
{
"title": "Prevent lateral movement",
"path": "secure-systems/prevent-lateral-movement"
}
]
},
{
"divider": true
},
{
"heading": "Reference architecture"
},
{
"title": "Terraform",
"href": "/well-architected-framework/terraform/enterprise-reference-architecture"
},
{
"title": "Vault (multi-cluster)",
"href": "/well-architected-framework/zero-trust-security/multi-cluster-architecture"
},
{
"title": "Vault (integrated storage)",
"href": "/well-architected-framework/zero-trust-security/raft-reference-architecture"
},
{
"title": "Consul",
"href": "/well-architected-framework/zero-trust-networking/reference-architecture"
},
{
"title": "Nomad",
"href": "/well-architected-framework/nomad/production-reference-architecture-vm-with-consul"
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
page_title: Application deployments
description: Learn how to deploy application.
---

# Application deployments

This guide describes the best practices for creating an application delivery
strategy with HashiCorp tools. A well-designed deployment strategy helps you
deliver your application to production faster and catch bugs before your users
run into them. A complete deployment strategy has five fundamental components:

1. Write and test applications
1. Package applications
1. Provision infrastructure
1. Deploy applications
1. Connect and monitor applications
1. Monitor infrastructure
1. Securely access infrastructure

There are also two components to consider throughout the entire deployment process:

1. Define your security strategy
1. Integrate with your CI/CD pipeline

![The responsibilities of each team during application deployment. Developers write and test the application. Developer and Ops package the application into a machine image. Operators provision infrastructure and deploy the application. The networking team connects and monitors the application and infrastructure.](/img/docs/waf/app-delivery-roles.png#light-theme-only)

![The responsibilities of each team during application deployment. Developers write and test the application. Developer and Ops package the application into a machine image. Operators provision infrastructure and deploy the application. The networking team connects and monitors the application and infrastructure.](/img/docs/waf/app-delivery-roles-dark.png#dark-theme-only)

Your organization may have additional requirements for delivering your
applications. For example, your security guidelines may require you to perform
static code analysis on your codebase before you package it. After you package
your application, your operations team may have a package registry that they
require you to upload your application to.

Once you identify and implement each required step of your deployment strategy,
we recommend automating them in a CI/CD pipeline. These pipelines will help
every team in your organization adopt your deployment strategy by enforcing your
designed strategy.

This guide gives our recommendations on how your organization can implement
these seven steps, and covers how HashiCorp tools can fit into that cycle.
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
page_title: Integrate CI/CD pipelines
description: Learn how to evaluate existing deployments.
---

# Integrate CI/CD pipelines

You can integrate each recommendation from this guide into your existing CI/CD
pipeline. If you already have a solution to address some of these
recommendations but are looking to improve other aspects of your application
deployment strategy, each of these recommendations can be implemented
individually.

![The application delivery cycle showing all five phases, connected together by a CI/CD pipeline.](/img/waf/app-delivery-cycle.png#light-theme-only)
![The application delivery cycle showing all five phases, connected together by a CI/CD pipeline.](/img/waf/app-delivery-cycle-dark.png#dark-theme-only)

HashiCorp resources:

- [Automate Packer with GitHub Actions](/packer/tutorials/cloud-production/github-actions)
- [Automate Terraform with GitHub Actions](/terraform/tutorials/automation/github-actions)
- [Retrieving CI/CD secrets from Vault](/well-architected-framework/security/security-cicd-vault)
Loading
Loading