0.1.597 • Published 1 year ago

@wheatstalk/aws-cdk-exec v0.1.597

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
1 year ago

AWS CDK Exec

Provides cdk-exec, an AWS CDK dev tool to quickly find and execute your Lambdas and State Machines in AWS.

$ cdk-exec integ-cdk-exec/Function --input '{"succeed":true}'
⚡  Executing integ-cdk-exec/Function/Resource (integ-cdk-exec-Function76856677-k5ehIzbG2T6S)


✨  Final status of integ-cdk-exec/Function/Resource

Output:
{
  "succeed": true,
  "message": "Hello from Lambda"
}

✅  Execution succeeded

WARNING: Do not rely on this tool to execute your functions in a production environment. Now that you have been warned, please read on.

Exporting Environment Variables

If during local development you want to access the environment variables configured for a Lambda Function, such as to see the arns of real resources, you may use cdk-exec --export-env integ-cdk-exec/Function.

$ cdk-exec --export-env integ-cdk-exec/Function
FOO=bar
SECRET_ARN=arn:aws:secretsmanager:REGION:000000000000:secret:SecretA720EF05-qa4X020B9S3f-UI3sIs

Usage

First, add @wheatstalk/aws-cdk-exec to your project's dev dependencies. Then synthesize your app to a cdk.out directory. Once synthesized there, you can execute one of your resources with cdk-exec.

If you're using cdk watch, the CDK will keep your cdk.out up to date, so when you use watch mode, you can run cdk-exec (roughly) at will.

Full Example

app.ts

import { App, Stack } from 'aws-cdk-lib';
import { Code, Function, Runtime } from 'aws-cdk-lib/aws-lambda';
import { Choice, Condition, Fail, StateMachine, Succeed } from 'aws-cdk-lib/aws-stepfunctions';

const app = new App();
const stack = new Stack(app, 'integ-cdk-exec');

new StateMachine(stack, 'StateMachine', {
  definition: new Choice(stack, 'Choice')
    .when(Condition.isPresent('$.succeed'),
      new Succeed(stack, 'ChoiceSucceed'))
    .otherwise(
      new Fail(stack, 'ChoiceFail')),
});

new Function(stack, 'Function', {
  runtime: Runtime.PYTHON_3_9,
  handler: 'index.handler',
  code: Code.fromInline(`
def handler(event, context):
  if "succeed" in event:
    return {"succeed": True, "message": "Hello from Lambda"}

  raise Exception('Error from lambda')
`),
});

app.synth();

Synthesize your app

The cdk-exec tool operates on a synthesized cloud assembly (your cdk.out directory), so the first step is to synthesize your app:

$ cdk synth --output cdk.out

Execute a state machine with input

$ cdk-exec integ-cdk-exec/StateMachine --input '{"succeed":true}'
⚡  Executing integ-cdk-exec/StateMachine/Resource (arn:aws:states:REGION:000000000000:stateMachine:StateMachine2E01A3A5-8z4XHXAvT3qq)


✨  Final status of integ-cdk-exec/StateMachine/Resource

Output:
{
  "succeed": true
}

✅  Execution succeeded

Execute a lambda with input

$ cdk-exec integ-cdk-exec/Function --input '{"succeed":true}'
⚡  Executing integ-cdk-exec/Function/Resource (integ-cdk-exec-Function76856677-k5ehIzbG2T6S)


✨  Final status of integ-cdk-exec/Function/Resource (integ-cdk-exec-Function76856677-k5ehIzbG2T6S)

Output:
{
  "succeed": true,
  "message": "Hello from Lambda"
}

✅  Execution succeeded

Use a custom cloud assembly directory

$ cdk-exec --app path/to/cdkout integ-cdk-exec/Function --input '{"json":"here"}'
⚡  Executing integ-cdk-exec/Function/Resource (integ-cdk-exec-Function76856677-k5ehIzbG2T6S)


✨  Final status of integ-cdk-exec/Function/Resource

