automated-aws

module
v0.0.0-...-83b2c2a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 28, 2023 License: GPL-3.0

README

Automated-AWS


License Issues Pull Requests Watchers Stars

Automated-AWS is an open-source Go package that automates provisioning/management of AWS resources (ec2, elbv2, and autoscaling). Cobra is used for the CLI.


Setting Up The Development Environment

To set up the development environment for the project, follow the steps below:

Prerequisites

Make sure you have the following prerequisites installed on your system:
  • Go (version 1.16 or later)

  • Cobra

    go get -u github.com/spf13/cobra
    
    
  • Docker (optional, if you want to run the application in a container)

  • AWS CLI (to interact with AWS services)

Clone the Repository

Clone the project repository from the GitHub repository:
git clone https://github.com/AbhiAlest/Automated-AWS.git

Install Dependencies

Change to the project directory:

cd Automated-AWS

Install the Go dependencies:

go mod download

Configure AWS Credentials (if applicable)

If your code interacts with AWS services and you want to run it locally, configure the AWS CLI with your credentials:
aws configure

Build and Run

To build and run the project, use the following command:
go run main.go

If you want to run the application in a Docker container, build the Docker image first:

docker build -t myapp .

Then, run the Docker container:

docker run -p 8080:8080 myapp

Running Tests

To run the tests, use the following command:
go test ./...

Running via Command Line Interface (CLI)

Use the command line for desired actions. Here are a few examples to get started:
# Create VPC
go run main.go -create-vpc

# Create S3 bucket
go run main.go -create-s3-bucket

# Launch 2 EC2 instances
go run main.go -launch-ec2-instances=2

# Create ALB
go run main.go -create-alb

Development Workflow

  1. Make the necessary code changes in the project files.
  2. Run the application or tests to verify your changes.
  3. Commit the changes to your local Git repository.
  4. Push the changes to the remote Git repository (if applicable).

Additional Configuration

Additional configuration for this project may apply. If you need to configure any project-specific settings, refer to the config package or the relevant configuration files in the project. Please note that the above instructions are a general guideline and may need to be adjusted based on your specific project requirements.



That's it! You now have your development environment set up for the project. Happy coding!


File Structure

Rough overview of the file structure for this project (changes may have occurred).

Automated-AWS
├── .github
│   └── CODEOWNERS
│   └── CONTRIBUTING.md
├── cmd
│   └── main.go
├── config
│   └── aws.go
│   └── config.yaml
├── mocks
|   ├── elbv2_mock.go
├── pkg
│   ├── autoscaling
│   │   └── autoscaling.go
│   ├── ec2
│   │   └── ec2.go
│   └── elbv2
│       └── elbv2.go
├── test
│   ├── autoscaling
│   │   └── autoscaling_test.go
│   ├── ec2
│   │   └── ec2_test.go
│   └── elbv2
│       └── elbv2_test.go
├── Dockerfile
├── README.md
└── LICENSE


Directories

Path Synopsis
pkg
ec2

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL