Skip to content

Instantly share code, notes, and snippets.

View BerndWessels's full-sized avatar

Bernd Wessels BerndWessels

View GitHub Profile
@BerndWessels
BerndWessels / index.js
Last active May 22, 2019 01:57
BFF pulumi appsync 2
const graphQLDataSourceName = "graphQLDataSource_manual";
const graphQLResolvers = [];
glob.sync('./graphql/resolvers/**/*.js').forEach(function (file) {
const resolverMatches = findMatches(/([a-zA-Z]+)\./g, file);
const resolverObject = require(path.resolve(file));
const graphQLResolver = new aws.appsync.Resolver(`graphQLResolver_${resolverMatches.join('_')}`, {
apiId: graphQLApi.id,
dataSource: graphQLDataSourceName,
field: resolverMatches[1],
@BerndWessels
BerndWessels / schema.graphql
Created May 22, 2019 01:49
BFF pulumi schema
input CreatePetInput {
type: PetType
price: Float!
}
input DeletePetInput {
id: ID!
}
type Mutation {
@BerndWessels
BerndWessels / index.js
Created May 22, 2019 01:42
BFF pulumi medium 2
"use strict";
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// node dependencies
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
const fs = require('fs');
const glob = require('glob');
const path = require('path');
// Add the ability to read .graphql files as strings.
@BerndWessels
BerndWessels / index.js
Created May 22, 2019 01:41
BFF pulumi appsync 1
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// AppSync
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Read the GraphQL Schema as a string.
const graphQLSchema = require('./schema.graphql');
const graphQLApiCloudWatchLogsRole = new aws.iam.Role("graphQLApiCloudWatchLogsRole", {
assumeRolePolicy: JSON.stringify({
"Version": "2012-10-17",
@BerndWessels
BerndWessels / index.js
Created May 22, 2019 01:35
BFF pulumi aurora serverless
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Aurora Serverless
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
const dbCluster = new aws.rds.Cluster("dbCluster", {
applyImmediately: true,
clusterIdentifier: "mycluster",
engineMode: "serverless",
iamDatabaseAuthenticationEnabled: false,
port: 3306,
@BerndWessels
BerndWessels / index.js
Created May 21, 2019 23:04
BFF pulumi cognito
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Cognito
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
const userPool = new aws.cognito.UserPool("userPool", {
autoVerifiedAttributes: ["email"],
});
const userPoolClient = new aws.cognito.UserPoolClient("userPoolClient", {
allowedOauthFlows: ["code"],
@BerndWessels
BerndWessels / aws.dart
Created March 4, 2019 21:03
Flutter AWS Cognito Federated Identities Login
import 'package:amazon_cognito_identity_dart/cognito.dart';
import 'package:amazon_cognito_identity_dart/sig_v4.dart';
import 'package:http/http.dart' as http;
class Credentials {
final CognitoCredentials _cognitoCredentials;
final String _token;
final String _authenticator;
Credentials(String identityPoolId, String userPoolId, String clientId, this._token, [this._authenticator])