Output:
{
  "succeed": true,
  "message": "Hello from Lambda"
}

✅  Execution succeeded

Resource Matching

Path matching

cdk-exec searches for resources matching the exact path you provide and any deeper nested resources. This is how we support both L1 & L2 constructs, but is also a convenient shortcut when your app has only one executable resource.

For example, if you have only one function or state machine in a stack, you can type cdk-exec my-stack and your resource will be found. If your entire app has only one executable resource, you can run cdk-exec without arguments to run it.

Tag matching

When running cdk-exec --tag mytag=value, cdk-exec will search for a resource matching tags that you have defined in your CDK app. If more than one resource would match, by default cdk-exec will produce an error message. But, if you want to execute several resources simultaneously, cdk-exec provides --all.

We have also added aliases and shorthands to streamline typing label-matching commands. For example, cdk-exec -at mytag will try to run all resources with a tag named mytag, regardless of the value of the tag. This has the same effect as typing the longer cdk-exec --all --tag mytag command.

Metadata matching

When running cdk-exec --metadata mymeta=myvalue, cdk-exec will search for and run resources containing the given metadata. Same as for tag matching, you can run one or more matching resources if you specify the --all option.

Notes

Path metadata

This tool requires path metadata to be enabled in your assembly.

0.1.597

1 year ago

0.1.594

1 year ago

0.1.593

1 year ago

0.1.596

1 year ago

0.1.595

1 year ago

0.1.590

1 year ago

0.1.592

1 year ago

0.1.591

1 year ago

0.1.587

1 year ago

0.1.589

1 year ago

0.1.588

1 year ago

0.1.586

1 year ago

0.1.585

1 year ago

0.1.584

1 year ago

0.1.583

1 year ago

0.1.582

1 year ago

0.1.581

1 year ago

0.1.580

1 year ago

0.1.579

1 year ago

0.1.578

1 year ago

0.1.576

1 year ago

0.1.575

1 year ago

0.1.577

1 year ago

0.1.574

1 year ago

0.1.572

1 year ago

0.1.571

1 year ago

0.1.573

1 year ago

0.1.569

1 year ago

0.1.568

1 year ago

0.1.567

1 year ago

0.1.570

1 year ago

0.1.565

1 year ago

0.1.564

1 year ago

0.1.566

1 year ago

0.1.561

1 year ago

0.1.563

1 year ago

0.1.562

1 year ago

0.1.558

1 year ago

0.1.557

1 year ago

0.1.559

1 year ago

0.1.560

1 year ago

0.1.554

1 year ago

0.1.553

1 year ago

0.1.556

1 year ago

0.1.555

1 year ago

0.1.550

1 year ago

0.1.552

1 year ago

0.1.551

1 year ago

0.1.525

1 year ago

0.1.524

1 year ago

0.1.527

1 year ago

0.1.526

1 year ago

0.1.523

1 year ago

0.1.529

1 year ago

0.1.528

1 year ago

0.1.536

1 year ago

0.1.535

1 year ago

0.1.538

1 year ago

0.1.537

1 year ago

0.1.532

1 year ago

0.1.531

1 year ago

0.1.534

1 year ago

0.1.533

1 year ago

0.1.530

1 year ago

0.1.539

1 year ago

0.1.547

1 year ago

0.1.546

1 year ago

0.1.549

1 year ago

0.1.548

1 year ago

0.1.543

1 year ago

0.1.542

1 year ago

0.1.545

1 year ago

0.1.544

1 year ago

0.1.541

1 year ago

0.1.540

1 year ago

0.1.521

1 year ago

0.1.522

1 year ago

0.1.518

1 year ago

0.1.517

1 year ago

0.1.519

1 year ago

0.1.520

1 year ago

0.1.514

1 year ago

0.1.516

1 year ago

0.1.515

1 year ago

0.1.507

1 year ago

0.1.506

1 year ago

0.1.509

1 year ago

0.1.508

1 year ago

0.1.513

1 year ago

0.1.510

