GithubHelp home page GithubHelp logo

xebialabs-community / xld-elasticbeanstalk-plugin Goto Github PK

View Code? Open in Web Editor NEW
0.0 24.0 2.0 885 KB

XL Deploy plugin for AWS ElasticBeanStalk

License: MIT License

Java 10.09% Python 89.91%
aws elasticbeanstalk xldeploy python

xld-elasticbeanstalk-plugin's Introduction

XLD AWS Elastic Beanstalk Plugin

License: MIT Build Status Codacy Badge Github All Releases

Overview

This plugin enables AWS Elastic Beanstalk deployments from XL Deploy.

Requirements

  • XL Deploy Server 7+
  • XL Deploy AWS plugin

Installation

The plugin JAR file can be downloaded from releases. Copy the downloaded JAR into the SERVER_HOME/plugins directory of XL Deploy.

Usage

ElasticBeanstalk Application Environment

Define the information about the ElasticBeanstalk application environment, eb.ApplicationEnvironment, as a child of an aws.Cloud configuration item under the Infrastructure node.

ElasticBeanstalkApplicationEnvironmentConfigurationItem

ElasticBeanstalk Application Bundle

Define the ElasticBeanstalk application bundle, eb.AppicationBundle in a udm.DeploymentPackage.

ElasticBeanstalkApplicationBundleConfigurationItem

Development

Setting up AWS credentials

Create an itest-conf.json file in this projects root folder defining the following content with that for your AWS account.

[ {
    "name": "aws_cloud",
    "accesskey": "xxxxxxxxx",
    "accessSecret": "xxxxxxxxx"
  }
]

The plugin's Jython Tests will use this file to connect to the AWS account and run the integration tests.

Setting up a local Jython interpreter and dependent librariers to run tests

Install Jython on your local system by using the Jython 2.7.1 Installer

Use pip located in the Jython installation's bin directory to install the boto3 library.

pip install boto3

Setting up Gradle for Jython tests

Create an gradle.properties in this project's root folder defining the following content making adjustments for your Jython installation.

jythonInterpreter=/Users/ravan/labs/software/jython-2.7.1/bin/jython

Your Jython tests should be written with the Python 2 Unit testing framework and the file name should match the pattern *_test.py

Running Tests from Gradle

From the project root,

  • Run all tests with ./gradlew clean build itest

  • Run a single test with ./gradlew runTest -DtestName=itests.connection_test.CheckConnectionTest

    The testName parameter is the absolute reference to the test class.

Running Tests from IDE

You can also run and debug tests from Intellij using a python test configuration similar to the one below.

IntellijTest

References

  1. https://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_Operations.html

xld-elasticbeanstalk-plugin's People

Contributors

jdewinne avatar ndebuhr avatar xebialabs-se avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.