Skip to content

Commit

Permalink
Merge pull request #1 from intuit/development
Browse files Browse the repository at this point in the history
initial commit of project
  • Loading branch information
zeeshanSD authored May 30, 2019
2 parents d08ba70 + 2af779f commit 60ff6a6
Show file tree
Hide file tree
Showing 268 changed files with 29,458 additions and 0 deletions.
13 changes: 13 additions & 0 deletions .gitIgnore
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
target
.classpath
.project
.settings
*.idea*
*.iml
*.MF
*.DS_Store
*.exec
*.log.*
*/*.log
*/*.log.*

32 changes: 32 additions & 0 deletions .github/CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
Open source projects are “living.” Contributions in the form of issues and pull requests are welcomed and encouraged. When you contribute, you explicitly say you are part of the community and abide by its Code of Conduct.

# The Code

At Intuit, we foster a kind, respectful, harassment-free cooperative community. Our open source community works to:

- Be kind and respectful;
- Act as a global community;
- Conduct ourselves professionally.

As members of this community, we will not tolerate behaviors including, but not limited to:

- Violent threats or language;
- Discriminatory or derogatory jokes or language;
- Public or private harassment of any kind;
- Other conduct considered inappropriate in a professional setting.

## Reporting Concerns

If you see someone violating the Code of Conduct please email [email protected]

## Scope

This code of conduct applies to:

All repos and communities for Intuit-managed projects, whether or not the text is included in a Intuit-managed project’s repository;

Individuals or teams representing projects in official capacity, such as via official social media channels or at in-person meetups.

## Attribution

This Code of Conduct is partly inspired by and based on those of Amazon, CocoaPods, GitHub, Microsoft, thoughtbot, and on the Contributor Covenant version 1.4.1.
11 changes: 11 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Contribution Guidelines

First of all, thanks for thinking of contributing to this project. :smile:

- Before sending a Pull Request, please make sure that you have had a discussion with the project admins.
- If a relevant issue already exists, discuss on the issue and make sure that the admins are okay with your approach
- If no relevant issue exists, open a new issue and discuss

Please proceed with a Pull Request only after the project admins or owners are okay with your approach. It'd be sad if your Pull Request (and your hard work) isn't accepted just because it isn't ideologically compatible.

- Send in your Pull Request(s) to the `develop` branch of this repository.
34 changes: 34 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: bug
assignees: ''

---

**Describe the bug**

<!-- A clear and concise description of what the bug is. -->

**To Reproduce**

<!-- Steps to reproduce the behavior: -->

**Expected behavior**

<!-- A clear and concise description of what you expected to happen. -->

**Screenshots**

<!-- If applicable, add screenshots to help explain your problem. -->

**Desktop (please complete the following information):**

- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

**Additional context**

<!-- Add any other context about the problem here. -->
24 changes: 24 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: enhancement
assignees: ''

---

**Is your feature request related to a problem? Please describe.**

<!-- A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] -->

**Describe the solution you'd like**

<!-- A clear and concise description of what you want to happen. -->

**Describe alternatives you've considered**

<!-- A clear and concise description of any alternative solutions or features you've considered. -->

**Additional context**

<!-- Add any other context or screenshots about the feature request here. -->
9 changes: 9 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# What Changed

# Why

Todo:

- [ ] Add tests
- [ ] Add docs
- [ ] Add yourself to contributors (run `yarn contributors:add`)
10 changes: 10 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
language: java
jdk:
- oraclejdk8
sudo: false
addons:
apt:
packages:
- oracle-java8-installer
install: true
script: mvn clean install
71 changes: 71 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
<div align="center">
<img width="300" height="100"
src="./cloudraider-logo.png">
</div>

<BR></BR>
[![Build Status](https://api.travis-ci.org/intuit/CloudRaider.svg?branch=develop)](https://travis-ci.org/intuit/CloudRaider)
[![Coverage Status](https://coveralls.io/repos/github/intuit/CloudRaider/badge.svg?branch=develop)](https://coveralls.io/github/intuit/Autumn?branch=develop)
[![Apache 2](http://img.shields.io/badge/license-Apache%202-brightgreen.svg)](http://www.apache.org/licenses/LICENSE-2.0)
## Introduction to Cloud-Raider

CloudRaider is a new Testing Framework to perform "Failure Mode Effect Analysis" (FMEA) testing in AWS. Cloud Raider also provide behavior driven testing approach via Cucumber framework. Cloud Raider provides a programmatic way to execute controlled failures, and also recover quickly back to normal. As it provides BDD way to write test cases, your FMEA test plan can itself become your test cases that can be executed as is.

<div align="center">
<img width="800" height="500"
src="./overview.png">
</div>

### Chaos Engineering ###
The Cucumber Client also provides functionality for running automated FMEA tests through the principles of Chaos Engineering.
To learn more, Please review [here](ChaosFeature.md)

### Getting Started ##

#### Install JDK ###

Install Java 8 JDK
JDK 8 Doc: http://docs.oracle.com/javase/8/docs/
JDK 8 Download: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Java Version: JDK 1.8.0_51
You can check this by typing in the command line: java –version (Java 8 is required for the build)
Set the JAVA_HOME system environment variable to /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
Add $JAVA_HOME to the PATH system environment variable
#### Install Maven ###

Maven 3.0.x is available by default in Mac OS X(3.0.3 in Lion,3.0.2 in Snow Leopard after Java for Mac OS X 10.6 update 4)
Verify this using mvn –version from the command line
To upgrade to Maven 3.2.1, do the following
Download the Maven 3.2.1 binary zip from http://maven.apache.org/download.html.
Unzip the downloaded file (apache-maven-3.2.1-bin.zip) to the desired location (e.g., /Applications).
Set the M2_HOME system environment variable to the installation directory (e.g., /Applications/apache-maven-3.2.1).
Prepend $M2_HOME/bin to the PATH system environment variable.
From the command line, verify that Maven has been installed correctly: mvn --version

#### AWS Credentials ###
A prerequisite to running any of the test cases above is, setting up AWS credentials. For details on how to setup credentials please follow http://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html
For testing with credentials profile files, update ~/.aws/credentials and ~/.aws/config files.
The validator uses the standard as credentials resolving chain. This means that we can use environment variables such as AWS_DEFAULT_PROFILE or command line such as aws.profile. see aws docs for all options and syntax


#### Test Client ###
Please use the example test module to get familiar about how to create and execute test cases

Credentials can be provided in config, Environment variables or the standard .aws/config file

##### Cucumber Example
Please review [here](cucumber-example/README.md)

##### Java Example
Please review [here](java-example/README.md)

#### Installing Cucumber Plugin ###
##### IntelliJ
https://www.jetbrains.com/help/idea/cucumber.html
##### Eclipse
https://shankargarg.wordpress.com/2016/05/15/integrating-eclipse-with-cucumber-natural-plugin/

##### AWS Simple System Manager
CloudRaider supports execution of commands on EC2 hosts via AWS Simple System Manager (SSM)
You can find more information about SSM [here](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html)

Loading

0 comments on commit 60ff6a6

Please sign in to comment.