You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/developer/developer-guide.md
+10-13Lines changed: 10 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
3
3
This document is a reference document. Instead of reading through it in linear order, you can use it to look up specific issues as needed.
4
4
5
-
It is important to read the [Operations Guide](Operations%20Guide.md) before reading this document.
5
+
It is important to read the [Operations Guide](../operations/operations-troubleshooting-guide.md) before reading this document.
6
6
7
7
## Table of Contents
8
8
@@ -113,7 +113,7 @@ We use [`tslint`](https://palantir.github.io/tslint) as a static analysis tool t
113
113
114
114
### CloudFormation
115
115
116
-
CloudFormation is used to deploy both the Accelerator stacks and resources and the deployed stacks and resources. See [Operations Guide: System Overview](Operations%20Guide.md#system-overview) for the distinction between Accelerator resources and deployed resources.
116
+
CloudFormation is used to deploy both the Accelerator stacks and resources and the deployed stacks and resources. See [Operations Guide: System Overview](../operations/operations-troubleshooting-guide.md) for the distinction between Accelerator resources and deployed resources.
117
117
118
118
### CDK
119
119
@@ -127,7 +127,7 @@ There are different types of projects in this monorepo.
127
127
2. Runtime code and is used by our CDK code to deploy Lambda functions;
128
128
3. Reusable code; both for use by our CDK code and or runtime code.
129
129
130
-
The CDK code either deploys Accelerator-management resources or Accelerator-managed resources. See the [Operations Guide](./Operations%20Guide.md) for the distinction between Accelerator-management and Accelerator-managed resources.
130
+
The CDK code either deploys Accelerator-management resources or Accelerator-managed resources. See the [Operations Guide](../operations/operations-troubleshooting-guide.md) for the distinction between Accelerator-management and Accelerator-managed resources.
131
131
132
132
The only language used in the project is TypeScript and exceptionally JavaScript. We do not write CloudFormation templates, only CDK code.
133
133
@@ -156,11 +156,10 @@ The folder structure of the project is as follows:
156
156
-`src/lib/custom-resources/**/runtime`: See [Custom Resources](#custom-resources);
157
157
-`src/lib/cdk-plugin-assume-role`: See [CDK Assume Role Plugin](#cdk-assume-role-plugin).
158
158
159
-
160
-
161
159
#### Installer Stack
162
160
163
-
Read [Operations Guide](./Operations%20Guide.md#installer-stack) first before reading this section. This section is a technical addition to the section in the Operations Guide.
161
+
.md
162
+
Read [Operations Guide](../operations/operations-troubleshooting-guide.md#installer-stack) first before reading this section. This section is a technical addition to the section in the Operations Guide.
164
163
165
164
As stated in the Operations Guide, the `Installer` stack is responsible for installing the `Initial Setup` stack. The main resource in the `Installer` stack is the `PBMMAccel-Installer` CodePipeline. It uses the GitHub repository as source action and runs CDK in a CodeBuild step to deploy the `Initial Setup` stack.
166
165
@@ -197,7 +196,7 @@ The `Initial Setup` stack deployment gets various environment variables through
197
196
198
197
#### Initial Setup Stack
199
198
200
-
Read [Operations Guide](./Operations%20Guide.md#initial-setup-stack) first before reading this section. This section is a technical addition to the section in the Operations Guide.
199
+
Read [Operations Guide](../operations/operations-troubleshooting-guide.md#initial-setup-stack) first before reading this section. This section is a technical addition to the section in the Operations Guide.
201
200
202
201
The `Initial Setup` stack is defined in the `src/core/cdk` folder.
203
202
@@ -260,7 +259,7 @@ Other data is passed through environment variables:
260
259
261
260
#### Phase Steps and Phase Stacks
262
261
263
-
Read [Operations Guide](./Operations%20Guide.md#initial-setup-stack) first before reading this section. This section is a technical addition to the _Deploy Phase X_ sections in the Operations Guide.
262
+
Read [Operations Guide](../operations/operations-troubleshooting-guide.md#initial-setup-stack) first before reading this section. This section is a technical addition to the _Deploy Phase X_ sections in the Operations Guide.
264
263
265
264
The `Phase` stacks contain the Accelerator-managed resources. The reason the deployment of Accelerator-managed resources is split into different phases is because there cannot be cross account/region references between CloudFormation stacks. See [Cross-Account/Region References](#cross-accountregion-references).
266
265
@@ -296,7 +295,7 @@ It is important to note that nothing is hard-coded. The CloudFormation templates
296
295
297
296
The different phases are defined in `apps/phase-x.ts`. Historically we put all logic in the `phase-x.ts` files. After a while the `phase-x.ts` files started to get to big and we moved to separating the logic into separate deployments. Every logical component has a separate folder in the `deployments` folder. Every `deployment` consists of so-called steps. Separate steps are put in loaded in phases.
298
297
299
-
For example, take the `deployments/defaults` deployment. The deployment consists of two steps, i.e. `step-1.ts` and `step-2.ts`. `deployments/defaults/step-1.ts` is deployed in `apps/phase-0.ts` and `deployments/defaults/step-2.ts` is called in `apps/phase-1.ts`. You can find more details about what happens in each phase in the [Operations Guide](./Operations%20Guide.md).
298
+
For example, take the `deployments/defaults` deployment. The deployment consists of two steps, i.e. `step-1.ts` and `step-2.ts`. `deployments/defaults/step-1.ts` is deployed in `apps/phase-0.ts` and `deployments/defaults/step-2.ts` is called in `apps/phase-1.ts`. You can find more details about what happens in each phase in the [Operations Guide](../operations/operations-troubleshooting-guide.md).
300
299
301
300
`apps/phase-0.ts`
302
301
@@ -382,7 +381,6 @@ You can find `aws-sdk` wrappers in the `src/lib/common/src/aws` folder. Most of
382
381
383
382
Please use the `aws-sdk` wrappers throughout the project or write an additional wrapper when necessary.
384
383
385
-
386
384
#### Configuration File Parsing
387
385
388
386
The configuration file is defined and validated using the [`io-ts`](https://github.com/gcanti/io-ts) library. See `src/lib/common-config/src/index.ts`. In case any changes need to be made to the configuration file parsing, this is the place to be.
@@ -665,7 +663,7 @@ This library defines the base Webpack template to compile custom resource runtim
0 commit comments