1 year ago

0.1.512

1 year ago

0.1.511

1 year ago

0.1.503

1 year ago

0.1.502

1 year ago

0.1.505

1 year ago

0.1.504

1 year ago

0.1.501

1 year ago

0.1.499

1 year ago

0.1.500

1 year ago

0.1.498

1 year ago

0.1.497

1 year ago

0.1.496

1 year ago

0.1.495

1 year ago

0.1.494

1 year ago

0.1.493

1 year ago

0.1.492

1 year ago

0.1.491

1 year ago

0.1.490

1 year ago

0.1.489

1 year ago

0.1.488

1 year ago

0.1.487

1 year ago

0.1.486

1 year ago

0.1.485

1 year ago

0.1.484

1 year ago

0.1.483

1 year ago

0.1.482

1 year ago

0.1.481

1 year ago

0.1.480

1 year ago

0.1.479

1 year ago

0.1.478

1 year ago

0.1.477

1 year ago

0.1.476

1 year ago

0.1.475

1 year ago

0.1.474

1 year ago

0.1.473

1 year ago

0.1.472

1 year ago

0.1.471

1 year ago

0.1.470

1 year ago

0.1.469

1 year ago

0.1.468

1 year ago

0.1.467

1 year ago

0.1.466

1 year ago

0.1.465

1 year ago

0.1.464

1 year ago

0.1.463

1 year ago

0.1.462

1 year ago

0.1.461

1 year ago

0.1.460

1 year ago

0.1.459

1 year ago

0.1.458

1 year ago

0.1.457

1 year ago

0.1.456

1 year ago

0.1.455

1 year ago

0.1.454

1 year ago

0.1.453

1 year ago

0.1.452

1 year ago

0.1.451

1 year ago

0.1.450

1 year ago

0.1.449

1 year ago

0.1.448

1 year ago

0.1.447

1 year ago

0.1.446

1 year ago

0.1.445

1 year ago

0.1.444

1 year ago

0.1.443

1 year ago

0.1.442

1 year ago

0.1.439

1 year ago

0.1.440

1 year ago

0.1.441

1 year ago

0.1.438

1 year ago

0.1.437

1 year ago

0.1.436

1 year ago

0.1.435

1 year ago

0.1.434

1 year ago

0.1.433

1 year ago

0.1.432

1 year ago

0.1.431

1 year ago

0.1.430

2 years ago

0.1.429

2 years ago

0.1.428

2 years ago

0.1.426

2 years ago

0.1.427

2 years ago

0.1.425

2 years ago

0.1.422

2 years ago

0.1.421

2 years ago

0.1.424

2 years ago

0.1.423

2 years ago

0.1.420

2 years ago

0.1.419

2 years ago

0.1.417

2 years ago

0.1.418

2 years ago

0.1.416

2 years ago

0.1.415

2 years ago

0.1.414

2 years ago

0.1.413

2 years ago

0.1.412

2 years ago

0.1.411

2 years ago

0.1.410

2 years ago

0.1.409

2 years ago

0.1.408

2 years ago

0.1.407

2 years ago

0.1.406

2 years ago

0.1.405

2 years ago

0.1.404

2 years ago

0.1.403

2 years ago

0.1.402

2 years ago

0.1.401

2 years ago

0.1.400

2 years ago

0.1.399

2 years ago

0.1.398

2 years ago

0.1.397

2 years ago

0.1.396

2 years ago

0.1.395

2 years ago

0.1.378

2 years ago

0.1.377

3 years ago

0.1.379

2 years ago

0.1.374

3 years ago

0.1.373

3 years ago

0.1.376

3 years ago

0.1.375

3 years ago

0.1.370

3 years ago

0.1.372

3 years ago

0.1.371

3 years ago

0.1.389

2 years ago

0.1.388

2 years ago

0.1.385

2 years ago

0.1.384

2 years ago

0.1.387

2 years ago

0.1.386

2 years ago

0.1.381

2 years ago

