Skip to content

Instantly share code, notes, and snippets.

Andro Babu rambabusaravanan

View GitHub Profile
@rambabusaravanan
rambabusaravanan / serverless.s3-website.yml
Last active Jan 29, 2019
Serverless Framework CloudFormation Templates
View serverless.s3-website.yml
resources:
Resources:
TestOneBucket:
Type: AWS::S3::Bucket
Properties:
BucketName: ${self:service}-${self:provider.region}-test-one
CorsConfiguration:
CorsRules:
- AllowedOrigins: ['*']
AllowedHeaders: ['*']
@rambabusaravanan
rambabusaravanan / directory-index.js
Last active Dec 6, 2018
get S3 Directory Index as JSON
View directory-index.js
// source: https://gist.github.com/chinchang/8106a82c56ad007e27b1#file-xmltojson-js
function xmlToJson(xml) {
if (typeof xml === 'string') {
parser = new DOMParser();
xml = parser.parseFromString(xml, 'text/xml');
}
// Create the return object
var obj = {};
@rambabusaravanan
rambabusaravanan / schema-validation.js
Created Jun 15, 2018
jsonschema validation with custom display name
View schema-validation.js
const validate = require('jsonschema').validate;
let schema = {
"type": "object",
"properties": {
"x": {
"display": "X Coordinate", // This is some extra field that we give for our purpose
"type": "number",
"required": true // error says like 'is required'
},
View utils.sh
# Schema Spy
java -jar /usr/local/bin/schemaSpy_5.0.0.jar -dp /home/androbabu/softwares/jar/mysql-connector-java-5.1.28.jar -t mysql -host localhost -db $1 -u root -p password -o .schema
# Git Tree Log
git log --graph --all --pretty=format:"%C(auto)%h%d %s %C(dim)(%an) %aD"
git config --global alias.tree 'log --graph --all --pretty=format:"%C(auto)%h%d %s %C(dim)(%an) %aD"'
git tree
View readme.md

The various approach followed for upload service

@rambabusaravanan
rambabusaravanan / detect-react-object.js
Created Mar 12, 2018
Detect React Objects - Components and Elements
View detect-react-object.js
function isClassComponent(component) {
return typeof component === 'function'
&& !!component.prototype.isReactComponent
}
function isFunctionComponent(component) {
return typeof component === 'function'
// && !!String(component).includes('return React.createElement') // may fails
&& React.isValidElement(Component())
}
@rambabusaravanan
rambabusaravanan / image-bucket.hosting-redirection-rules.xml
Created Jan 14, 2018
S3 Bucket image on-demand compression and conversion using AWS Lambda
View image-bucket.hosting-redirection-rules.xml
<RoutingRules>
<RoutingRule>
<Condition>
<KeyPrefixEquals/>
<HttpErrorCodeReturnedEquals>404</HttpErrorCodeReturnedEquals>
</Condition>
<Redirect>
<Protocol>https</Protocol>
<HostName>xxx1x11xxx.execute-api.us-east-1.amazonaws.com</HostName>
<ReplaceKeyPrefixWith>prod/convert?key=</ReplaceKeyPrefixWith>
@rambabusaravanan
rambabusaravanan / README.md
Last active Feb 11, 2019
GitLab CI Configuration YAML
View README.md

Firebase Deployment

Step 1: Get Token

Generate the firebase token from your terminal using the command $ firebase login:ci

Waiting for authentication...

✔ Success! Use this token to login on a CI server:

1/VXXXXXXX--YOUR-FIREBASE-CI-TOKEN--XXXXXh92o

@rambabusaravanan
rambabusaravanan / client.py
Created Nov 13, 2017
Simple TCP Streaming Server Client in Python
View client.py
# Streaming Client
import socket
HOST = 'localhost'
PORT = 50007
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
while True:
@rambabusaravanan
rambabusaravanan / jailuser
Created Oct 2, 2017
Chroot Jail for SSH / SFTP User in Ubuntu and Debian
View jailuser
#!/bin/bash
D=/home/www-sftp
U=$1
if [ "$EUID" -ne 0 ]; then
echo "Requires root permission .."
echo "Usage: 'sudo $0 newusername'"
exit 1
fi
You can’t perform that action at this time.