Skip to content

Command-line interface that automates provisioning and management of AWS resources.

License

Notifications You must be signed in to change notification settings

AbhiAlest/Automated-AWS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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


About

Command-line interface that automates provisioning and management of AWS resources.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published