0.1.597 • Published 10 months ago

@wheatstalk/aws-cdk-exec v0.1.597

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
10 months 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

10 months ago

0.1.594

10 months ago

0.1.593

10 months ago

0.1.596

10 months ago

0.1.595

10 months ago

0.1.590

10 months ago

0.1.592

10 months ago

0.1.591

10 months ago

0.1.587

10 months ago

0.1.589

10 months ago

0.1.588

10 months ago

0.1.586

10 months ago

0.1.585

10 months ago

0.1.584

10 months ago

0.1.583

10 months ago

0.1.582

10 months ago

0.1.581

10 months ago

0.1.580

10 months ago

0.1.579

11 months ago

0.1.578

11 months ago

0.1.576

11 months ago

0.1.575

11 months ago

0.1.577

11 months ago

0.1.574

11 months ago

0.1.572

11 months ago

0.1.571

11 months ago

0.1.573

11 months ago

0.1.569

11 months ago

0.1.568

11 months ago

0.1.567

11 months ago

0.1.570

11 months ago

0.1.565

11 months ago

0.1.564

11 months ago

0.1.566

11 months ago

0.1.561

11 months ago

0.1.563

11 months ago

0.1.562

11 months ago

0.1.558

11 months ago

0.1.557

11 months ago

0.1.559

11 months ago

0.1.560

11 months ago

0.1.554

11 months ago

0.1.553

11 months ago

0.1.556

11 months ago

0.1.555

11 months ago

0.1.550

12 months ago

0.1.552

11 months ago

0.1.551

12 months 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

12 months ago

0.1.535

12 months ago

0.1.538

12 months ago

0.1.537

12 months ago

0.1.532

1 year ago

0.1.531

1 year ago

0.1.534

12 months ago

0.1.533

1 year ago

0.1.530

1 year ago

0.1.539

12 months ago

0.1.547

12 months ago

0.1.546

12 months ago

0.1.549

12 months ago

0.1.548

12 months ago

0.1.543

12 months ago

0.1.542

12 months ago

0.1.545

12 months ago

0.1.544

12 months ago

0.1.541

12 months ago

0.1.540

12 months 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

1 year ago

0.1.429

1 year ago

0.1.428

1 year ago

0.1.426

1 year ago

0.1.427

1 year ago

0.1.425

1 year ago

0.1.422

1 year ago

0.1.421

1 year ago

0.1.424

1 year ago

0.1.423

1 year ago

0.1.420

1 year ago

0.1.419

1 year ago

0.1.417

1 year ago

0.1.418

1 year ago

0.1.416

1 year ago

0.1.415

1 year ago

0.1.414

1 year ago

0.1.413

1 year ago

0.1.412

1 year ago

0.1.411

1 year ago

0.1.410

1 year ago

0.1.409

1 year ago

0.1.408

1 year ago

0.1.407

1 year ago

0.1.406

1 year ago

0.1.405

1 year ago

0.1.404

1 year ago

0.1.403

1 year ago

0.1.402

1 year ago

0.1.401

1 year ago

0.1.400

1 year ago

0.1.399

1 year ago

0.1.398

1 year ago

0.1.397

1 year ago

0.1.396

1 year ago

0.1.395

1 year ago

0.1.378

2 years ago

0.1.377

2 years ago

0.1.379

2 years ago

0.1.374

2 years ago

0.1.373

2 years ago

0.1.376

2 years ago

0.1.375

2 years ago

0.1.370

2 years ago

0.1.372

2 years ago

0.1.371

2 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

2 years ago

0.1.369

2 years ago

0.1.368

2 years ago

0.1.239

3 years ago

0.1.118

3 years ago

0.1.359

2 years ago

0.1.238

3 years ago

0.1.117

3 years ago

0.1.119

3 years ago

0.1.356

2 years ago

0.1.235

3 years ago

0.1.114

3 years ago

0.1.355

2 years ago

0.1.234

3 years ago

0.1.113

3 years ago

0.1.358

2 years ago

0.1.237

3 years ago

0.1.116

3 years ago

0.1.357

2 years ago

0.1.236

3 years ago

0.1.115

3 years ago

0.1.352

2 years ago

0.1.231

3 years ago

0.1.110

3 years ago

0.1.351

2 years ago

0.1.230

3 years ago

0.1.354

2 years ago

0.1.233

3 years ago

0.1.112

3 years ago

0.1.353

2 years ago

0.1.232

3 years ago

0.1.111

3 years ago

0.1.350

2 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

2 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

2 years ago

0.1.242

3 years ago

0.1.121

3 years ago

0.1.362

2 years ago

0.1.241

3 years ago

0.1.120

3 years ago

0.1.365

2 years ago

0.1.244

3 years ago

0.1.123

3 years ago

0.1.364

2 years ago

0.1.243

3 years ago

0.1.122

3 years ago

0.1.361

2 years ago

0.1.240

3 years ago

0.1.360

2 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

2 years ago

0.1.315

2 years ago

0.1.318

2 years ago

0.1.317

2 years ago

0.1.312

2 years ago

0.1.311

2 years ago

0.1.314

2 years ago

0.1.313

2 years ago

0.1.310

3 years ago

0.1.319

2 years ago

0.1.327

2 years ago

0.1.206

3 years ago

0.1.326

2 years ago

0.1.205

3 years ago

0.1.329

2 years ago

0.1.208

3 years ago

0.1.328

2 years ago

0.1.207

3 years ago

0.1.323

2 years ago

0.1.202

3 years ago

0.1.322

2 years ago

0.1.201

3 years ago

0.1.325

2 years ago

0.1.204

3 years ago

0.1.324

2 years ago

0.1.203

3 years ago

0.1.321

2 years ago

0.1.200

3 years ago

0.1.320

2 years ago

0.1.209

3 years ago

0.1.338

2 years ago

0.1.217

3 years ago

0.1.337

2 years ago

0.1.216

3 years ago

0.1.219

3 years ago

0.1.339

2 years ago

0.1.218

3 years ago

0.1.334

2 years ago

0.1.213

3 years ago

0.1.333

2 years ago

0.1.212

3 years ago

0.1.336

2 years ago

0.1.215

3 years ago

0.1.335

2 years ago

0.1.214

3 years ago

0.1.330

2 years ago

0.1.332

2 years ago

0.1.211

3 years ago

0.1.331

2 years ago

0.1.210

3 years ago

0.1.349

2 years ago

0.1.228

3 years ago

0.1.107

3 years ago

0.1.348

2 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

2 years ago

0.1.224

3 years ago

0.1.103

3 years ago

0.1.344

2 years ago

0.1.223

3 years ago

0.1.102

3 years ago

0.1.347

2 years ago

0.1.226

3 years ago

0.1.105

3 years ago

0.1.346

2 years ago

0.1.225

3 years ago

0.1.104

3 years ago

0.1.341

2 years ago

0.1.220

3 years ago

0.1.340

2 years ago

0.1.343

2 years ago

0.1.222

3 years ago

0.1.101

3 years ago

0.1.342

2 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

3 years ago

0.1.19

3 years ago

0.1.18

3 years ago

0.1.17

3 years ago

0.1.16

3 years ago

0.1.15

3 years ago

0.1.14

3 years ago

0.1.13

3 years ago

0.1.12

3 years ago

0.1.11

3 years ago

0.1.10

3 years ago

0.1.9

3 years ago

0.1.8

3 years ago

0.1.7

3 years ago

0.1.6

3 years ago

0.1.5

3 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago

0.0.20

3 years ago

0.0.19

3 years ago

0.0.18

3 years ago

0.0.17

3 years ago

0.0.16

3 years ago

0.0.15

3 years ago

0.0.14

3 years ago

0.0.13

3 years ago

0.0.12

3 years ago

0.0.11

3 years ago

0.0.10

3 years ago

0.0.9

3 years ago

0.0.8

3 years ago

0.0.7

3 years ago

0.0.6

3 years ago