0.1.380

2 years ago

0.1.383

2 years ago

0.1.382

2 years ago

0.1.390

2 years ago

0.1.392

2 years ago

0.1.391

2 years ago

0.1.394

2 years ago

0.1.393

2 years ago

0.1.367

3 years ago

0.1.369

3 years ago

0.1.368

3 years ago

0.1.239

3 years ago

0.1.118

3 years ago

0.1.359

3 years ago

0.1.238

3 years ago

0.1.117

3 years ago

0.1.119

3 years ago

0.1.356

3 years ago

0.1.235

3 years ago

0.1.114

3 years ago

0.1.355

3 years ago

0.1.234

3 years ago

0.1.113

3 years ago

0.1.358

3 years ago

0.1.237

3 years ago

0.1.116

3 years ago

0.1.357

3 years ago

0.1.236

3 years ago

0.1.115

3 years ago

0.1.352

3 years ago

0.1.231

3 years ago

0.1.110

3 years ago

0.1.351

3 years ago

0.1.230

3 years ago

0.1.354

3 years ago

0.1.233

3 years ago

0.1.112

3 years ago

0.1.353

3 years ago

0.1.232

3 years ago

0.1.111

3 years ago

0.1.350

3 years ago

0.1.129

3 years ago

0.1.249

3 years ago

0.1.128

3 years ago

0.1.246

3 years ago

0.1.125

3 years ago

0.1.366

3 years ago

0.1.245

3 years ago

0.1.124

3 years ago

0.1.248

3 years ago

0.1.127

3 years ago

0.1.247

3 years ago

0.1.126

3 years ago

0.1.363

3 years ago

0.1.242

3 years ago

0.1.121

3 years ago

0.1.362

3 years ago

0.1.241

3 years ago

0.1.120

3 years ago

0.1.365

3 years ago

0.1.244

3 years ago

0.1.123

3 years ago

0.1.364

3 years ago

0.1.243

3 years ago

0.1.122

3 years ago

0.1.361

3 years ago

0.1.240

3 years ago

0.1.360

3 years ago

0.1.139

3 years ago

0.1.257

3 years ago

0.1.136

3 years ago

0.1.256

3 years ago

0.1.135

3 years ago

0.1.259

3 years ago

0.1.138

3 years ago

0.1.258

3 years ago

0.1.137

3 years ago

0.1.253

3 years ago

0.1.132

3 years ago

0.1.252

3 years ago

0.1.131

3 years ago

0.1.255

3 years ago

0.1.134

3 years ago

0.1.254

3 years ago

0.1.133

3 years ago

0.1.251

3 years ago

0.1.130

3 years ago

0.1.250

3 years ago

0.1.268

3 years ago

0.1.147

3 years ago

0.1.267

3 years ago

0.1.146

3 years ago

0.1.149

3 years ago

0.1.269

3 years ago

0.1.148

3 years ago

0.1.264

3 years ago

0.1.143

3 years ago

0.1.263

3 years ago

0.1.142

3 years ago

0.1.266

3 years ago

0.1.145

3 years ago

0.1.265

3 years ago

0.1.144

3 years ago

0.1.260

3 years ago

0.1.262

3 years ago

0.1.141

3 years ago

0.1.261

3 years ago

0.1.140

3 years ago

0.1.309

3 years ago

0.1.308

3 years ago

0.1.316

3 years ago

0.1.315

3 years ago

0.1.318

3 years ago

0.1.317

3 years ago

0.1.312

3 years ago

0.1.311

3 years ago

0.1.314

3 years ago

0.1.313

3 years ago

0.1.310

3 years ago

0.1.319

3 years ago

0.1.327

3 years ago

0.1.206

3 years ago

0.1.326

3 years ago

0.1.205

3 years ago

0.1.329

3 years ago

0.1.208

3 years ago

0.1.328

3 years ago

0.1.207

3 years ago

0.1.323

3 years ago

0.1.202

3 years ago

0.1.322

3 years ago

