Code Monkey home page Code Monkey logo

sdm-pack-cloudfoundry's Introduction

@atomist/sdm-pack-cloudfoundry

atomist sdm goals npm version

Atomist software delivery machine (SDM) extension pack for an Atomist SDM to deploy to Cloud Foundry. These capabilities will work for both open source and Pivotal Cloud Foundry.

See the Atomist documentation for more information on what SDMs are and what they can do for you using the Atomist API for software.

Usage

Install the dependency in your SDM project.

$ npm install @atomist/sdm-pack-cloudfoundry

Then use its exported method to add the functionality to your SDM in your machine definition.

import {
    SoftwareDeliveryMachine,
    SoftwareDeliveryMachineConfiguration,
} from "@atomist/sdm";
import {
    createSoftwareDeliveryMachine,
} from "@atomist/sdm-core";
import {
    CloudFoundrySupport,
} from "@atomist/sdm-pack-cloudfoundry";

export function machine(configuration: SoftwareDeliveryMachineConfiguration): SoftwareDeliveryMachine {
    const sdm = createSoftwareDeliveryMachine({
        name: "My Software Delivery Machine",
        configuration,
    });
    sdm.addExtensionPacks(SeedSupport);
    sdm.addDeployRules(
        deploy.when(IsMaven)
            .deployTo(ProductionDeploymentGoal, ProductionEndpointGoal, ProductionUndeploymentGoal)
            .using({
                deployer: new CloudFoundryBlueGreenDeployer(configuration.sdm.projectLoader),
                targeter: () => new EnvironmentCloudFoundryTarget("production"),
            }),
    );
    return sdm;
};

Finally, add the required configuration values to your client configuration.

{
  "sdm": {
    "cloudfoundry": {
      "user": "[email protected]",
      "password": "cFpAsSw0rD",
      "org": "cf-organiation",
      "spaces": {
        "staging": "cf-staging-space",
        "production": "cf-production-space"
      }
    }
  }
}

Support

General support questions should be discussed in the #support channel in the Atomist community Slack workspace.

If you find a problem, please create an issue.

Development

You will need to install Node.js to build and test this project.

Build and test

Install dependencies.

$ npm install

Use the build package script to compile, test, lint, and build the documentation.

$ npm run build

Release

Releases are handled via the Atomist SDM. Just press the 'Approve' button in the Atomist dashboard or Slack.


Created by Atomist. Need Help? Join our Slack workspace.

sdm-pack-cloudfoundry's People

Contributors

atomist-bot avatar cdupuis avatar lievendoclo avatar

Watchers

James Cloos 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.