Skip to content

IBM/cloudfoundry-deploy

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 

Repository files navigation

IBM Cloud Foundry Deploy

GitHub action for deploying applications to IBM Cloud Foundry using an App Manifest file.

Prerequisites

Setup

Parameters

DISCLAIMER: It's recommended that you use GitHub encrypted secrets to keep your sensitive data safe.

  • IBM_CLOUD_API_KEY

    The IBM Cloud API key is necessary to authenticate this GitHub Action with IBM. Details on how to create an API key can be found here.

  • IBM_CLOUD_CF_API

    The IBM Cloud Foundry API endpoint is used to connect and to deploy the application. A list of supported regions and API Endpoints can be found here.

  • IBM_CLOUD_CF_SPACE

    Apps in an IBM Cloud Foundry Enterprise Environment are scoped within specific spaces. A space exists within a specific organziation. A guide on how to create organizations and spaces can be found here.

  • IBM_CLOUD_CF_ORG

    The Cloud Foundry organization name in which the IBM_CLOUD_CF_SPACE exists.

  • APP_MANIFEST_FILE (optional, default: manifest.yml)

    An App Manifest file contains metadata necessary for the deployment like the name of the application which should be deployed. They provide consistency, reproducibility and can be used for customizations like amount of instances, disk space limit, and memory limit. For a full list of attributes you can specify in an application manifest, see App Manifest Attribute Reference.

    Example Manifest file:

    ---
    applications:
    - name: YOUR-APP
  • APP_VARS_FILE (optional)

    Use this option to supply a variables file when pushing the application. The App Manifest file can contain variables for deployment to different environments, using the ((VARIABLE-NAME)) syntax. The variables are resolved at push time using this variables file, if supplied. For more on how to set up variables, see the 'Add Variables to a Manifest' section of the App Manifest Attribute Reference.

  • RESOURCE_GROUP (optional)

    A resource group is a way for you to organize your account resources in customizable groupings. Details about resource groups and how to set them up can be found here

Workflow Example

name: Deploy to IBM Cloud Foundry
on:
  push:
    branches: [ master ]
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Deploy to IBM Cloud Foundry
        # You may pin to the exact commit or the version.
        uses: IBM/cloudfoundry-deploy@master
        with:
          IBM_CLOUD_API_KEY: ${{ secrets.IBM_CLOUD_API_KEY }}
          IBM_CLOUD_CF_API: ${{ secrets.IBM_CLOUD_CF_API }}
          IBM_CLOUD_CF_ORG: ${{ secrets.IBM_CLOUD_CF_ORG }}
          IBM_CLOUD_CF_SPACE: ${{ secrets.IBM_CLOUD_CF_SPACE }}