0.1.201

3 years ago

0.1.325

3 years ago

0.1.204

3 years ago

0.1.324

3 years ago

0.1.203

3 years ago

0.1.321

3 years ago

0.1.200

3 years ago

0.1.320

3 years ago

0.1.209

3 years ago

0.1.338

3 years ago

0.1.217

3 years ago

0.1.337

3 years ago

0.1.216

3 years ago

0.1.219

3 years ago

0.1.339

3 years ago

0.1.218

3 years ago

0.1.334

3 years ago

0.1.213

3 years ago

0.1.333

3 years ago

0.1.212

3 years ago

0.1.336

3 years ago

0.1.215

3 years ago

0.1.335

3 years ago

0.1.214

3 years ago

0.1.330

3 years ago

0.1.332

3 years ago

0.1.211

3 years ago

0.1.331

3 years ago

0.1.210

3 years ago

0.1.349

3 years ago

0.1.228

3 years ago

0.1.107

3 years ago

0.1.348

3 years ago

0.1.227

3 years ago

0.1.106

3 years ago

0.1.109

3 years ago

0.1.229

3 years ago

0.1.108

3 years ago

0.1.345

3 years ago

0.1.224

3 years ago

0.1.103

3 years ago

0.1.344

3 years ago

0.1.223

3 years ago

0.1.102

3 years ago

0.1.347

3 years ago

0.1.226

3 years ago

0.1.105

3 years ago

0.1.346

3 years ago

0.1.225

3 years ago

0.1.104

3 years ago

0.1.341

3 years ago

0.1.220

3 years ago

0.1.340

3 years ago

0.1.343

3 years ago

0.1.222

3 years ago

0.1.101

3 years ago

0.1.342

3 years ago

0.1.221

3 years ago

0.1.100

3 years ago

0.1.190

3 years ago

0.1.52

3 years ago

0.1.53

3 years ago

0.1.192

3 years ago

0.1.54

3 years ago

0.1.191

3 years ago

0.1.55

3 years ago

0.1.56

3 years ago

0.1.57

3 years ago

0.1.58

3 years ago

0.1.59

3 years ago

0.1.50

3 years ago

0.1.51

3 years ago

0.1.198

3 years ago

0.1.49

3 years ago

0.1.197

3 years ago

0.1.199

3 years ago

0.1.194

3 years ago

0.1.193

3 years ago

0.1.196

3 years ago

0.1.195

3 years ago

0.1.41

3 years ago

0.1.42

3 years ago

0.1.43

3 years ago

0.1.44

3 years ago

0.1.45

3 years ago

0.1.46

3 years ago

0.1.47

3 years ago

0.1.48

3 years ago

0.1.40

3 years ago

0.1.38

3 years ago

0.1.39

3 years ago

0.1.30

3 years ago

0.1.31

3 years ago

0.1.32

3 years ago

0.1.33

3 years ago

0.1.34

3 years ago

0.1.35

3 years ago

0.1.36

3 years ago

0.1.37

3 years ago

0.1.27

3 years ago

0.1.28

3 years ago

0.1.29

3 years ago

0.1.22

3 years ago

0.1.23

3 years ago

0.1.24

3 years ago

0.1.25

3 years ago

0.1.26

3 years ago

0.1.305

3 years ago

0.1.304

3 years ago

0.1.307

3 years ago

0.1.306

3 years ago

0.1.301

3 years ago

0.1.300

3 years ago

0.1.303

3 years ago

0.1.302

3 years ago

0.1.96

3 years ago

0.1.97

3 years ago

0.1.98

3 years ago

0.1.99

3 years ago

0.1.90

3 years ago

0.1.91

3 years ago

0.1.92

3 years ago

0.1.93

3 years ago

0.1.94

3 years ago

0.1.95

3 years ago

0.1.279

3 years ago

0.1.158

3 years ago

0.1.278

3 years ago

0.1.157

3 years ago

0.1.159

3 years ago

0.1.275

3 years ago

