Skip to content

Instantly share code, notes, and snippets.

@kevinhooke
kevinhooke / gist:51c028c7e7f464bb678f77b62bb93768
Created October 6, 2021 18:15
AWS CloudFormation example for ECS TaskDef
{
"Description": "Example ECS TaskDef",
"Parameters": {
"Param1": {
"Description": "Example param 1",
"Type": "String"
}
},
"Resources": {
"ECSTaskExampleExecutionRole": {
@kevinhooke
kevinhooke / gist:30ddf444e5fdbd24e283ab71e690f241
Created October 6, 2021 18:06
AWS CloudFormation template for ECS Cluster
{
"Description" : "Example ECS Cluster",
"Resources" : {
"ECSClusterExample1" : {
"Type" : "AWS::ECS::Cluster",
"Properties" : {
"ClusterName" : "ecs-cluster-example1"
}
}
}
@kevinhooke
kevinhooke / gist:28986702107be921974134e707b23baf
Created September 22, 2021 18:01
JavaScript sort array: strings vs integers
let arrayOfStrings = [ "bbb", "ccc", "aaa"];
arrayOfStrings.sort(); //sorts as strings in alphabetical ascending order by default
//arrayOfStrings = ["aaa", "bbb", "ccc"]
let arrayOfInts = [3, 4, 1];
//function passed to sort() returns > 0 if b comes after a, or if < 0 then a comes before b
arrayOfInts.sort( (a,b) => a - b );
//arrayOfInts = [1, 3, 4];
@kevinhooke
kevinhooke / gist:20a26c9ea1de04c4dd9767245b86d41d
Created September 22, 2021 17:36
JavaScript flatten an array of arrays
let arrays = [ [1,2], [2,3], [3,4] ];
let singleArray = [].concat.apply([], arrays);
//singleArray = [1, 2, 2, 3, 3, 4];
@kevinhooke
kevinhooke / gist:068302c33e029435f21b6af6f6da4439
Last active September 15, 2021 21:56
Filter aws cli resource lists for a specific single attribute value
# Lambda ARNs
aws lambda list-functions | jq '.Functions[].FunctionArn'
# multiple properies: outputs on separate lines
aws lambda list-functions | jq -r '.Functions[] | .FunctionArn, .FunctionName'
# multiple properties as arrays
aws lambda list-functions | jq -r '.Functions[] | [.FunctionArn, .FunctionName]'
# multiple properties as arrays, converted to csv
@kevinhooke
kevinhooke / gist:e39160c71c1c530a9761f5ddabdefe09
Created August 9, 2021 18:09
Kafka Connectors REST apis
# list alll connectors
GET connectorhost:8083/connectors
# status for one connector
GET connectorhost:8083/connectors/connector-name/status
# restart - does not restart failed tasks
POST connectorhost:8083/connectors/connector-name/restart
# restart specific task
@kevinhooke
kevinhooke / gist:f1626d66db8ec6ca1f37e794510834c7
Last active July 19, 2021 22:39
aws cli create DynamoDB table
Assuming DynamoDB local instance started with:
docker run -d -p 8000:8000 amazon/dynamodb-local -jar DynamoDBLocal.jar -sharedDb -dbPath .
# --endpoint-url http://localhost:8000 for local Docker DynamoDB instance
# table with hash key
% aws dynamodb create-table --table-name test --key-schema AttributeName=id,KeyType=HASH \
--attribute-definitions AttributeName=id,AttributeType=N \
--endpoint-url http://localhost:8000 \
#calls a function setting the value for 'this' within the function
functionName.call(someThisValue, otherParams);
- the first param passed is the value for 'this' when this is referenced within that function
See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/call
@kevinhooke
kevinhooke / gist:55d9b1342815a9b0bfb8d6ecc79bb12c
Created July 7, 2021 00:27
Run app on JVM in debug mode
java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8081 -jar YourApp.jar
let example = new Promise(
function(resolve, reject){
let success = do some async task;
if(success){
resolve();
}else{
reject();
}
};
);