Skip to content

Instantly share code, notes, and snippets.

View yeisoncruz16's full-sized avatar
๐Ÿ˜„
Work harder than you did yesterday

Yeison Cruz yeisoncruz16

๐Ÿ˜„
Work harder than you did yesterday
View GitHub Profile
@yeisoncruz16
yeisoncruz16 / apis.txt
Last active October 17, 2020 02:24
Free APIS to try new projects
https://futuramaapi.herokuapp.com/
https://thesimpsonsquoteapi.glitch.me/
https://api.chucknorris.io/
https://rickandmortyapi.com/
https://catfact.ninja/
@yeisoncruz16
yeisoncruz16 / remove-UNTAGGED-ecr.sh
Created October 22, 2020 00:45
Simple bash script
#!/bin/bash
ECR_REGION='us-east-1'
ECR_REPO='YOUR_REPO_GO_HERE'
IMAGES_TO_DELETE=$( aws ecr list-images --region $ECR_REGION --repository-name $ECR_REPO --filter "tagStatus=UNTAGGED" --query 'imageIds[*]' --output json )
if [ "$IMAGES_TO_DELETE" == [] ]
then
@yeisoncruz16
yeisoncruz16 / index.js
Created October 22, 2020 00:50
Simple NodeJs script to use Headless to increase Youtube views
const puppeteer = require('puppeteer');
(async () => {
let proxies = [
'',
'159.89.191.89:8080'
];
let urls = [
'',
@yeisoncruz16
yeisoncruz16 / requirements.txt
Created October 22, 2020 00:55
simple bash script to create python lambda layer
pymysql
@yeisoncruz16
yeisoncruz16 / query.py
Last active November 9, 2020 17:23
Simple DynamoDb query using Index and KeyConditionExpression
ERROR_HELP_STRINGS = {
# Common Errors
'InternalServerError': 'Internal Server Error, generally safe to retry with exponential back-off',
'ProvisionedThroughputExceededException': 'Request rate is too high. If you\'re using a custom retry strategy make sure to retry with exponential back-off.' +
'Otherwise consider reducing frequency of requests or increasing provisioned capacity for your table or secondary index',
'ResourceNotFoundException': 'One of the tables was not found, verify table exists before retrying',
'ServiceUnavailable': 'Had trouble reaching DynamoDB. generally safe to retry with exponential back-off',
'ThrottlingException': 'Request denied due to throttling, generally safe to retry with exponential back-off',
'UnrecognizedClientException': 'The request signature is incorrect most likely due to an invalid AWS access key ID or secret key, fix before retrying',
'ValidationException': 'The input fails to satisfy the con
@yeisoncruz16
yeisoncruz16 / Makefile
Last active November 18, 2020 21:16
Simple NodeJs lambda function to get SQS counts using CDK
deploy:
@cdk deploy --require-approval never
install:
@npm install
install_production:
@npm install --only=prod
watch:
@yeisoncruz16
yeisoncruz16 / secrets.js
Created November 18, 2020 21:19
NodeJs script to get Secrets from secrets manager
class Secrets {
constructor(awsClient) {
this.client = awsClient;
}
async getSecret(SecretId){
return new Promise((resolve) => {
this.client.getSecretValue({ SecretId }, (secretManagerError, data) => {
if (secretManagerError) {
if (secretManagerError.code === "DecryptionFailureException")
@yeisoncruz16
yeisoncruz16 / perform-folder-actions.sh
Created February 26, 2021 15:24
Perform action inside multiple folders
for D in *; do
if [ -d "${D}" ]; then
echo "Processing -> ${D}"
cd "${D}" && YOU_SPECIAL_COMMAND_GO_HERE && cd -
echo "----------------------------";
fi
done
@yeisoncruz16
yeisoncruz16 / increase-ec2.md
Last active March 3, 2021 14:12
Increase EC2 Volume Size
  • Log into your AWS account and navigate to EC2
  • View Instance Details looking for the Root Device and Block Devices to identify the volume you want to resize
  • Click the storage Device and select the EBS ID
  • While in the Volumes panel click Actions at the top of the page
  • Select Modify Volume to modify that particular volume
  • Enter the desired volume size in GBs and click modify, yes to confirm
  • SSH into your Instance
  • Run lsblk to list available blocks (volumes) and note the volume size / names
  • Run sudo growpart /dev/volumename 1 on the volume you want to resize, in our case it was sudo growpart /dev/xvda 1
@yeisoncruz16
yeisoncruz16 / lambda-get-ip.js
Created March 3, 2021 17:25
Simple lambda function to get Current IP
let response;
exports.lambdaHandler = async (event, context) => {
try {
const ret = await axios(url);
response = {
'statusCode': 200,
'body': JSON.stringify({
location: ret.data.trim()
})