@pulumi/pulumi 3.182.0-alpha.x49f2764 → 3.182.0-alpha.x7baa41a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/automation/cmd.js +4 -2
- package/automation/cmd.js.map +1 -1
- package/cmd/run/index.js +39 -0
- package/cmd/run/index.js.map +1 -1
- package/package.json +1 -1
- package/proto/analyzer_grpc_pb.d.ts +17 -0
- package/proto/analyzer_grpc_pb.js +15 -0
- package/proto/provider_pb.d.ts +53 -0
- package/proto/provider_pb.js +475 -1
- package/proto/resource_pb.d.ts +6 -0
- package/proto/resource_pb.js +83 -23
- package/provider/server.js +29 -0
- package/provider/server.js.map +1 -1
- package/resource.d.ts +132 -0
- package/resource.js +44 -0
- package/resource.js.map +1 -1
- package/runtime/callbacks.d.ts +3 -1
- package/runtime/callbacks.js +52 -0
- package/runtime/callbacks.js.map +1 -1
- package/runtime/mocks.js +1 -0
- package/runtime/mocks.js.map +1 -1
- package/runtime/resource.d.ts +2 -1
- package/runtime/resource.js +47 -0
- package/runtime/resource.js.map +1 -1
- package/runtime/settings.js +4 -2
- package/runtime/settings.js.map +1 -1
- package/runtime/state.js +1 -0
- package/runtime/state.js.map +1 -1
- package/version.js +1 -1
package/proto/resource_pb.js
CHANGED
|
@@ -7463,6 +7463,8 @@ proto.pulumirpc.ResourceHookRequest.toObject = function(includeInstance, msg) {
|
|
|
7463
7463
|
var f, obj = {
|
|
7464
7464
|
urn: jspb.Message.getFieldWithDefault(msg, 1, ""),
|
|
7465
7465
|
id: jspb.Message.getFieldWithDefault(msg, 2, ""),
|
|
7466
|
+
name: jspb.Message.getFieldWithDefault(msg, 3, ""),
|
|
7467
|
+
type: jspb.Message.getFieldWithDefault(msg, 4, ""),
|
|
7466
7468
|
newInputs: (f = msg.getNewInputs()) && google_protobuf_struct_pb.Struct.toObject(includeInstance, f),
|
|
7467
7469
|
oldInputs: (f = msg.getOldInputs()) && google_protobuf_struct_pb.Struct.toObject(includeInstance, f),
|
|
7468
7470
|
newOutputs: (f = msg.getNewOutputs()) && google_protobuf_struct_pb.Struct.toObject(includeInstance, f),
|
|
@@ -7512,21 +7514,29 @@ proto.pulumirpc.ResourceHookRequest.deserializeBinaryFromReader = function(msg,
|
|
|
7512
7514
|
msg.setId(value);
|
|
7513
7515
|
break;
|
|
7514
7516
|
case 3:
|
|
7517
|
+
var value = /** @type {string} */ (reader.readString());
|
|
7518
|
+
msg.setName(value);
|
|
7519
|
+
break;
|
|
7520
|
+
case 4:
|
|
7521
|
+
var value = /** @type {string} */ (reader.readString());
|
|
7522
|
+
msg.setType(value);
|
|
7523
|
+
break;
|
|
7524
|
+
case 5:
|
|
7515
7525
|
var value = new google_protobuf_struct_pb.Struct;
|
|
7516
7526
|
reader.readMessage(value,google_protobuf_struct_pb.Struct.deserializeBinaryFromReader);
|
|
7517
7527
|
msg.setNewInputs(value);
|
|
7518
7528
|
break;
|
|
7519
|
-
case
|
|
7529
|
+
case 6:
|
|
7520
7530
|
var value = new google_protobuf_struct_pb.Struct;
|
|
7521
7531
|
reader.readMessage(value,google_protobuf_struct_pb.Struct.deserializeBinaryFromReader);
|
|
7522
7532
|
msg.setOldInputs(value);
|
|
7523
7533
|
break;
|
|
7524
|
-
case
|
|
7534
|
+
case 7:
|
|
7525
7535
|
var value = new google_protobuf_struct_pb.Struct;
|
|
7526
7536
|
reader.readMessage(value,google_protobuf_struct_pb.Struct.deserializeBinaryFromReader);
|
|
7527
7537
|
msg.setNewOutputs(value);
|
|
7528
7538
|
break;
|
|
7529
|
-
case
|
|
7539
|
+
case 8:
|
|
7530
7540
|
var value = new google_protobuf_struct_pb.Struct;
|
|
7531
7541
|
reader.readMessage(value,google_protobuf_struct_pb.Struct.deserializeBinaryFromReader);
|
|
7532
7542
|
msg.setOldOutputs(value);
|
|
@@ -7574,10 +7584,24 @@ proto.pulumirpc.ResourceHookRequest.serializeBinaryToWriter = function(message,
|
|
|
7574
7584
|
f
|
|
7575
7585
|
);
|
|
7576
7586
|
}
|
|
7587
|
+
f = message.getName();
|
|
7588
|
+
if (f.length > 0) {
|
|
7589
|
+
writer.writeString(
|
|
7590
|
+
3,
|
|
7591
|
+
f
|
|
7592
|
+
);
|
|
7593
|
+
}
|
|
7594
|
+
f = message.getType();
|
|
7595
|
+
if (f.length > 0) {
|
|
7596
|
+
writer.writeString(
|
|
7597
|
+
4,
|
|
7598
|
+
f
|
|
7599
|
+
);
|
|
7600
|
+
}
|
|
7577
7601
|
f = message.getNewInputs();
|
|
7578
7602
|
if (f != null) {
|
|
7579
7603
|
writer.writeMessage(
|
|
7580
|
-
|
|
7604
|
+
5,
|
|
7581
7605
|
f,
|
|
7582
7606
|
google_protobuf_struct_pb.Struct.serializeBinaryToWriter
|
|
7583
7607
|
);
|
|
@@ -7585,7 +7609,7 @@ proto.pulumirpc.ResourceHookRequest.serializeBinaryToWriter = function(message,
|
|
|
7585
7609
|
f = message.getOldInputs();
|
|
7586
7610
|
if (f != null) {
|
|
7587
7611
|
writer.writeMessage(
|
|
7588
|
-
|
|
7612
|
+
6,
|
|
7589
7613
|
f,
|
|
7590
7614
|
google_protobuf_struct_pb.Struct.serializeBinaryToWriter
|
|
7591
7615
|
);
|
|
@@ -7593,7 +7617,7 @@ proto.pulumirpc.ResourceHookRequest.serializeBinaryToWriter = function(message,
|
|
|
7593
7617
|
f = message.getNewOutputs();
|
|
7594
7618
|
if (f != null) {
|
|
7595
7619
|
writer.writeMessage(
|
|
7596
|
-
|
|
7620
|
+
7,
|
|
7597
7621
|
f,
|
|
7598
7622
|
google_protobuf_struct_pb.Struct.serializeBinaryToWriter
|
|
7599
7623
|
);
|
|
@@ -7601,7 +7625,7 @@ proto.pulumirpc.ResourceHookRequest.serializeBinaryToWriter = function(message,
|
|
|
7601
7625
|
f = message.getOldOutputs();
|
|
7602
7626
|
if (f != null) {
|
|
7603
7627
|
writer.writeMessage(
|
|
7604
|
-
|
|
7628
|
+
8,
|
|
7605
7629
|
f,
|
|
7606
7630
|
google_protobuf_struct_pb.Struct.serializeBinaryToWriter
|
|
7607
7631
|
);
|
|
@@ -7646,12 +7670,48 @@ proto.pulumirpc.ResourceHookRequest.prototype.setId = function(value) {
|
|
|
7646
7670
|
|
|
7647
7671
|
|
|
7648
7672
|
/**
|
|
7649
|
-
* optional
|
|
7673
|
+
* optional string name = 3;
|
|
7674
|
+
* @return {string}
|
|
7675
|
+
*/
|
|
7676
|
+
proto.pulumirpc.ResourceHookRequest.prototype.getName = function() {
|
|
7677
|
+
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
|
|
7678
|
+
};
|
|
7679
|
+
|
|
7680
|
+
|
|
7681
|
+
/**
|
|
7682
|
+
* @param {string} value
|
|
7683
|
+
* @return {!proto.pulumirpc.ResourceHookRequest} returns this
|
|
7684
|
+
*/
|
|
7685
|
+
proto.pulumirpc.ResourceHookRequest.prototype.setName = function(value) {
|
|
7686
|
+
return jspb.Message.setProto3StringField(this, 3, value);
|
|
7687
|
+
};
|
|
7688
|
+
|
|
7689
|
+
|
|
7690
|
+
/**
|
|
7691
|
+
* optional string type = 4;
|
|
7692
|
+
* @return {string}
|
|
7693
|
+
*/
|
|
7694
|
+
proto.pulumirpc.ResourceHookRequest.prototype.getType = function() {
|
|
7695
|
+
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, ""));
|
|
7696
|
+
};
|
|
7697
|
+
|
|
7698
|
+
|
|
7699
|
+
/**
|
|
7700
|
+
* @param {string} value
|
|
7701
|
+
* @return {!proto.pulumirpc.ResourceHookRequest} returns this
|
|
7702
|
+
*/
|
|
7703
|
+
proto.pulumirpc.ResourceHookRequest.prototype.setType = function(value) {
|
|
7704
|
+
return jspb.Message.setProto3StringField(this, 4, value);
|
|
7705
|
+
};
|
|
7706
|
+
|
|
7707
|
+
|
|
7708
|
+
/**
|
|
7709
|
+
* optional google.protobuf.Struct new_inputs = 5;
|
|
7650
7710
|
* @return {?proto.google.protobuf.Struct}
|
|
7651
7711
|
*/
|
|
7652
7712
|
proto.pulumirpc.ResourceHookRequest.prototype.getNewInputs = function() {
|
|
7653
7713
|
return /** @type{?proto.google.protobuf.Struct} */ (
|
|
7654
|
-
jspb.Message.getWrapperField(this, google_protobuf_struct_pb.Struct,
|
|
7714
|
+
jspb.Message.getWrapperField(this, google_protobuf_struct_pb.Struct, 5));
|
|
7655
7715
|
};
|
|
7656
7716
|
|
|
7657
7717
|
|
|
@@ -7660,7 +7720,7 @@ proto.pulumirpc.ResourceHookRequest.prototype.getNewInputs = function() {
|
|
|
7660
7720
|
* @return {!proto.pulumirpc.ResourceHookRequest} returns this
|
|
7661
7721
|
*/
|
|
7662
7722
|
proto.pulumirpc.ResourceHookRequest.prototype.setNewInputs = function(value) {
|
|
7663
|
-
return jspb.Message.setWrapperField(this,
|
|
7723
|
+
return jspb.Message.setWrapperField(this, 5, value);
|
|
7664
7724
|
};
|
|
7665
7725
|
|
|
7666
7726
|
|
|
@@ -7678,17 +7738,17 @@ proto.pulumirpc.ResourceHookRequest.prototype.clearNewInputs = function() {
|
|
|
7678
7738
|
* @return {boolean}
|
|
7679
7739
|
*/
|
|
7680
7740
|
proto.pulumirpc.ResourceHookRequest.prototype.hasNewInputs = function() {
|
|
7681
|
-
return jspb.Message.getField(this,
|
|
7741
|
+
return jspb.Message.getField(this, 5) != null;
|
|
7682
7742
|
};
|
|
7683
7743
|
|
|
7684
7744
|
|
|
7685
7745
|
/**
|
|
7686
|
-
* optional google.protobuf.Struct old_inputs =
|
|
7746
|
+
* optional google.protobuf.Struct old_inputs = 6;
|
|
7687
7747
|
* @return {?proto.google.protobuf.Struct}
|
|
7688
7748
|
*/
|
|
7689
7749
|
proto.pulumirpc.ResourceHookRequest.prototype.getOldInputs = function() {
|
|
7690
7750
|
return /** @type{?proto.google.protobuf.Struct} */ (
|
|
7691
|
-
jspb.Message.getWrapperField(this, google_protobuf_struct_pb.Struct,
|
|
7751
|
+
jspb.Message.getWrapperField(this, google_protobuf_struct_pb.Struct, 6));
|
|
7692
7752
|
};
|
|
7693
7753
|
|
|
7694
7754
|
|
|
@@ -7697,7 +7757,7 @@ proto.pulumirpc.ResourceHookRequest.prototype.getOldInputs = function() {
|
|
|
7697
7757
|
* @return {!proto.pulumirpc.ResourceHookRequest} returns this
|
|
7698
7758
|
*/
|
|
7699
7759
|
proto.pulumirpc.ResourceHookRequest.prototype.setOldInputs = function(value) {
|
|
7700
|
-
return jspb.Message.setWrapperField(this,
|
|
7760
|
+
return jspb.Message.setWrapperField(this, 6, value);
|
|
7701
7761
|
};
|
|
7702
7762
|
|
|
7703
7763
|
|
|
@@ -7715,17 +7775,17 @@ proto.pulumirpc.ResourceHookRequest.prototype.clearOldInputs = function() {
|
|
|
7715
7775
|
* @return {boolean}
|
|
7716
7776
|
*/
|
|
7717
7777
|
proto.pulumirpc.ResourceHookRequest.prototype.hasOldInputs = function() {
|
|
7718
|
-
return jspb.Message.getField(this,
|
|
7778
|
+
return jspb.Message.getField(this, 6) != null;
|
|
7719
7779
|
};
|
|
7720
7780
|
|
|
7721
7781
|
|
|
7722
7782
|
/**
|
|
7723
|
-
* optional google.protobuf.Struct new_outputs =
|
|
7783
|
+
* optional google.protobuf.Struct new_outputs = 7;
|
|
7724
7784
|
* @return {?proto.google.protobuf.Struct}
|
|
7725
7785
|
*/
|
|
7726
7786
|
proto.pulumirpc.ResourceHookRequest.prototype.getNewOutputs = function() {
|
|
7727
7787
|
return /** @type{?proto.google.protobuf.Struct} */ (
|
|
7728
|
-
jspb.Message.getWrapperField(this, google_protobuf_struct_pb.Struct,
|
|
7788
|
+
jspb.Message.getWrapperField(this, google_protobuf_struct_pb.Struct, 7));
|
|
7729
7789
|
};
|
|
7730
7790
|
|
|
7731
7791
|
|
|
@@ -7734,7 +7794,7 @@ proto.pulumirpc.ResourceHookRequest.prototype.getNewOutputs = function() {
|
|
|
7734
7794
|
* @return {!proto.pulumirpc.ResourceHookRequest} returns this
|
|
7735
7795
|
*/
|
|
7736
7796
|
proto.pulumirpc.ResourceHookRequest.prototype.setNewOutputs = function(value) {
|
|
7737
|
-
return jspb.Message.setWrapperField(this,
|
|
7797
|
+
return jspb.Message.setWrapperField(this, 7, value);
|
|
7738
7798
|
};
|
|
7739
7799
|
|
|
7740
7800
|
|
|
@@ -7752,17 +7812,17 @@ proto.pulumirpc.ResourceHookRequest.prototype.clearNewOutputs = function() {
|
|
|
7752
7812
|
* @return {boolean}
|
|
7753
7813
|
*/
|
|
7754
7814
|
proto.pulumirpc.ResourceHookRequest.prototype.hasNewOutputs = function() {
|
|
7755
|
-
return jspb.Message.getField(this,
|
|
7815
|
+
return jspb.Message.getField(this, 7) != null;
|
|
7756
7816
|
};
|
|
7757
7817
|
|
|
7758
7818
|
|
|
7759
7819
|
/**
|
|
7760
|
-
* optional google.protobuf.Struct old_outputs =
|
|
7820
|
+
* optional google.protobuf.Struct old_outputs = 8;
|
|
7761
7821
|
* @return {?proto.google.protobuf.Struct}
|
|
7762
7822
|
*/
|
|
7763
7823
|
proto.pulumirpc.ResourceHookRequest.prototype.getOldOutputs = function() {
|
|
7764
7824
|
return /** @type{?proto.google.protobuf.Struct} */ (
|
|
7765
|
-
jspb.Message.getWrapperField(this, google_protobuf_struct_pb.Struct,
|
|
7825
|
+
jspb.Message.getWrapperField(this, google_protobuf_struct_pb.Struct, 8));
|
|
7766
7826
|
};
|
|
7767
7827
|
|
|
7768
7828
|
|
|
@@ -7771,7 +7831,7 @@ proto.pulumirpc.ResourceHookRequest.prototype.getOldOutputs = function() {
|
|
|
7771
7831
|
* @return {!proto.pulumirpc.ResourceHookRequest} returns this
|
|
7772
7832
|
*/
|
|
7773
7833
|
proto.pulumirpc.ResourceHookRequest.prototype.setOldOutputs = function(value) {
|
|
7774
|
-
return jspb.Message.setWrapperField(this,
|
|
7834
|
+
return jspb.Message.setWrapperField(this, 8, value);
|
|
7775
7835
|
};
|
|
7776
7836
|
|
|
7777
7837
|
|
|
@@ -7789,7 +7849,7 @@ proto.pulumirpc.ResourceHookRequest.prototype.clearOldOutputs = function() {
|
|
|
7789
7849
|
* @return {boolean}
|
|
7790
7850
|
*/
|
|
7791
7851
|
proto.pulumirpc.ResourceHookRequest.prototype.hasOldOutputs = function() {
|
|
7792
|
-
return jspb.Message.getField(this,
|
|
7852
|
+
return jspb.Message.getField(this, 8) != null;
|
|
7793
7853
|
};
|
|
7794
7854
|
|
|
7795
7855
|
|
package/provider/server.js
CHANGED
|
@@ -341,6 +341,16 @@ class Server {
|
|
|
341
341
|
providers[pkg] = createProviderResource(ref);
|
|
342
342
|
}
|
|
343
343
|
}
|
|
344
|
+
const resourceHooks = {};
|
|
345
|
+
const binding = req.getResourceHooks();
|
|
346
|
+
if (binding) {
|
|
347
|
+
resourceHooks.beforeCreate = binding.getBeforeCreateList().map((n) => new StubResourceHook(n));
|
|
348
|
+
resourceHooks.afterCreate = binding.getAfterCreateList().map((n) => new StubResourceHook(n));
|
|
349
|
+
resourceHooks.beforeUpdate = binding.getBeforeUpdateList().map((n) => new StubResourceHook(n));
|
|
350
|
+
resourceHooks.afterUpdate = binding.getAfterUpdateList().map((n) => new StubResourceHook(n));
|
|
351
|
+
resourceHooks.beforeDelete = binding.getBeforeDeleteList().map((n) => new StubResourceHook(n));
|
|
352
|
+
resourceHooks.afterDelete = binding.getAfterDeleteList().map((n) => new StubResourceHook(n));
|
|
353
|
+
}
|
|
344
354
|
const opts = {
|
|
345
355
|
aliases: req.getAliasesList(),
|
|
346
356
|
dependsOn: dependsOn,
|
|
@@ -351,6 +361,7 @@ class Server {
|
|
|
351
361
|
replaceOnChanges: req.getReplaceonchangesList(),
|
|
352
362
|
customTimeouts: req.getCustomtimeouts()?.toObject(),
|
|
353
363
|
retainOnDelete: req.getRetainondelete(),
|
|
364
|
+
hooks: resourceHooks,
|
|
354
365
|
};
|
|
355
366
|
const deletedWith = req.getDeletedwith();
|
|
356
367
|
if (deletedWith !== "") {
|
|
@@ -678,4 +689,22 @@ function createProviderResource(ref) {
|
|
|
678
689
|
}
|
|
679
690
|
return new resource.DependencyProviderResource(ref);
|
|
680
691
|
}
|
|
692
|
+
/**
|
|
693
|
+
* StubResourceHook is a resource hook that does nothing.
|
|
694
|
+
*
|
|
695
|
+
* We need to reconstruct {@link ResourceHook} instances here to set
|
|
696
|
+
* on the {@link ResourceOption}s, but we only have the name
|
|
697
|
+
* available to us. We also know that these hooks have already been
|
|
698
|
+
* registered when the remote component called register_resource, so we
|
|
699
|
+
* can construct dummy hooks here, that will be serialized back into
|
|
700
|
+
* list of hook names.
|
|
701
|
+
*/
|
|
702
|
+
class StubResourceHook extends resource.ResourceHook {
|
|
703
|
+
constructor(n) {
|
|
704
|
+
super(n, () => {
|
|
705
|
+
return;
|
|
706
|
+
});
|
|
707
|
+
this.__registered = Promise.resolve(); // Mark the hook as registered.
|
|
708
|
+
}
|
|
709
|
+
}
|
|
681
710
|
//# sourceMappingURL=server.js.map
|
package/provider/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../provider/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../provider/server.ts"],"names":[],"mappings":"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"}
|
package/resource.d.ts
CHANGED
|
@@ -248,6 +248,11 @@ export interface ResourceOptions {
|
|
|
248
248
|
* if specified is being deleted as well.
|
|
249
249
|
*/
|
|
250
250
|
deletedWith?: Resource;
|
|
251
|
+
/**
|
|
252
|
+
* Optional resource hooks to bind to this resource. The hooks will be
|
|
253
|
+
* invoked during certain step of the lifecycle of the resource.
|
|
254
|
+
*/
|
|
255
|
+
hooks?: ResourceHookBinding;
|
|
251
256
|
}
|
|
252
257
|
export interface CustomTimeouts {
|
|
253
258
|
/**
|
|
@@ -394,6 +399,133 @@ export interface CustomResourceOptions extends ResourceOptions {
|
|
|
394
399
|
*/
|
|
395
400
|
import?: ID;
|
|
396
401
|
}
|
|
402
|
+
/**
|
|
403
|
+
* ResourceHook is a named hook that can be registered as a resource hook.
|
|
404
|
+
*/
|
|
405
|
+
export declare class ResourceHook {
|
|
406
|
+
/**
|
|
407
|
+
* The unqiue name of the resource hook.
|
|
408
|
+
*/
|
|
409
|
+
name: string;
|
|
410
|
+
/**
|
|
411
|
+
* The function that will be called when the resource hook is triggered.
|
|
412
|
+
*/
|
|
413
|
+
callback: ResourceHookFunction;
|
|
414
|
+
/**
|
|
415
|
+
* Run the hook during dry run (preview) operations. Defaults to false.
|
|
416
|
+
*/
|
|
417
|
+
opts?: ResourceHookOptions;
|
|
418
|
+
constructor(name: string, callback: ResourceHookFunction, opts?: ResourceHookOptions);
|
|
419
|
+
static isInstance(obj: any): obj is ResourceHook;
|
|
420
|
+
}
|
|
421
|
+
/**
|
|
422
|
+
* Options for registering a resource hook.
|
|
423
|
+
*/
|
|
424
|
+
export interface ResourceHookOptions {
|
|
425
|
+
/**
|
|
426
|
+
* Run the hook during dry run (preview) operations. Defaults to false.
|
|
427
|
+
*/
|
|
428
|
+
onDryRun?: boolean;
|
|
429
|
+
}
|
|
430
|
+
/**
|
|
431
|
+
* ResourceHookArgs represents the arguments passed to a resource hook
|
|
432
|
+
* Depending on the hook type, only some of the new/old inputs/outputs are set.
|
|
433
|
+
*
|
|
434
|
+
* | Hook Type | old_inputs | new_inputs | old_outputs | new_outputs |
|
|
435
|
+
* | ------------- | ---------- | ---------- | ----------- | ----------- |
|
|
436
|
+
* | before_create | | ✓ | | |
|
|
437
|
+
* | after_create | | ✓ | | ✓ |
|
|
438
|
+
* | before_update | ✓ | ✓ | ✓ | |
|
|
439
|
+
* | after_update | ✓ | ✓ | ✓ | ✓ |
|
|
440
|
+
* | before_delete | ✓ | | ✓ | |
|
|
441
|
+
* | after_delete | ✓ | | ✓ | |
|
|
442
|
+
*/
|
|
443
|
+
export interface ResourceHookArgs {
|
|
444
|
+
/**
|
|
445
|
+
* The URN of the resource that triggered the hook.
|
|
446
|
+
*/
|
|
447
|
+
urn: URN;
|
|
448
|
+
/**
|
|
449
|
+
* The ID of the resource that triggered the hook.
|
|
450
|
+
*/
|
|
451
|
+
id: ID;
|
|
452
|
+
/**
|
|
453
|
+
* The name of the resource that triggered the hook.
|
|
454
|
+
*/
|
|
455
|
+
name: string;
|
|
456
|
+
/**
|
|
457
|
+
* The type of the resource that triggered the hook.
|
|
458
|
+
*/
|
|
459
|
+
type: string;
|
|
460
|
+
/**
|
|
461
|
+
* The new inputs of the resource that triggered the hook.
|
|
462
|
+
*/
|
|
463
|
+
newInputs?: Record<string, any>;
|
|
464
|
+
/**
|
|
465
|
+
* The old inputs of the resource that triggered the hook.
|
|
466
|
+
*/
|
|
467
|
+
oldInputs?: Record<string, any>;
|
|
468
|
+
/**
|
|
469
|
+
* The new outputs of the resource that triggered the hook.
|
|
470
|
+
*/
|
|
471
|
+
newOutputs?: Record<string, any>;
|
|
472
|
+
/**
|
|
473
|
+
* The old outputs of the resource that triggered the hook.
|
|
474
|
+
*/
|
|
475
|
+
oldOutputs?: Record<string, any>;
|
|
476
|
+
}
|
|
477
|
+
/**
|
|
478
|
+
* ResourceHookFunction is a function that can be registered as a resource hook.
|
|
479
|
+
*/
|
|
480
|
+
export declare type ResourceHookFunction = (args: ResourceHookArgs) => void | Promise<void>;
|
|
481
|
+
/**
|
|
482
|
+
* Binds {@link ResourceHook} instances to a resource. The resource hooks will
|
|
483
|
+
* be invoked during certain step of the lifecycle of the resource.
|
|
484
|
+
*
|
|
485
|
+
* `before_${action}` hooks that raise an exception cause the action to fail.
|
|
486
|
+
* `after_${action}` hooks that raise an exception will log a warning, but do
|
|
487
|
+
* not cause the action or the deployment to fail.
|
|
488
|
+
*
|
|
489
|
+
* When running `pulumi destroy`, `before_delete` and `after_delete` resource
|
|
490
|
+
* hooks require the operation to run with `--run-program`, to ensure that the
|
|
491
|
+
* program which defines the hooks is available.
|
|
492
|
+
*/
|
|
493
|
+
export interface ResourceHookBinding {
|
|
494
|
+
/**
|
|
495
|
+
* Hooks to be invoked before the resource is created.
|
|
496
|
+
*/
|
|
497
|
+
beforeCreate?: Array<ResourceHookFunction | ResourceHook>;
|
|
498
|
+
/**
|
|
499
|
+
* Hooks to be invoked after the resource is created.
|
|
500
|
+
*/
|
|
501
|
+
afterCreate?: Array<ResourceHookFunction | ResourceHook>;
|
|
502
|
+
/**
|
|
503
|
+
* Hooks to be invoked before the resource is updated.
|
|
504
|
+
*/
|
|
505
|
+
beforeUpdate?: Array<ResourceHookFunction | ResourceHook>;
|
|
506
|
+
/**
|
|
507
|
+
* Hooks to be invoked after the resource is updated.
|
|
508
|
+
*/
|
|
509
|
+
afterUpdate?: Array<ResourceHookFunction | ResourceHook>;
|
|
510
|
+
/**
|
|
511
|
+
* Hooks to be invoked before the resource is deleted.
|
|
512
|
+
*
|
|
513
|
+
* Note that delete hooks require that destroy operations are run with `--run-program`. Unlike other hook types,
|
|
514
|
+
* this argument requires named {@link ResourceHook} instances, and does not accept anonymous
|
|
515
|
+
* {@link ResourceHookFunction}. This is because the engine needs to be able to identify a hook when a resource is
|
|
516
|
+
* deleted.
|
|
517
|
+
*/
|
|
518
|
+
beforeDelete?: Array<ResourceHook>;
|
|
519
|
+
/**
|
|
520
|
+
* Hooks to be invoked after the resource is deleted.
|
|
521
|
+
*
|
|
522
|
+
* Note that delete hooks require that destroy operations are run with `--run-program`. Unlike other hook types,
|
|
523
|
+
* this argument requires named {@link ResourceHook} instances, and does not accept anonymous
|
|
524
|
+
* {@link ResourceHookFunction}. This is because the engine needs to be able to identify a hook when a resource is
|
|
525
|
+
* deleted.
|
|
526
|
+
*/
|
|
527
|
+
afterDelete?: Array<ResourceHook>;
|
|
528
|
+
}
|
|
397
529
|
/**
|
|
398
530
|
* {@link ComponentResourceOptions} is a bag of optional settings that control a
|
|
399
531
|
* component resource's behavior.
|
package/resource.js
CHANGED
|
@@ -399,6 +399,27 @@ function collapseAliasToUrn(alias, defaultName, defaultType, defaultParent) {
|
|
|
399
399
|
return createUrn(name, type, parent, project, stack);
|
|
400
400
|
});
|
|
401
401
|
}
|
|
402
|
+
/**
|
|
403
|
+
* ResourceHook is a named hook that can be registered as a resource hook.
|
|
404
|
+
*/
|
|
405
|
+
class ResourceHook {
|
|
406
|
+
constructor(name, callback, opts) {
|
|
407
|
+
/**
|
|
408
|
+
* A private field to help with RTTI that works in SxS scenarios.
|
|
409
|
+
*
|
|
410
|
+
* @internal
|
|
411
|
+
*/
|
|
412
|
+
this.__pulumiResourceHook = true;
|
|
413
|
+
this.name = name;
|
|
414
|
+
this.callback = callback;
|
|
415
|
+
this.opts = opts;
|
|
416
|
+
this.__registered = resource_1.registerResourceHook(this);
|
|
417
|
+
}
|
|
418
|
+
static isInstance(obj) {
|
|
419
|
+
return utils.isInstance(obj, "__pulumiResourceHook");
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
exports.ResourceHook = ResourceHook;
|
|
402
423
|
/**
|
|
403
424
|
* {@link CustomResource} is a resource whose create, read, update, and delete
|
|
404
425
|
* (CRUD) operations are managed by performing external operations on some
|
|
@@ -622,8 +643,31 @@ function mergeOptions(opts1, opts2) {
|
|
|
622
643
|
dest[key] = merge(destVal, sourceVal, /*alwaysCreateArray:*/ true);
|
|
623
644
|
continue;
|
|
624
645
|
}
|
|
646
|
+
if (key === "hooks") {
|
|
647
|
+
continue;
|
|
648
|
+
}
|
|
625
649
|
dest[key] = merge(destVal, sourceVal, /*alwaysCreateArray:*/ false);
|
|
626
650
|
}
|
|
651
|
+
if (dest.hooks || source.hooks) {
|
|
652
|
+
const hookTypes = [
|
|
653
|
+
"beforeCreate",
|
|
654
|
+
"afterCreate",
|
|
655
|
+
"beforeUpdate",
|
|
656
|
+
"afterUpdate",
|
|
657
|
+
"beforeDelete",
|
|
658
|
+
"afterDelete",
|
|
659
|
+
];
|
|
660
|
+
for (const hookType of hookTypes) {
|
|
661
|
+
const destHooks = dest?.hooks?.[hookType];
|
|
662
|
+
const sourceHooks = source?.hooks?.[hookType];
|
|
663
|
+
if (destHooks || sourceHooks) {
|
|
664
|
+
if (!dest.hooks) {
|
|
665
|
+
dest.hooks = {};
|
|
666
|
+
}
|
|
667
|
+
dest.hooks[hookType] = merge(destHooks, sourceHooks, /*alwaysCreateArray:*/ false);
|
|
668
|
+
}
|
|
669
|
+
}
|
|
670
|
+
}
|
|
627
671
|
// Now, if we are left with a .providers that is just a single key/value pair, then
|
|
628
672
|
// collapse that down into .provider form.
|
|
629
673
|
normalizeProviders(dest);
|