Skip to content

Instantly share code, notes, and snippets.

View vspedr's full-sized avatar

Victor vspedr

  • Campinas, Brazil
View GitHub Profile
@vspedr
vspedr / slackNotify.js
Created January 25, 2017 19:16 — forked from delemach/slackNotify.js
Parse SNS notification from Elastic Beanstalk and publish to Slack channel
var http = require('https');
var querystring = require('querystring');
// set the post request options
var reqOptions = {
hostname: 'hooks.slack.com',
port: 443,
path: '/services/YOUR/SLACK/HOOK_HERE',
method: 'POST'
};
@vspedr
vspedr / AWS_deploy.sh
Last active March 9, 2017 11:05 — forked from PuKoren/AWS_deploy.sh
Travis script used to deploy on AWS ElasticBeanstalk (inspired from Codeship's one)
#!/bin/bash
# v0.0.2
# AWS Deploy Script for Travis
# Remember to add the env var in the travis configuration
# in order to work, this scripts needs:
# AWS_ACCESS_KEY_ID: user ID
# AWS_SECRET_ACCESS_KEY: user secret
# APP_NAME: EBS application name
# ENV_NAME: EBS application env
# S3_BUCKET: name of the S3 bucket to store deployment archive
// based on: https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-node-node-getstarted#create-a-device-identity
const iothub = require('azure-iothub');
const connectionString = '{iothub connection string}';
const registry = iothub.Registry.fromConnectionString(connectionString);
const device = {
deviceId: 'myFirstNodeDevice'
};
registry.create(device, function(err, deviceInfo, res) {
// based on: https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-node-node-getstarted#receive-device-to-cloud-messages
const EventHubClient = require('azure-event-hubs').Client;
const connectionString = '{iothub connection string}';
const printError = (err) => {
console.err(err.message);
}
const printMessage = (message) => {
@vspedr
vspedr / learning.md
Last active January 23, 2018 17:26 — forked from sibelius/learning.md
Learning Path React Native

Basics

  • Learn how to start a new react native project
  • Run it on ios simulator, on android emulator, on a real iPhone device and on a real Android device, with and without debugging enabled.
  • Learn how to upgrade a react native project
  • Learn how to add a package to the project
  • Learn how to add a package that has a native dependency (https://github.com/airbnb/react-native-maps, https://github.com/evollu/react-native-fcm) - DO NOT USE COCOAPODS
  • Learn how to use fetch to get data from your backend

Learn Navigation

@vspedr
vspedr / grafana.md
Last active January 30, 2018 17:39
Grafana + Graphite + statsd + docker getting started

This provides a minimal setup for running grafana, graphite and statsd in docker containers for experimenting. Not suitable for production environment as additional security configuration is required.

Assuming you have docker installed and ready for use:

  1. Run official grafana image:
docker run -d -p 3000:3000 grafana/grafana
@vspedr
vspedr / keycloak-docker.txt
Last active March 1, 2018 18:53
Keycloak docker themes
docker run -e KEYCLOAK_USER=<USERNAME> -e KEYCLOAK_PASSWORD=<PASSWORD> -e DB_VENDOR=H2 -p 8080:8080 jboss/keycloak
docker cp <CONTAINERID>:/opt/jboss/keycloak/themes ~/keycloak-themes
@vspedr
vspedr / logger.js
Last active May 10, 2018 21:09
winston + morgan logging middleware
import config from '../config';
import winston from 'winston';
const logger = new (winston.Logger)({
level: config.log.level,
transports: [
new winston.transports.Console({
colorize: true,
timestamp: true,
})
Using sudo is a great way to make things happen, but most people neglect to understand everything that happens when sudo is used. Particularly with npm, and npm modules, using sudo can result in things being performed by root which the user doesn't want to have be performed by root, such as file creation or use of protected ports. Basically, the "use sudo" advice falls flat on its face (perhaps after stumbling and staring into the sun for a moment) where nvm/npm/node is concerned. – bschlueter Aug 1 '16 at 22:43
crontab -l | { cat; echo "0 11 * * * export DISPLAY=:0 && google-chrome https://google.com"; } | crontab -