0.1.597 • Published 11 months ago

@wheatstalk/aws-cdk-exec v0.1.597

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

11 months ago

0.1.594

11 months ago

0.1.593

11 months ago

0.1.596

11 months ago

0.1.595

11 months ago

0.1.590

11 months ago

0.1.592

11 months ago

0.1.591

11 months ago

0.1.587

11 months ago

0.1.589

11 months ago

0.1.588

11 months ago

0.1.586

11 months ago

0.1.585

11 months ago

0.1.584

11 months ago

0.1.583

11 months ago

0.1.582

11 months ago

0.1.581

11 months ago

0.1.580

11 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

12 months ago

0.1.573

11 months ago

0.1.569

12 months ago

0.1.568

12 months ago

0.1.567

12 months ago

0.1.570

12 months ago

0.1.565

12 months ago

0.1.564

12 months ago

0.1.566

12 months ago

0.1.561

12 months ago

0.1.563

12 months ago

0.1.562

12 months ago

0.1.558

12 months ago

0.1.557

12 months ago

0.1.559

12 months ago

0.1.560

12 months ago

0.1.554

12 months ago

0.1.553

12 months ago

0.1.556

12 months ago

0.1.555

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

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

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

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

3 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