Skip to main content

Webotron 20 is a tool to deploy static website to AWS.

Project description

Automating AWS with Python

Repository for the A Cloud Guru course Automating AWS with Python

01-webotron

Webotron is a script that will sync a local directory to an s3 bucket, and optionally configure Route 53 and cloudfront as well.

Features

Webotron currently has the following features:

  • List bucket
  • List contents of a bucket
  • Create and set up bucket
  • Sync directory tree to bucket
  • Set AWS profile with --profile=<profile_name>
  • Configure route 53 domain
  • Configure Cloud Front distribution with SSL

##Installation pip install webotron-20

##Using webotron-20

  • Setup AWS profile. .AWS/config

  • Use profile to use/access AWS resources.

  • PS C:\Users\Rishu> webotron Usage: webotron [OPTIONS] COMMAND [ARGS]...

    Webotron deploys websites to AWS.

    Options: --profile TEXT Use a given AWS profile. --help Show this message and exit.

    Commands: find-cert Find a certificate for given domain. list-bucket-objects List objects in s3 bucket. list-buckets List all s3 buckets. setup-bucket Create and configure s3 bucket for Static Website... setup-cdn To Setup a cloud frot for given domain and bucket. setup-domain Configure DOMAIN to point to BUCKET. sync Sync contents from Path to Bucket.

    • Examples PS C:\Users\Rishu> webotron --profile=pythonAutomation list-buckets s3.Bucket(name='kittentest.techenvision.net') PS C:\Users\Rishu> webotron --profile=pythonAutomation list-bucket-objects kittentest.techenvision.net s3.ObjectSummary(bucket_name='kittentest.techenvision.net', key='css/main.css') s3.ObjectSummary(bucket_name='kittentest.techenvision.net', key='images/Balinese-kitten1.jpg') s3.ObjectSummary(bucket_name='kittentest.techenvision.net', key='images/Maine_coon_kitten_roarie.jpg') s3.ObjectSummary(bucket_name='kittentest.techenvision.net', key='images/SFSPCA_Kitten.jpg') s3.ObjectSummary(bucket_name='kittentest.techenvision.net', key='index.html')

      PS C:\Users\Rishu> webotron --profile=pythonAutomation sync "D:\Tech\Automate AWS with Python\code\automating-aws-with-python\01-webotron\kitten_web" kittentest.techenvision.net File has been successfully added : css/main.css File has been successfully added : images/Balinese-kitten1.jpg File has been successfully added : images/Maine_coon_kitten_roarie.jpg File has been successfully added : images/SFSPCA_Kitten.jpg File has been successfully added : index.html File has been successfully deleted : webotron.py File has been successfully deleted : certificate.py File has been successfully deleted : cdn.py File has been successfully deleted : domain.py File has been successfully deleted : init.py File has been successfully deleted : util.py File has been successfully deleted : bucket.py Sync is successful. Your bucket URL is: http://kittentest.techenvision.net.s3-website.us-east-2.amazonaws.com

      PS C:\Users\Rishu> webotron --profile=pythonAutomation find-cert kittentest.techenvision.net {'CertificateArn': 'arn:aws:acm:us-east-1:637555073356:certificate/56b961ea-f789-42a1-97fa-8328ccaa4a77', 'DomainName': 'techenvision.net'}

      PS C:\Users\Rishu> webotron --profile=pythonAutomation setup-cdn kittentest.techenvision.net kittentest.techenvision.net Distribution already exists. Creating Alias Record. Domain configured: https://kittentest.techenvision.net PS C:\Users\Rishu>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for webotron-20, version 0.4
Filename, size File type Python version Upload date Hashes
Filename, size webotron_20-0.4-py3-none-any.whl (11.1 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size webotron-20-0.4.tar.gz (9.9 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page