-
Dado un repository privado hosteado en GitLab.
-
Dado un codigo suministrado https://github.com/roxsross/desafio-python
-
Dado un tag creado para un commit específico:
a. Se debe crear una imágen Docker
#!/bin/bash | |
trap ctrl_c INT | |
function ctrl_c() { | |
echo "**************************************** Bye Bye ****************************************" | |
for pid in ${PIDS[@]} | |
do | |
kill -TERM $pid | |
done | |
rm $NAMED_PIPE | |
rm $sync |
Dado un repository privado hosteado en GitLab.
Dado un codigo suministrado https://github.com/roxsross/desafio-python
Dado un tag creado para un commit específico:
a. Se debe crear una imágen Docker
FROM ubuntu | |
RUN apt-get update | |
RUN apt-get -qqy install git |
version: '3' | |
services: | |
jenkins: | |
image: jenkins/jenkins:lts | |
privileged: true | |
user: root | |
ports: | |
- 8081:8080 | |
- 50000:50000 | |
container_name: jenkins |
import boto3 | |
import base64 | |
from botocore.exceptions import ClientError | |
import json | |
def get_secret(secret_name: str, region_name: str = 'us-east-1'): | |
session = boto3.session.Session() |
[ | |
{ | |
"name": "Whatever Happened To Baby Jane?", | |
"year": 1962, | |
"runtime": 134, | |
"categories": [ | |
"drama", | |
"horror", | |
"thriller" | |
], |
1- Diseñar un script en bash, python o golang que permita detener e iniciar una instancia EC2 en us-east-1
2- Diseñar un script en bash, python o golang que permita clonar un repo de github, empaquetarlo en .zip ó tar.gz y luego subirlo a un bucket s3
3- Diseñar un script en bash, python o golang que permita restaurar un backup de un bucket s3 en un repositorio github
Entrega:
#!/bin/bash | |
#Description: a collection of bash functions that leverage the AWS CLI | |
getidfromip () { id=$(aws ec2 describe-instances --filter Name=private-ip-address,Values="$1" --query "Reservations[].Instances[].InstanceId" --output text);echo $id; } | |
getnamefromid () { name=$(aws ec2 describe-instances --filter Name=instance-id,Values="$1" --query 'Reservations[].Instances[].Tags[?Key==`Name`].Value' --output text);echo $name; } | |
getnamefromip () { name=$(aws ec2 describe-instances --filter Name=private-ip-address,Values="$1" --query 'Reservations[].Instances[].Tags[?Key==`Name`].Value' --output text);echo $name; } | |
getidfromname () { id=$(aws ec2 describe-instances --filter Name=tag:Name,Values="$1" --query "Reservations[].Instances[].InstanceId" --output text);echo $id; } |
Debido a las necesidades y tecnologías que utilizamos creemos que hoy en día es necesario tener un conocimiento amplio de todos los componentes que intervienen en el desarrollo de un proyecto. Por este motivo, con este challenge, buscamos que todos los miembros del equipo de seguridad tengan un conocimiento básico de Networking, Infraestructura, Desarrollo y Base de Datos.
El equipo de seguridad necesita tener un sistema para obtener IPs maliciosas con el fin de bloquear el tráfico proveniente de esas IPs. El objetivo de este challenge es desarrollar una aplicación que nos permita obtener un listado de IPs de redes Tor (https://www.torproject.org/) desde distintas fuentes externas y presentarlas de manera unificada. Adicionalmente esta aplicación debe ofrecer la posibilidad de indicarle IPs de redes que NO queremos que aparezcan en el listado. El objetivo concreto es desarrollar una API REST que tenga los métodos detallados a continuación: