Skip to content

Instantly share code, notes, and snippets.

View sample-event-source.yaml
MyFunction:
Type: AWS::Serverless::Function
Properties:
Runtime: python3.8
CodeUri: ./src/my_function
Handler: index.lambda_handler
Events:
TableChanges:
Type: EventBridgeRule
Properties:
View dynamodb-eventbus-stream-processor.py
from datetime import datetime
import json
import os
import boto3
EVENT_BUS = os.getenv("EVENT_BUS")
events_client = boto3.client("events")
@brysontyrrell
brysontyrrell / ami-lookup.yaml
Created Nov 30, 2019
A CloudFormation custom resource to perform the lookup of the latest NAT instance AMI ID for the region.
View ami-lookup.yaml
AWSTemplateFormatVersion: 2010-09-09
Transform: AWS::Serverless-2016-10-31
Resources:
NatInstaceAmi:
Type: AWS::CloudFormation::CustomResource
Properties:
ServiceToken: !GetAtt NatInstanceAmiLookup.Arn
@brysontyrrell
brysontyrrell / jamfpro-template.yaml
Last active Mar 26, 2022
Deploy Jamf Pro using Fargate and Aurora Serverless (non production)
View jamfpro-template.yaml
AWSTemplateFormatVersion: 2010-09-09
Parameters:
AvailabilityZone1:
Type: String
Default: a
AvailabilityZone2:
Type: String
@brysontyrrell
brysontyrrell / jamfpro-docker-compose.yml
Created Nov 25, 2019
A Docker Compose file for launching Jamf Pro
View jamfpro-docker-compose.yml
version: "3"
services:
mysql:
image: "mysql:5.7"
networks:
- jamfnet
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: "jamfsw03"
View build_jamfpro_docker_version.sh
# Run from a directory that contains your ROOT.war file.
# Change VERSION to that of the ROOT.war being deployed
VERSION=10.17.0
docker build . -t jamfpro:${VERSION} -f - <<EOF
FROM jamfdevops/jamfpro:0.0.10
ADD ROOT.war /data/
EOF
@brysontyrrell
brysontyrrell / create_jss_account.py
Last active Mar 15, 2018
Create a JSS admin account
View create_jss_account.py
import getpass
import sys
import xml.etree.ElementTree as Et
import requests
try:
NEW_USERNAME = sys.argv[1]
except IndexError:
print('No username provided!')
@brysontyrrell
brysontyrrell / cipher.py
Last active Jan 28, 2022
AES256 encryption using pyca/cryptography
View cipher.py
import base64
import os
from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes
from cryptography.hazmat.backends import default_backend
class AESCipher(object):
block_size = algorithms.AES.block_size / 8
@brysontyrrell
brysontyrrell / JamfUAPIAuthToken.py
Created Oct 19, 2016
Generate a token for the Jamf Universal API (UAPI) that will auto-refresh as needed.
View JamfUAPIAuthToken.py
import datetime
import logging
import requests
import urlparse
class JamfUAPIAuthToken(object):
def __init__(self, jamf_url, username, password):
"""
:param jamf_url: Jamf Pro URL
:type jamf_url: str
View Enabled_Disabled_Policies.py
import base64
import getpass
import sys
import xml.etree.ElementTree as Et
import urllib
import urllib2
reload(sys)
sys.setdefaultencoding('utf-8')