Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
464ca2a
fix: add CloudFormation UpdateTerminationProtection permission for cl…
ROunofF Feb 3, 2026
44e7773
Import all changes from RIV
ROunofF Feb 19, 2026
74c1727
chores: Move all image to static with link
ROunofF Mar 25, 2026
305dcce
fix: correct broken link to application overview in navigating-labs
ROunofF Feb 20, 2026
8083f78
Fix: validate script to include needed provider + syntax
ROunofF Feb 20, 2026
04b832d
fix: missing provider for auto mode
ROunofF Feb 23, 2026
89bc541
fix: export RESOURCE_CODEBUILD_ROLE_ARN in common-env.sh
ROunofF Feb 23, 2026
59a7103
fix: skip kubectl download if already exists + detect OS and architec…
ROunofF Mar 25, 2026
f8b6485
feat: Life improvement for make-infrastructure and destroy, you can p…
ROunofF Feb 26, 2026
66bf5cf
fix: Allow changeset to be created by IDE_ROLE
ROunofF Feb 26, 2026
fb8b17e
Set variable to check when it's empty
ROunofF Feb 26, 2026
35bfb2a
fix: When delete in getting-started and various improvements
ROunofF Feb 26, 2026
f9a9a09
Fix: Don't break the in your account workflow
ROunofF Mar 4, 2026
1dd7e58
feat: Added Setup in learning paths with a few life improvements fixes
ROunofF Mar 23, 2026
f0f01d3
fix: pass repository params to CFN template and fix REPOSITORY_REF typo
ROunofF Mar 25, 2026
ae84b1d
chore: regenerate yarn.lock after rebase conflicts
ROunofF Mar 25, 2026
12d2534
fix: remove broken fastpaths/basics nav link
ROunofF Mar 25, 2026
11638dc
fix: sync test-durations.json with fastpaths pages
ROunofF Mar 25, 2026
71258a2
chore: remove check-broken-links targets and scripts
ROunofF Mar 25, 2026
9117d05
fix: Remove timing for non-based labs
ROunofF Mar 25, 2026
f7ee48c
fix: restore navbar item hiding for desktop - secondary nav handles m…
ROunofF Mar 26, 2026
0346b1f
fix: correct navigating-labs link path in auto mode nav
ROunofF Mar 26, 2026
19fea7e
fix: use process.cwd() instead of vfile.cwd for docs path resolution …
ROunofF Mar 26, 2026
4127e15
fix: life improvements in Makefile and package.json
ROunofF Mar 26, 2026
aeb6562
fix: Bring back language selector in the top bar
ROunofF Mar 26, 2026
ee42cde
fix: Ensure that on delete we recreate the folder
ROunofF Mar 26, 2026
43d7708
fix: PR review fixes for fastpaths and auto mode cluster support
svennam92 Apr 7, 2026
e6d4ef9
fix: bump Node version to 20.18.0 for Netlify build
svennam92 Apr 7, 2026
42086e1
fix: fastpaths content improvements for in-your-account flow
svennam92 Apr 7, 2026
b03ded4
fix: navbar and secondary nav styling improvements
svennam92 Apr 7, 2026
0047f8f
fix: restore homepage video that was dropped when adding HomepageModu…
svennam92 Apr 7, 2026
6f0d764
fix: test fixes for fastpaths modules
svennam92 Apr 7, 2026
dbe4a85
fix: enable module terraform for fastpaths in reset-environment
svennam92 Apr 7, 2026
e3f01ee
fix: make both standard and auto cluster lookups conditional in base.tf
svennam92 Apr 7, 2026
2b05012
fix: one-time preprovision for fastpaths on first prepare-environment…
svennam92 Apr 8, 2026
3a26a2a
fix: add pod identity/DynamoDB resources to developer preprovision
svennam92 Apr 13, 2026
c590566
fix: test annotations for fastpaths automated testing
svennam92 Apr 13, 2026
31ca60c
fix: parallelize base app deploy and terraform preprovision, remove u…
svennam92 Apr 13, 2026
62a8b12
fix: handle missing AWS_SESSION_TOKEN for IAM user credentials in exe…
svennam92 Apr 13, 2026
b4dbe4d
fix: add cleanup flow for fastpaths module switching
svennam92 Apr 13, 2026
08e26eb
fix: consistent 'Before you start' tips across all fastpaths modules
svennam92 Apr 13, 2026
daecc93
fix: remove dead is_fastpaths guard and prevent lab-fastpaths.tf from…
svennam92 Apr 13, 2026
ebc9e24
fix: fastpaths test timing, hooks, and reset-environment resilience
svennam92 Apr 14, 2026
4183953
fix: test framework support for USE_CURRENT_USER and timeout fixes
svennam92 Apr 14, 2026
e5c63cb
fix: skip git clone in test container, manifests are volume-mounted
svennam92 Apr 14, 2026
af5b8ae
fix: timing issues for operator test suite
svennam92 Apr 14, 2026
7edeff1
fix: hook-pod-logs retries kubectl logs instead of rechecking stale o…
svennam92 Apr 14, 2026
3c00904
fix: increase pod crash wait time for pod-logs hook
svennam92 Apr 14, 2026
62b2b9c
feat: add GitHub Actions workflow for fastpaths tests
svennam92 Apr 14, 2026
73acf9c
fix: rename auto cluster to eks-workshop-SUFFIX-auto for IAM policy c…
svennam92 Apr 14, 2026
fedeb74
fix: pass eks_cluster_auto_id through lab-fastpaths.tf to preprovisio…
svennam92 Apr 14, 2026
73a591a
fix: shorten IAM name_prefix to stay within 38-char limit
svennam92 Apr 14, 2026
9543c75
fix: increase rollout timeout and add wait before pod exec in pod-ide…
svennam92 Apr 14, 2026
137d552
fix: add kubectl wait before exec, increase pod crash and KEDA scaleo…
svennam92 Apr 14, 2026
643abc7
fix: correct KEDA pod identity service account name in terraform
svennam92 Apr 14, 2026
6c4ae0c
fix: wait for external-secrets webhook before creating ClusterSecretS…
svennam92 Apr 14, 2026
9dd3578
fix: optimize prepare-environment - skip StatefulSet deletion unless …
svennam92 Apr 14, 2026
594b6c2
fix: hook-pod-logs waits for pod restart count > 0 before checking -p…
svennam92 Apr 14, 2026
4989b7b
debug: add verbose output to hook-pod-logs to diagnose CI failure
svennam92 Apr 14, 2026
e091754
fix: export EKS_CLUSTER_AUTO_NAME so cleanup scripts get the correct …
svennam92 Apr 14, 2026
37c7037
debug: add verbose output to operator cleanup for pod identity deletion
svennam92 Apr 15, 2026
3119fae
fix: run all fastpaths in single container so cleanup hooks persist b…
svennam92 Apr 15, 2026
d59facb
fix: KEDA wait=120 for CloudWatch metrics, fluent-bit hook checks all…
svennam92 Apr 15, 2026
67322f5
fix: increase KEDA CloudWatch wait to 300s, make karpenter suite hook…
svennam92 Apr 15, 2026
b21fb4f
fix: add --ignore-not-found to load-generator delete in test-keda.md
svennam92 Apr 16, 2026
105a97a
Fix: override possible
ROunofF Apr 16, 2026
2f930e2
Fix: change so we can set USE_CURRENT_USER=0
ROunofF Apr 16, 2026
dc78bf3
fix: decouple RESOURCE_CODEBUILD_ROLE_ARN from SKIP_CREDENTIALS gate
ROunofF Apr 17, 2026
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
100 changes: 100 additions & 0 deletions .github/workflows/test-fastpaths.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
name: Test - Fastpaths

on:
workflow_dispatch:
schedule:
- cron: "0 7 * * 5"

permissions:
id-token: write
contents: read

jobs:
run-tests:
if: github.repository == 'aws-samples/eks-workshop-v2'
name: run-tests
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v5
- name: Install utilities
run: |
sudo apt install -y gettext

mkdir -p ${HOME}/.local/bin
wget -q https://github.com/jckuester/awsweeper/releases/download/v0.12.0/awsweeper_0.12.0_linux_amd64.tar.gz
tar zxf awsweeper_0.12.0_linux_amd64.tar.gz
mv awsweeper_0.12.0_linux_amd64/awsweeper ${HOME}/.local/bin

chmod +x ${HOME}/.local/bin/*

echo "${HOME}/.local/bin" >> $GITHUB_PATH
- name: Set cluster ID
env:
RUN_ID: "${{ github.job }}"
AWS_REGION: "${{ secrets.AWS_REGION }}"
run: |
CLUSTER_ID=$(echo $RANDOM | md5sum | head -c 8)
echo "Using cluster ID ${CLUSTER_ID}"
echo "CLUSTER_ID=$CLUSTER_ID" >> $GITHUB_ENV
- name: Get AWS credentials
uses: aws-actions/configure-aws-credentials@v4.3.1
with:
role-to-assume: ${{ secrets.AWS_ROLE_ARN }}
role-duration-seconds: 3600
aws-region: ${{ secrets.AWS_REGION }}
role-session-name: GithubActionsSession-${{ env.CLUSTER_ID }}
- name: Create infrastructure
id: create-infrastructure
env:
AWS_REGION: "${{ secrets.AWS_REGION }}"
run: |
make create-infrastructure environment="$CLUSTER_ID"
- name: Refresh AWS credentials
if: always()
uses: aws-actions/configure-aws-credentials@v4.3.1
with:
role-to-assume: ${{ secrets.AWS_ROLE_ARN }}
role-duration-seconds: 3600
aws-region: ${{ secrets.AWS_REGION }}
role-session-name: GithubActionsSession-${{ env.CLUSTER_ID }}
- name: Run tests - Fastpaths
env:
DOCKER_BUILDKIT: 1
DEV_MODE: 1
AWS_REGION: "${{ secrets.AWS_REGION }}"
DOCKER_DNS_OVERRIDE: "8.8.8.8"
run: |
export AWS_DEFAULT_REGION="$AWS_REGION"
bash hack/run-tests.sh "$CLUSTER_ID" "-" "{fastpaths/getting-started,fastpaths/getting-started/**,fastpaths/operator,fastpaths/operator/**,fastpaths/developer,fastpaths/developer/**}"
- name: Refresh AWS credentials
if: always()
uses: aws-actions/configure-aws-credentials@v4.3.1
with:
role-to-assume: ${{ secrets.AWS_ROLE_ARN }}
role-duration-seconds: 3600
aws-region: ${{ secrets.AWS_REGION }}
role-session-name: GithubActionsSession-${{ env.CLUSTER_ID }}
- name: Run tests - Cleanup
if: always()
env:
DOCKER_BUILDKIT: 1
DEV_MODE: 1
AWS_REGION: "${{ secrets.AWS_REGION }}"
run: |
export AWS_DEFAULT_REGION="$AWS_REGION"
make test environment="$CLUSTER_ID" module="cleanup"
- name: Refresh AWS credentials
if: always()
uses: aws-actions/configure-aws-credentials@v4.3.1
with:
role-to-assume: ${{ secrets.AWS_ROLE_ARN }}
role-duration-seconds: 3600
aws-region: ${{ secrets.AWS_REGION }}
role-session-name: GithubActionsSession-${{ env.CLUSTER_ID }}
- name: Cleanup environment
if: always()
env:
AWS_REGION: "${{ secrets.AWS_REGION }}"
run: |
make destroy-infrastructure environment="$CLUSTER_ID"
22 changes: 18 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,28 @@ environment=''
shell_command=''
shell_simple_command=''
glob='-'
cluster='all'

.PHONY: install
install:
yarn install

.PHONY: build
build: install
yarn build

.PHONY: warning
warning:
@echo "Note: 'make serve' now does a full static build. For dev mode, use 'make start' instead."

.PHONY: serve
serve: install
serve: warning build
yarn serve

.PHONY: start
start: install
yarn start

.PHONY: tf-fmt
tf-fmt:
cd ./terraform && terraform fmt --recursive
Expand All @@ -39,11 +52,11 @@ delete-environment:

.PHONY: create-infrastructure
create-infrastructure:
bash hack/create-infrastructure.sh $(environment)
bash hack/create-infrastructure.sh $(environment) $(cluster)

.PHONY: destroy-infrastructure
destroy-infrastructure:
bash hack/destroy-infrastructure.sh $(environment)
bash hack/destroy-infrastructure.sh $(environment) $(cluster)

.PHONY: deploy-ide
deploy-ide:
Expand All @@ -55,4 +68,5 @@ destroy-ide:

.PHONY: lint
lint:
yarn lint
yarn lint

6 changes: 6 additions & 0 deletions cluster/eksctl/access-entries.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
accessEntries:
- principalARN: ${RESOURCE_CODEBUILD_ROLE_ARN}
accessPolicies:
- policyARN: "arn:aws:eks::aws:cluster-access-policy/AmazonEKSClusterAdminPolicy"
accessScope:
type: cluster
25 changes: 25 additions & 0 deletions cluster/eksctl/cluster-auto.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig
availabilityZones:
- ${AWS_REGION}a
- ${AWS_REGION}b
- ${AWS_REGION}c
metadata:
name: ${EKS_CLUSTER_AUTO_NAME}
region: ${AWS_REGION}
version: "1.33"
tags:
karpenter.sh/discovery: ${EKS_CLUSTER_AUTO_NAME}
created-by: eks-workshop-v2
env: ${EKS_CLUSTER_AUTO_NAME}
vpc:
cidr: 10.43.0.0/16
clusterEndpoints:
privateAccess: true
publicAccess: true
autoModeConfig:
enabled: true
nodePools: [general-purpose, system]
accessConfig:
authenticationMode: API
bootstrapClusterCreatorAdminPermissions: true
5 changes: 4 additions & 1 deletion cluster/eksctl/cluster.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,4 +40,7 @@ remoteNetworkConfig:
remoteNodeNetworks:
- cidrs: ["10.52.0.0/16"]
remotePodNetworks:
- cidrs: ["10.53.0.0/16"]
- cidrs: ["10.53.0.0/16"]
accessConfig:
authenticationMode: API
bootstrapClusterCreatorAdminPermissions: true
8 changes: 8 additions & 0 deletions docs/style_guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,14 @@ sidebar_custom_props:
---
```

To mark your module as optional:
```
---
...
sidebar_custom_props: { "optional": "true" }
---
```

### Navigating the AWS console

There are instances where the user needs to navigate to specific screens in the AWS console. It is preferable to provide a link to the exact screen if possible, or a close as can be done.
Expand Down
29 changes: 25 additions & 4 deletions hack/create-infrastructure.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
#!/bin/bash

environment=$1
cluster=${2:-all}
export USE_CURRENT_USER=${USE_CURRENT_USER:-1} # We don't want to change the ARN in exec
echo "Creating infrastructure for environment ${environment} and cluster ${cluster}"

set -Eeuo pipefail
set -u
Expand All @@ -13,12 +16,30 @@ bash $SCRIPT_DIR/update-iam-role.sh $environment

sleep 5

pids=()

cluster_exists=0
aws eks describe-cluster --name "${EKS_CLUSTER_NAME}" &> /dev/null || cluster_exists=$?

if [ $cluster_exists -eq 0 ]; then
if [ $cluster_exists -ne 0 ] && [[ "$cluster" == "standard" || "$cluster" == "all" ]]; then
echo "Creating cluster ${EKS_CLUSTER_NAME}"
bash $SCRIPT_DIR/exec.sh "${environment}" 'cat /cluster/eksctl/cluster.yaml /cluster/eksctl/access-entries.yaml | envsubst | eksctl create cluster -f -' &
pids+=($!)
else
echo "Cluster ${EKS_CLUSTER_NAME} already exists"
fi

auto_cluster_exists=0
aws eks describe-cluster --name "${EKS_CLUSTER_AUTO_NAME}" &> /dev/null || auto_cluster_exists=$?

if [ $auto_cluster_exists -ne 0 ] && [[ "$cluster" == "auto" || "$cluster" == "all" ]]; then
echo "Creating auto mode cluster ${EKS_CLUSTER_AUTO_NAME}"
bash $SCRIPT_DIR/exec.sh "${environment}" 'cat /cluster/eksctl/cluster-auto.yaml /cluster/eksctl/access-entries.yaml | envsubst | eksctl create cluster -f -' &
pids+=($!)
else
echo "Creating cluster ${EKS_CLUSTER_NAME}"
bash $SCRIPT_DIR/exec.sh "${environment}" 'cat /cluster/eksctl/cluster.yaml | envsubst | eksctl create cluster -f -'
fi
echo "Auto mode cluster ${EKS_CLUSTER_AUTO_NAME} already exists"
fi

for pid in "${pids[@]}"; do
wait "$pid" || exit 1
done
10 changes: 9 additions & 1 deletion hack/deploy-ide-cfn.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,13 @@ outfile=$(mktemp)

bash $SCRIPT_DIR/build-ide-cfn.sh $outfile

REPOSITORY_OWNER=${REPOSITORY_OWNER:-"aws-samples"}
REPOSITORY_NAME=${REPOSITORY_NAME:-"eks-workshop-v2"}
REPOSITORY_REF=${REPOSITORY_REF:-"main"}

aws cloudformation deploy --stack-name "$EKS_CLUSTER_NAME-ide" \
--capabilities CAPABILITY_NAMED_IAM --disable-rollback --template-file $outfile
--capabilities CAPABILITY_NAMED_IAM --disable-rollback --template-file $outfile \
--parameter-overrides \
RepositoryOwner="$REPOSITORY_OWNER" \
RepositoryName="$REPOSITORY_NAME" \
RepositoryRef="$REPOSITORY_REF"
29 changes: 24 additions & 5 deletions hack/destroy-infrastructure.sh
Original file line number Diff line number Diff line change
@@ -1,24 +1,43 @@
#!/bin/bash

environment=$1
cluster=${2:-all}
echo "Destroying infrastructure for environment ${environment} and cluster ${cluster}"

set -Eeuo pipefail
set -u

SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )

export USE_CURRENT_USER=1;
source $SCRIPT_DIR/lib/common-env.sh

cluster_exists=0
aws eks describe-cluster --name "${EKS_CLUSTER_NAME}" &> /dev/null || cluster_exists=$?

if [ $cluster_exists -eq 0 ]; then
if [ $cluster_exists -eq 0 ] && [[ "$cluster" == "standard" || "$cluster" == "all" ]]; then
echo "Deleting cluster ${EKS_CLUSTER_NAME}"
bash $SCRIPT_DIR/shell.sh "${environment}" 'delete-environment' || true
bash $SCRIPT_DIR/exec.sh "${environment}" 'eksctl delete cluster --name ${EKS_CLUSTER_NAME} --region ${AWS_REGION} --wait --force --disable-nodegroup-eviction --timeout 45m'&
else
echo "Cluster ${EKS_CLUSTER_NAME} does not exist or skipped"
fi

bash $SCRIPT_DIR/exec.sh "${environment}" 'eksctl delete cluster --name ${EKS_CLUSTER_NAME} --region ${AWS_REGION} --wait --force --disable-nodegroup-eviction --timeout 45m'
export EKS_CLUSTER_AUTO_NAME="${EKS_CLUSTER_AUTO_NAME}"
auto_cluster_exists=0
aws eks describe-cluster --name "${EKS_CLUSTER_AUTO_NAME}" &> /dev/null || auto_cluster_exists=$?

if [ $auto_cluster_exists -eq 0 ] && [[ "$cluster" == "auto" || "$cluster" == "all" ]]; then
echo "Deleting auto mode cluster ${EKS_CLUSTER_AUTO_NAME}"
#bash $SCRIPT_DIR/shell.sh "${environment}" 'delete-environment' || true # Needed ?
bash $SCRIPT_DIR/exec.sh "${environment}" 'eksctl delete cluster --name ${EKS_CLUSTER_AUTO_NAME} --region ${AWS_REGION} --wait --force --disable-nodegroup-eviction --timeout 45m'
else
echo "Cluster ${EKS_CLUSTER_NAME} does not exist"
echo "Auto mode cluster ${EKS_CLUSTER_AUTO_NAME} does not exist or skipped"
fi

aws cloudformation delete-stack --stack-name ${EKS_CLUSTER_NAME}-ide-role || true
wait

# Only delete ide-role if all clusters are deleted
if [ "$cluster" == "all" ]; then
aws cloudformation delete-stack --stack-name ${EKS_CLUSTER_NAME}-ide-role || true
echo "Deleted role"
fi
15 changes: 13 additions & 2 deletions hack/exec.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,19 @@ container_image='eks-workshop-environment'

(cd $SCRIPT_DIR/../lab && $CONTAINER_CLI build -q -t $container_image .)

if [ -z "$SKIP_CREDENTIALS" ]; then

if [ "${SKIP_CREDENTIALS:-0}" = "0" ] && [ "${USE_CURRENT_USER:-0}" = "0" ]; then
echo "Passing temp AWS credentials"
source $SCRIPT_DIR/lib/generate-aws-creds.sh
elif [ "${USE_CURRENT_USER:-0}" != "0" ]; then
if [ -z "$AWS_ACCESS_KEY_ID" ]; then
echo "No AWS_ACCESS_KEY_ID found, please check your AWS credentials"
exit 1
fi
echo "Using USE_CURRENT_USER"
aws_credential_args="-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY -e AWS_SESSION_TOKEN=${AWS_SESSION_TOKEN:-}"
else
echo "Using DEFAULT no credentials passed"
aws_credential_args=""
fi

Expand All @@ -31,5 +41,6 @@ $CONTAINER_CLI run --rm \
-v $SCRIPT_DIR/../manifests:/manifests \
-v $SCRIPT_DIR/../cluster:/cluster \
--entrypoint /bin/bash \
-e 'EKS_CLUSTER_NAME' -e 'AWS_REGION' -e 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI' \
-e "RESET_NO_DELETE=true" \
-e 'EKS_CLUSTER_NAME' -e 'EKS_CLUSTER_AUTO_NAME' -e 'AWS_REGION' -e 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI' -e RESOURCE_CODEBUILD_ROLE_ARN \
$aws_credential_args $container_image -c "$shell_command"
9 changes: 9 additions & 0 deletions hack/lib/common-env.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@ environment=${environment:-""}

if [ -z "$environment" ]; then
export EKS_CLUSTER_NAME="eks-workshop"
export EKS_CLUSTER_AUTO_NAME="eks-workshop-auto"
else
export EKS_CLUSTER_NAME="eks-workshop-${environment}"
export EKS_CLUSTER_AUTO_NAME="eks-workshop-${environment}-auto"
fi

AWS_REGION=${AWS_REGION:-""}
Expand All @@ -15,6 +17,8 @@ if [ -z "$AWS_REGION" ]; then
fi

SKIP_CREDENTIALS=${SKIP_CREDENTIALS:-""}
USE_CURRENT_USER=${USE_CURRENT_USER:-""}
AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID:-""} # We check the access key

if [ -z "$SKIP_CREDENTIALS" ]; then
ACCOUNT_ID=$(aws sts get-caller-identity --query Account --output text)
Expand All @@ -23,4 +27,9 @@ if [ -z "$SKIP_CREDENTIALS" ]; then
IDE_ROLE_ARN="arn:aws:iam::${ACCOUNT_ID}:role/${IDE_ROLE_NAME}"
fi

# Set RESOURCE_CODEBUILD_ROLE_ARN if not already provided (e.g. by Workshop Studio)
if [ -z "${RESOURCE_CODEBUILD_ROLE_ARN:-}" ]; then
export RESOURCE_CODEBUILD_ROLE_ARN="${IDE_ROLE_ARN:-}"
fi

export DOCKER_CLI_HINTS="false"
Loading
Loading