Transform Json Input
function input
Use a Pass type Step Function to merge a script under the field name "transformScript into the input JSON.
"Inject Update Status and Updated": {
"Type": "Pass",
def out = new StringWriter() | |
def xml = new groovy.xml.MarkupBuilder(out) | |
// MarkupBuilder gives us an instance of MarkupBuilderHelper named 'mkp' | |
// MarkupBuilderHelper has several helpful methods | |
xml.mkp.xmlDeclaration(version: "1.0", encoding: "utf-8") | |
xml.example { | |
a { | |
b { | |
mkp.comment('a comment') |
def cmd = ['sh', '-c', 'ls -l | sort'] | |
def p = cmd.execute() | |
println p.text | |
// Java would be something like | |
// String[] cmd = { "sh", "-c", "ls -l | sort" }; | |
// Process p = Runtime.getRuntime().exec(cmd); | |
// ... |
// The example is in Groovy but this probably works for any kind of logging for an app/test running in IDEA | |
// The important part is the template: "ComparisonFailure\nexpected:<{?}> but was:<{?}>" | |
// This works for multi-line values for each '?', which is why being able to use in-ide diff is so nice | |
def expected = ... | |
def actual = ... | |
// do your custom comparison, then if fails throw: | |
String msg = "ComparisonFailure\nexpected:<{${expected}}> but was:<{${actual}}>" |
// I made one of my @Configuration classes extend org.springframework.beans.factory.config.BeanPostProcessor | |
// There probably is a better way to intecept the ContentNegotiationManager when it is being updated but I couldn't figure out how | |
// This solved the problems I had better than using the {id:.+} regular expression in path variables idea I've seen on other fixes. | |
@Override | |
Object postProcessBeforeInitialization(Object bean, String name) throws BeansException { | |
if (bean instanceof RequestMappingHandlerMapping) { | |
// handle when dots in url path |
package com.clario.aws | |
import com.amazonaws.DefaultRequest | |
import com.amazonaws.SignableRequest | |
import com.amazonaws.auth.AWS4Signer | |
import com.amazonaws.auth.AWSCredentialsProvider | |
import com.amazonaws.http.HttpMethodName | |
import groovy.util.logging.Slf4j | |
import org.apache.http.client.utils.URLEncodedUtils | |
import org.springframework.http.HttpHeaders |
Midi Note | Note | Name | |
---|---|---|---|
85 | C#5 | Bongo Low - palm | |
84 | C5 | Bongo Low - closed slap | |
82 | A#4 | Shaker | |
75 | D#4 | Clave | |
59 | B2 | Splash2 | |
57 | A2 | Hand Crash 2 | |
56 | G#2 | Cowbell | |
55 | G2 | Splash 1 | |
54 | F#2 | Tambourine |
// Configure Google Cloud library with JSON credentials in an environment variable | |
const | |
os = require('os'), | |
fs = require('fs') | |
; | |
exports.configureGoogleCloud = function (isWarnOnly) { | |
// if standard GOOGLE_APPLICATION_CREDENTIALS is set then use that | |
if (!process.env['GOOGLE_APPLICATION_CREDENTIALS']) { | |
# Pull latest static opa executable image | |
FROM openpolicyagent/opa:latest-static AS opa-stage | |
# Start lambda image | |
FROM public.ecr.aws/lambda/java:11 | |
ARG OPA_INSTALL_PATH=${LAMBDA_TASK_ROOT}/opa | |
ARG OPA_EXECUTABLE_PATH=${OPA_INSTALL_PATH}/opa | |
COPY --from=opa-stage /opa ${OPA_INSTALL_PATH}/ |