0.1.154

3 years ago

0.1.274

3 years ago

0.1.153

3 years ago

0.1.277

3 years ago

0.1.156

3 years ago

0.1.276

3 years ago

0.1.155

3 years ago

0.1.271

3 years ago

0.1.150

3 years ago

0.1.270

3 years ago

0.1.273

3 years ago

0.1.152

3 years ago

0.1.272

3 years ago

0.1.151

3 years ago

0.1.85

3 years ago

0.1.86

3 years ago

0.1.280

3 years ago

0.1.87

3 years ago

0.1.88

3 years ago

0.1.89

3 years ago

0.1.80

3 years ago

0.1.81

3 years ago

0.1.82

3 years ago

0.1.83

3 years ago

0.1.84

3 years ago

0.1.169

3 years ago

0.1.289

3 years ago

0.1.168

3 years ago

0.1.286

3 years ago

0.1.165

3 years ago

0.1.285

3 years ago

0.1.164

3 years ago

0.1.288

3 years ago

0.1.167

3 years ago

0.1.287

3 years ago

0.1.166

3 years ago

0.1.282

3 years ago

0.1.161

3 years ago

0.1.281

3 years ago

0.1.160

3 years ago

0.1.284

3 years ago

0.1.163

3 years ago

0.1.283

3 years ago

0.1.162

3 years ago

0.1.74

3 years ago

0.1.75

3 years ago

0.1.291

3 years ago

0.1.170

3 years ago

0.1.76

3 years ago

0.1.290

3 years ago

0.1.77

3 years ago

0.1.78

3 years ago

0.1.79

3 years ago

0.1.70

3 years ago

0.1.71

3 years ago

0.1.72

3 years ago

0.1.73

3 years ago

0.1.179

3 years ago

0.1.297

3 years ago

0.1.176

3 years ago

0.1.296

3 years ago

0.1.175

3 years ago

0.1.299

3 years ago

0.1.178

3 years ago

0.1.298

3 years ago

0.1.177

3 years ago

0.1.293

3 years ago

0.1.172

3 years ago

0.1.292

3 years ago

0.1.171

3 years ago

0.1.295

3 years ago

0.1.174

3 years ago

0.1.294

3 years ago

0.1.173

3 years ago

0.1.63

3 years ago

0.1.64

3 years ago

0.1.181

3 years ago

0.1.65

3 years ago

0.1.180

3 years ago

0.1.66

3 years ago

0.1.67

3 years ago

0.1.68

3 years ago

0.1.69

3 years ago

0.1.60

3 years ago

0.1.61

3 years ago

0.1.62

3 years ago

0.1.187

3 years ago

0.1.186

3 years ago

0.1.189

3 years ago

0.1.188

3 years ago

0.1.183

3 years ago

0.1.182

3 years ago

0.1.185

3 years ago

0.1.184

3 years ago

0.1.21

3 years ago

0.1.20

4 years ago

0.1.19

4 years ago

0.1.18

4 years ago

0.1.17

4 years ago

0.1.16

4 years ago

0.1.15

4 years ago

0.1.14

4 years ago

0.1.13

4 years ago

0.1.12

4 years ago

0.1.11

4 years ago

0.1.10

4 years ago

0.1.9

4 years ago

0.1.8

4 years ago

0.1.7

4 years ago

0.1.6

4 years ago

0.1.5

4 years ago

0.1.4

4 years ago

0.1.3

4 years ago

0.1.2

4 years ago

0.1.1

4 years ago

0.1.0

4 years ago

0.0.20

4 years ago

0.0.19

4 years ago

0.0.18

4 years ago

0.0.17

4 years ago

0.0.16

4 years ago

0.0.15

4 years ago

0.0.14

4 years ago

0.0.13

4 years ago

0.0.12

4 years ago

0.0.11

4 years ago

0.0.10

4 years ago

0.0.9

4 years ago

0.0.8

4 years ago

0.0.7

4 years ago

0.0.6

4 years ago