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: CHANGELOG.md
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,14 @@ SPDX-License-Identifier: MIT-0
5
5
6
6
## [Unreleased]
7
7
8
+
### Added
9
+
10
+
-**Consolidated publish and headless deploy into `idp-cli`** — All build/publish/deploy functionality now available through the CLI, deprecating standalone scripts:
11
+
-`publish.py` and `publish.sh` are deprecated — use `idp-cli publish` instead. `publish.py` remains as a thin backward-compatibility wrapper. `publish.sh` has been removed.
12
+
-`scripts/generate_govcloud_template.py` is deprecated — use `idp-cli publish --headless` or `idp-cli deploy --headless` instead. The script remains as a thin wrapper.
13
+
- New `--template-file` option on `idp-cli deploy` for deploying from a local CloudFormation template file produced by a previous `idp-cli publish`.
14
+
-`idp-cli deploy --headless` (without `--from-code`) now downloads the published template, transforms to headless with GovCloud config defaults, uploads to S3, and deploys — all in one command.
Copy file name to clipboardExpand all lines: docs/deployment.md
+27-25Lines changed: 27 additions & 25 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -45,8 +45,8 @@ For programmatic deployment, updates, and batch processing, use the IDP CLI.
45
45
#### Install the CLI
46
46
47
47
```bash
48
-
cd lib/idp_cli_pkg
49
-
pip install -e .
48
+
make setup-venv
49
+
source .venv/bin/activate
50
50
```
51
51
52
52
#### Deploy a New Stack
@@ -132,13 +132,13 @@ Copy the repo to your computer. Either:
132
132
133
133
### Option A: IDP CLI `--from-code` (Recommended)
134
134
135
-
The easiest way to build, publish, and deploy from source in a single command is using the IDP CLI with the `--from-code` option. This builds all artifacts using `publish.py`, publishes them to S3, and deploys the CloudFormation stack — all in one step.
135
+
The easiest way to build, publish, and deploy from source in a single command is using the IDP CLI with the `--from-code` option. This builds all artifacts, publishes them to S3, and deploys the CloudFormation stack — all in one step.
136
136
137
137
#### Install the CLI
138
138
139
139
```bash
140
-
cd lib/idp_cli_pkg
141
-
pip install -e .
140
+
make setup-venv
141
+
source .venv/bin/activate
142
142
```
143
143
144
144
#### Deploy a New Stack from Source
@@ -161,7 +161,7 @@ idp-cli deploy \
161
161
```
162
162
163
163
**What `--from-code` does:**
164
-
-Runs `publish.py` to build SAM templates, Lambda layers, container images, and the UI
164
+
-Builds SAM templates, Lambda layers, container images, and the UI
165
165
- Publishes all artifacts to an S3 bucket in your account
166
166
- Creates or updates the CloudFormation stack with the newly published template
167
167
- With `--wait`, monitors the deployment until completion
If you prefer to publish artifacts first and then deploy as a separate step, use `publish.py` to build and publish, then deploy using the AWS CloudFormation console or CLI.
177
+
If you prefer to publish artifacts first and then deploy as a separate step, use `idp-cli publish` to build and publish, then deploy using the AWS CloudFormation console or CLI.
178
178
179
-
#### Step 1: Build and Publish with publish.py
179
+
#### Step 1: Build and Publish with `idp-cli publish`
Copy file name to clipboardExpand all lines: docs/govcloud-deployment.md
+10-7Lines changed: 10 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -50,21 +50,24 @@ You need to have the following packages installed on your computer:
50
50
5. Node.js >=22.12.0
51
51
6. npm >=10.0.0
52
52
7. A local Docker daemon
53
-
8. Python packages for publish.py. You are encouraged to configure a virtual environment for dependency management, ie. `python -m venv .venv`. Activate the environment (`. .venv/bin/activate`) and then install dependencies via `pip install boto3 rich PyYAML botocore setuptools docker ruff build`
53
+
8. Python packages for the IDP CLI and SDK. Run `make setup-venv` from the project root to create a `.venv` and install all required packages (idp-cli, idp-sdk, idp_common). Activate with `source .venv/bin/activate`.
54
54
55
-
### Step 1: Generate GovCloud Template
55
+
### Step 1: Build and Generate Headless Template
56
56
57
-
First, generate the GovCloud-compatible template - this run the standard build process first to create all Lambda functions and artifacts, and then creates a strippeddown version for GovCloud:
57
+
First, build and generate the GovCloud-compatible headless template using `idp-cli publish --headless`. This runs the standard build process to create all Lambda functions and artifacts, and then creates a stripped-down version for GovCloud:
58
58
59
59
```bash
60
-
# Note: The Python script will create an S3 bucket automatically by concatenating the provided bucket name and region, ie. my-govcloud-bucket-us-gov-west-1. You can change the bucket base name as desired. Files will be placed under [my-prefix] prefix within the generated bucket.
> **Note**: The CLI will create an S3 bucket automatically. You can customize the bucket name with `--bucket-basename` and the prefix with `--prefix`. The `--headless` flag generates a template with UI, AppSync, Cognito, and WAF resources removed.
68
+
69
+
> **Legacy**: The `scripts/generate_govcloud_template.py` script is deprecated. Use `idp-cli publish --headless` instead.
70
+
68
71
### Step 2: Deploy to GovCloud
69
72
70
73
Deploy the generated template to GovCloud using the AWS CloudFormation console (recommended) or deploy using AWS CLI e.g:
0 commit comments